File trigona_be6dfedd91e1ebc81d58a61b05b0ef93322425b247636a0f7f5c3eeebbc52edd.exe
Function:
Loading..
00409390
00409390TObject.MethodAddress_2:
00409390push rbp
00409391push rbx
00409392sub rsp, 296
00409399mov rbp, rsp
0040939cmov rbx, rcx
0040939flea rcx, [rbp+32]
004093a3call fn_414450
004093a8mov rcx, rbx
004093ablea rdx, [rbp+32]
004093afcall TObject.MethodAddress
004093b4lea rsp, [rbp+296]
004093bbpop rbx
004093bcpop rbp
004093bdret
00409390
00409390TObject.MethodAddress_2:
00409390push rbp
00409391push rbx
00409392sub rsp, 296
00409399mov rbp, rsp
0040939cmov rbx, rcx
0040939flea rcx, [rbp+32]
004093a3call fn_414450
004093a8mov rcx, rbx
004093ablea rdx, [rbp+32]
004093afcall TObject.MethodAddress
004093b4lea rsp, [rbp+296]
004093bbpop rbx
004093bcpop rbp
004093bdret
00409390
004093be
004093be // align 0x10
004093be // align 0x10
004093c0
004093c0TObject.MethodName:
004093c0push rdi
004093c1push rsi
004093c2push rbx
004093c3sub rsp, 32
004093c7mov rbx, rcx
004093camov rsi, rdx
004093cdmov rdi, r8
004093d0mov rcx, rsi
004093d3call fn_40bcf0
004093d8mov rdx, rbx
004093db
004093dbloc_4093db:
004093dbmov rax, [rdx-152]
004093e2test rax, rax
004093e5je 0x4093f1
004093e7movzx rcx, [rax]
004093ebadd rax, 2
004093efjmp 0x4093f3
004093f1
004093f1loc_4093f1:
004093f1xor ecx, ecx
004093f3
004093f3loc_4093f3:
004093f3test cx, cx
004093f6jbe 0x409422
004093f8test cx, cx
004093fbjbe 0x409421
004093fd
004093fdloc_4093fd:
004093fdcmp [rax+2], rdi
00409401jne 0x409411
00409403mov rcx, rsi
00409406lea rdx, [rax+10]
0040940acall fn_408770
0040940fjmp 0x409433
00409411
00409411loc_409411:
00409411sub cx, 1
00409415movzx r8, [rax]
00409419add rax, r8
0040941ctest cx, cx
0040941fja 0x4093fd
00409421
00409421loc_409421:
00409421nop
00409422
00409422loc_409422:
00409422mov rdx, [rdx-120]
00409426test rdx, rdx
00409429je 0x40942e
0040942bmov rdx, [rdx]
0040942e
0040942eloc_40942e:
0040942etest rdx, rdx
00409431jne 0x4093db
00409433
00409433loc_409433:
00409433mov rax, rsi
00409436add rsp, 32
0040943apop rbx
0040943bpop rsi
0040943cpop rdi
0040943dret
004093c0
004093c0TObject.MethodName:
004093c0push rdi
004093c1push rsi
004093c2push rbx
004093c3sub rsp, 32
004093c7mov rbx, rcx
004093camov rsi, rdx
004093cdmov rdi, r8
004093d0mov rcx, rsi
004093d3call fn_40bcf0
004093d8mov rdx, rbx
004093db
004093dbloc_4093db:
004093dbmov rax, [rdx-152]
004093e2test rax, rax
004093e5je 0x4093f1
004093e7movzx rcx, [rax]
004093ebadd rax, 2
004093efjmp 0x4093f3
004093f1
004093f1loc_4093f1:
004093f1xor ecx, ecx
004093f3
004093f3loc_4093f3:
004093f3test cx, cx
004093f6jbe 0x409422
004093f8test cx, cx
004093fbjbe 0x409421
004093fd
004093fdloc_4093fd:
004093fdcmp [rax+2], rdi
00409401jne 0x409411
00409403mov rcx, rsi
00409406lea rdx, [rax+10]
0040940acall fn_408770
0040940fjmp 0x409433
00409411
00409411loc_409411:
00409411sub cx, 1
00409415movzx r8, [rax]
00409419add rax, r8
0040941ctest cx, cx
0040941fja 0x4093fd
00409421
00409421loc_409421:
00409421nop
00409422
00409422loc_409422:
00409422mov rdx, [rdx-120]
00409426test rdx, rdx
00409429je 0x40942e
0040942bmov rdx, [rdx]
0040942e
0040942eloc_40942e:
0040942etest rdx, rdx
00409431jne 0x4093db
00409433
00409433loc_409433:
00409433mov rax, rsi
00409436add rsp, 32
0040943apop rbx
0040943bpop rsi
0040943cpop rdi
0040943dret
004093c0
0040943e
0040943e // align 0x10
0040943e // align 0x10
00409440
00409440TObject.FieldAddress:
00409440push rbp
00409441push r14
00409443push r13
00409445push rdi
00409446push rsi
00409447push rbx
00409448sub rsp, 312
0040944fmov rbp, rsp
00409452mov [rbp+40], rcx
00409456mov rsi, rdx
00409459movzx rax, [rsi]
0040945dlea rcx, [rax+1]
00409461lea rdi, [rbp+48]
00409465rep movsb [rdi], [rsi]
00409467xor ebx, ebx
00409469mov rax, [rbp+40]
0040946dmov r14, [rax]
00409470
00409470loc_409470:
00409470mov rsi, [r14-160]
00409477test rsi, rsi
0040947aje 0x40948a
0040947cmovzx rdi, [rsi]
00409480add rsi, 2
00409484add rsi, 8
00409488jmp 0x40948c
0040948a
0040948aloc_40948a:
0040948axor edi, edi
0040948c
0040948cloc_40948c:
0040948ctest di, di
0040948fjbe 0x4094d7
00409491test di, di
00409494jbe 0x4094d6
00409496
00409496loc_409496:
00409496lea r13, [rsi+6]
0040949amovzx rax, [r13]
0040949fcmp al, [rbp+48]
004094a2jne 0x4094c0
004094a4mov rcx, r13
004094a7lea rdx, [rbp+48]
004094abcall fn_408880
004094b0test al, al
004094b2je 0x4094c0
004094b4mov eax, [rsi]
004094b6mov rcx, [rbp+40]
004094balea rbx, [rcx+rax]
004094bejmp 0x4094e8
004094c0
004094c0loc_4094c0:
004094c0sub di, 1
004094c4movzx rax, [r13]
004094c9add eax, 7
004094ccmov eax, eax
004094ceadd rsi, rax
004094d1test di, di
004094d4ja 0x409496
004094d6
004094d6loc_4094d6:
004094d6nop
004094d7
004094d7loc_4094d7:
004094d7mov r14, [r14-120]
004094dbtest r14, r14
004094deje 0x4094e3
004094e0mov r14, [r14]
004094e3
004094e3loc_4094e3:
004094e3test r14, r14
004094e6jne 0x409470
004094e8
004094e8loc_4094e8:
004094e8mov rax, rbx
004094eblea rsp, [rbp+312]
004094f2pop rbx
004094f3pop rsi
004094f4pop rdi
004094f5pop r13
004094f7pop r14
004094f9pop rbp
004094faret
00409440
00409440TObject.FieldAddress:
00409440push rbp
00409441push r14
00409443push r13
00409445push rdi
00409446push rsi
00409447push rbx
00409448sub rsp, 312
0040944fmov rbp, rsp
00409452mov [rbp+40], rcx
00409456mov rsi, rdx
00409459movzx rax, [rsi]
0040945dlea rcx, [rax+1]
00409461lea rdi, [rbp+48]
00409465rep movsb [rdi], [rsi]
00409467xor ebx, ebx
00409469mov rax, [rbp+40]
0040946dmov r14, [rax]
00409470
00409470loc_409470:
00409470mov rsi, [r14-160]
00409477test rsi, rsi
0040947aje 0x40948a
0040947cmovzx rdi, [rsi]
00409480add rsi, 2
00409484add rsi, 8
00409488jmp 0x40948c
0040948a
0040948aloc_40948a:
0040948axor edi, edi
0040948c
0040948cloc_40948c:
0040948ctest di, di
0040948fjbe 0x4094d7
00409491test di, di
00409494jbe 0x4094d6
00409496
00409496loc_409496:
00409496lea r13, [rsi+6]
0040949amovzx rax, [r13]
0040949fcmp al, [rbp+48]
004094a2jne 0x4094c0
004094a4mov rcx, r13
004094a7lea rdx, [rbp+48]
004094abcall fn_408880
004094b0test al, al
004094b2je 0x4094c0
004094b4mov eax, [rsi]
004094b6mov rcx, [rbp+40]
004094balea rbx, [rcx+rax]
004094bejmp 0x4094e8
004094c0
004094c0loc_4094c0:
004094c0sub di, 1
004094c4movzx rax, [r13]
004094c9add eax, 7
004094ccmov eax, eax
004094ceadd rsi, rax
004094d1test di, di
004094d4ja 0x409496
004094d6
004094d6loc_4094d6:
004094d6nop
004094d7
004094d7loc_4094d7:
004094d7mov r14, [r14-120]
004094dbtest r14, r14
004094deje 0x4094e3
004094e0mov r14, [r14]
004094e3
004094e3loc_4094e3:
004094e3test r14, r14
004094e6jne 0x409470
004094e8
004094e8loc_4094e8:
004094e8mov rax, rbx
004094eblea rsp, [rbp+312]
004094f2pop rbx
004094f3pop rsi
004094f4pop rdi
004094f5pop r13
004094f7pop r14
004094f9pop rbp
004094faret
00409440
004094fb
004094fb // align 0x10
004094fb // align 0x10
00409500
00409500TObject.FieldAddress_2:
00409500push rbp
00409501push rbx
00409502sub rsp, 296
00409509mov rbp, rsp
0040950cmov rbx, rcx
0040950flea rcx, [rbp+32]
00409513call fn_414450
00409518mov rcx, rbx
0040951blea rdx, [rbp+32]
0040951fcall TObject.FieldAddress
00409524lea rsp, [rbp+296]
0040952bpop rbx
0040952cpop rbp
0040952dret
00409500
00409500TObject.FieldAddress_2:
00409500push rbp
00409501push rbx
00409502sub rsp, 296
00409509mov rbp, rsp
0040950cmov rbx, rcx
0040950flea rcx, [rbp+32]
00409513call fn_414450
00409518mov rcx, rbx
0040951blea rdx, [rbp+32]
0040951fcall TObject.FieldAddress
00409524lea rsp, [rbp+296]
0040952bpop rbx
0040952cpop rbp
0040952dret
00409500
0040952e
0040952e // align 0x10
0040952e // align 0x10
00409530
00409530fn_409530:
00409530sub rsp, 40
00409534mov rax, rcx
00409537test dl, dl
00409539jl 0x409541
0040953bmov rcx, rax
0040953ecall [rax-48]
00409541
00409541loc_409541:
00409541add rsp, 40
00409545ret
00409530
00409530fn_409530:
00409530sub rsp, 40
00409534mov rax, rcx
00409537test dl, dl
00409539jl 0x409541
0040953bmov rcx, rax
0040953ecall [rax-48]
00409541
00409541loc_409541:
00409541add rsp, 40
00409545ret
00409530
00409546
00409546 // align 0x10
00409546 // align 0x10
00409550
00409550fn_409550:
00409550push rbx
00409551sub rsp, 32
00409555mov rax, rcx
00409558mov rbx, [rcx]
0040955bmov rcx, rax
0040955ecall [rbx-40]
00409561add rsp, 32
00409565pop rbx
00409566ret
00409550
00409550fn_409550:
00409550push rbx
00409551sub rsp, 32
00409555mov rax, rcx
00409558mov rbx, [rcx]
0040955bmov rcx, rax
0040955ecall [rbx-40]
00409561add rsp, 32
00409565pop rbx
00409566ret
00409550
00409567
00409567 // align 0x10
00409567 // align 0x10
00409570
00409570fn_409570:
00409570push rbp
00409571push rbx
00409572sub rsp, 72
00409576mov rbp, rsp
00409579mov [rbp+40], rbp
0040957dmov [rbp+96], rcx
00409581nop
00409582mov rcx, [rbp+96]
00409586mov rax, [rbp+96]
0040958amov rbx, [rax]
0040958dcall [rbx-80]
00409590mov rax, [rbp+96]
00409594mov [rbp+56], rax
00409598jmp 0x4095b2
0040959a
0040959a 90 90 48 8b 4d 60 ..H.M`
004095a0 b2 01 e8 29 00 00 00 e8 64 1a 00 00 e8 6f 1b 00 ...)....d....o..
004095b0 00 90 ..
004095b2
004095b2loc_4095b2:
004095b2mov rax, [rbp+56]
004095b6lea rsp, [rbp+72]
004095bapop rbx
004095bbpop rbp
004095bcret
00409570
00409570fn_409570:
00409570push rbp
00409571push rbx
00409572sub rsp, 72
00409576mov rbp, rsp
00409579mov [rbp+40], rbp
0040957dmov [rbp+96], rcx
00409581nop
00409582mov rcx, [rbp+96]
00409586mov rax, [rbp+96]
0040958amov rbx, [rax]
0040958dcall [rbx-80]
00409590mov rax, [rbp+96]
00409594mov [rbp+56], rax
00409598jmp 0x4095b2
0040959a
0040959a 90 90 48 8b 4d 60 ..H.M`
004095a0 b2 01 e8 29 00 00 00 e8 64 1a 00 00 e8 6f 1b 00 ...)....d....o..
004095b0 00 90 ..
004095b2
004095b2loc_4095b2:
004095b2mov rax, [rbp+56]
004095b6lea rsp, [rbp+72]
004095bapop rbx
004095bbpop rbp
004095bcret
00409570
004095bd
004095bd 48 8b c0 H..
004095bd 48 8b c0 H..
004095c0
004095c0fn_4095c0:
004095c0sub rsp, 40
004095c4call fn_40b050
004095c9add rsp, 40
004095cdret
004095c0
004095c0fn_4095c0:
004095c0sub rsp, 40
004095c4call fn_40b050
004095c9add rsp, 40
004095cdret
004095c0
004095ce
004095ce // align 0x10
004095ce // align 0x10
004095d0
004095d0fn_4095d0:
004095d0push rbx
004095d1sub rsp, 32
004095d5test dl, dl
004095d7jle 0x4095e5
004095d9mov rax, rcx
004095dcmov rbx, [rcx]
004095dfmov rcx, rax
004095e2call [rbx-72]
004095e5
004095e5loc_4095e5:
004095e5add rsp, 32
004095e9pop rbx
004095earet
004095d0
004095d0fn_4095d0:
004095d0push rbx
004095d1sub rsp, 32
004095d5test dl, dl
004095d7jle 0x4095e5
004095d9mov rax, rcx
004095dcmov rbx, [rcx]
004095dfmov rcx, rax
004095e2call [rbx-72]
004095e5
004095e5loc_4095e5:
004095e5add rsp, 32
004095e9pop rbx
004095earet
004095d0
004095eb
004095eb // align 0x10
004095eb // align 0x10
004095f0
004095f0fn_4095f0:
004095f0push rbx
004095f1sub rsp, 32
004095f5mov rbx, rcx
004095f8mov eax, [rbx]
004095facmp eax, 10
004095fdjg 0x409608
004095ffcmp [rip+0x5ba9a], 1
00409606jg 0x409654
00409608
00409608loc_409608:
00409608cmp eax, 10
0040960bjl 0x409614
0040960dmov ecx, eax
0040960fsub ecx, 10
00409612jmp 0x409616
00409614
00409614loc_409614:
00409614mov ecx, eax
00409616
00409616loc_409616:
00409616mov r8l, 20
0040961cmov eax, ecx
0040961ecdq
0040961fidiv r8l
00409622cmp edx, 19
00409625jne 0x409633
00409627mov ecx, 1
0040962ccall Sleep
00409631jmp 0x409664
00409633
00409633loc_409633:
00409633mov r8l, 5
00409639mov eax, ecx
0040963bcdq
0040963cidiv r8l
0040963fcmp edx, 4
00409642jne 0x40964d
00409644xor ecx, ecx
00409646call Sleep
0040964bjmp 0x409664
0040964d
0040964dloc_40964d:
0040964dcall SwitchToThread
00409652jmp 0x409664
00409654
00409654loc_409654:
00409654mov edx, 4
00409659mov ecx, eax
0040965bshl edx, cl
0040965dmov ecx, edx
0040965fcall fn_4096d0
00409664
00409664loc_409664:
00409664add [rbx], 1
00409667cmp [rbx], 0
0040966ajge 0x409672
0040966cmov [rbx], 10
00409672
00409672loc_409672:
00409672add rsp, 32
00409676pop rbx
00409677ret
004095f0
004095f0fn_4095f0:
004095f0push rbx
004095f1sub rsp, 32
004095f5mov rbx, rcx
004095f8mov eax, [rbx]
004095facmp eax, 10
004095fdjg 0x409608
004095ffcmp [rip+0x5ba9a], 1
00409606jg 0x409654
00409608
00409608loc_409608:
00409608cmp eax, 10
0040960bjl 0x409614
0040960dmov ecx, eax
0040960fsub ecx, 10
00409612jmp 0x409616
00409614
00409614loc_409614:
00409614mov ecx, eax
00409616
00409616loc_409616:
00409616mov r8l, 20
0040961cmov eax, ecx
0040961ecdq
0040961fidiv r8l
00409622cmp edx, 19
00409625jne 0x409633
00409627mov ecx, 1
0040962ccall Sleep
00409631jmp 0x409664
00409633
00409633loc_409633:
00409633mov r8l, 5
00409639mov eax, ecx
0040963bcdq
0040963cidiv r8l
0040963fcmp edx, 4
00409642jne 0x40964d
00409644xor ecx, ecx
00409646call Sleep
0040964bjmp 0x409664
0040964d
0040964dloc_40964d:
0040964dcall SwitchToThread
00409652jmp 0x409664
00409654
00409654loc_409654:
00409654mov edx, 4
00409659mov ecx, eax
0040965bshl edx, cl
0040965dmov ecx, edx
0040965fcall fn_4096d0
00409664
00409664loc_409664:
00409664add [rbx], 1
00409667cmp [rbx], 0
0040966ajge 0x409672
0040966cmov [rbx], 10
00409672
00409672loc_409672:
00409672add rsp, 32
00409676pop rbx
00409677ret
004095f0
00409678
00409678 // align 0x10
00409678 // align 0x10
00409680
00409680fn_409680:
00409680push rbp
00409681push rbx
00409682sub rsp, 56
00409686mov rbp, rsp
00409689mov rbx, rcx
0040968cmov [rbp+44], 0
00409693
00409693loc_409693:
00409693mov ecx, [rbx]
00409695test ecx, ecx
00409697jne 0x4096a8
00409699mov eax, ecx
0040969bmov edx, 1
004096a0lock cmpxchg [rbx], edx
004096a4cmp eax, ecx
004096a6je 0x4096b3
004096a8
004096a8loc_4096a8:
004096a8lea rcx, [rbp+44]
004096accall fn_4095f0
004096b1jmp 0x409693
004096b3
004096b3loc_4096b3:
004096b3lea rsp, [rbp+56]
004096b7pop rbx
004096b8pop rbp
004096b9ret
00409680
00409680fn_409680:
00409680push rbp
00409681push rbx
00409682sub rsp, 56
00409686mov rbp, rsp
00409689mov rbx, rcx
0040968cmov [rbp+44], 0
00409693
00409693loc_409693:
00409693mov ecx, [rbx]
00409695test ecx, ecx
00409697jne 0x4096a8
00409699mov eax, ecx
0040969bmov edx, 1
004096a0lock cmpxchg [rbx], edx
004096a4cmp eax, ecx
004096a6je 0x4096b3
004096a8
004096a8loc_4096a8:
004096a8lea rcx, [rbp+44]
004096accall fn_4095f0
004096b1jmp 0x409693
004096b3
004096b3loc_4096b3:
004096b3lea rsp, [rbp+56]
004096b7pop rbx
004096b8pop rbp
004096b9ret
00409680
004096ba
004096ba // align 0x10
004096ba // align 0x10
004096c6
004096c6 // align 0x10
004096c6 // align 0x10
004096d0
004096d0fn_4096d0:
004096d0cmp ecx, 0
004096d3jle 0x4096de
004096d5
004096d5loc_4096d5:
004096d5nop
004096d7dec ecx
004096d9cmp ecx, 0
004096dcjg 0x4096d5
004096de
004096deloc_4096de:
004096deret
004096d0
004096d0fn_4096d0:
004096d0cmp ecx, 0
004096d3jle 0x4096de
004096d5
004096d5loc_4096d5:
004096d5nop
004096d7dec ecx
004096d9cmp ecx, 0
004096dcjg 0x4096d5
004096de
004096deloc_4096de:
004096deret
004096d0
004096df
004096df // align 0x10
004096df // align 0x10
004096e0
004096e0fn_4096e0:
004096e0push rbp
004096e1sub rsp, 80
004096e5mov rbp, rsp
004096e8mov [rbp+40], rbp
004096ecmov [rbp+52], 0
004096f3lea rcx, [rip+222]
004096facall GetModuleHandleW
004096ffmov rcx, rax
00409702lea rdx, [rip+233]
00409709call GetProcAddress
0040970etest rax, rax
00409711je 0x4097a3
00409717xor ecx, ecx
00409719lea rdx, [rbp+52]
0040971dcall GetLogicalProcessorInformation
00409722test eax, eax
00409724jne 0x4097a3
00409726call GetLastError
0040972bcmp eax, 122
0040972ejne 0x4097a3
00409730mov ecx, [rbp+52]
00409733call fn_405700
00409738mov [rbp+72], rax
0040973cnop
0040973dmov rcx, [rbp+72]
00409741lea rdx, [rbp+52]
00409745call GetLogicalProcessorInformation
0040974amov rax, [rbp+72]
0040974emov [rbp+56], rax
00409752cmp [rbp+52], 0
00409756jbe 0x409789
00409758
00409758loc_409758:
00409758mov rax, [rbp+56]
0040975ccmp [rax+8], 2
00409761jne 0x40977a
00409763mov rax, [rbp+56]
00409767cmp [rax+16], 1
0040976bjne 0x40977a
0040976dmov rax, [rbp+56]
00409771movzx eax, [rax+18]
00409775mov [rbp+68], eax
00409778jmp 0x409796
0040977a
0040977aloc_40977a:
0040977aadd [rbp+56], 32
0040977fsub [rbp+52], 32
00409783cmp [rbp+52], 0
00409787ja 0x409758
00409789
00409789loc_409789:
00409789nop
0040978anop
0040978bmov rcx, [rbp+72]
0040978fcall fn_405730
00409794jmp 0x4097a3
00409796
00409796loc_409796:
00409796xor ecx, ecx
00409798mov rdx, [rbp+40]
0040979ccall fn_4097c0
004097a1jmp 0x4097aa
004097a3
004097a3loc_4097a3:
004097a3mov [rbp+68], 64
004097aa
004097aaloc_4097aa:
004097aamov eax, [rbp+68]
004097adlea rsp, [rbp+80]
004097b1pop rbp
004097b2ret
004096e0
004096e0fn_4096e0:
004096e0push rbp
004096e1sub rsp, 80
004096e5mov rbp, rsp
004096e8mov [rbp+40], rbp
004096ecmov [rbp+52], 0
004096f3lea rcx, [rip+222]
004096facall GetModuleHandleW
004096ffmov rcx, rax
00409702lea rdx, [rip+233]
00409709call GetProcAddress
0040970etest rax, rax
00409711je 0x4097a3
00409717xor ecx, ecx
00409719lea rdx, [rbp+52]
0040971dcall GetLogicalProcessorInformation
00409722test eax, eax
00409724jne 0x4097a3
00409726call GetLastError
0040972bcmp eax, 122
0040972ejne 0x4097a3
00409730mov ecx, [rbp+52]
00409733call fn_405700
00409738mov [rbp+72], rax
0040973cnop
0040973dmov rcx, [rbp+72]
00409741lea rdx, [rbp+52]
00409745call GetLogicalProcessorInformation
0040974amov rax, [rbp+72]
0040974emov [rbp+56], rax
00409752cmp [rbp+52], 0
00409756jbe 0x409789
00409758
00409758loc_409758:
00409758mov rax, [rbp+56]
0040975ccmp [rax+8], 2
00409761jne 0x40977a
00409763mov rax, [rbp+56]
00409767cmp [rax+16], 1
0040976bjne 0x40977a
0040976dmov rax, [rbp+56]
00409771movzx eax, [rax+18]
00409775mov [rbp+68], eax
00409778jmp 0x409796
0040977a
0040977aloc_40977a:
0040977aadd [rbp+56], 32
0040977fsub [rbp+52], 32
00409783cmp [rbp+52], 0
00409787ja 0x409758
00409789
00409789loc_409789:
00409789nop
0040978anop
0040978bmov rcx, [rbp+72]
0040978fcall fn_405730
00409794jmp 0x4097a3
00409796
00409796loc_409796:
00409796xor ecx, ecx
00409798mov rdx, [rbp+40]
0040979ccall fn_4097c0
004097a1jmp 0x4097aa
004097a3
004097a3loc_4097a3:
004097a3mov [rbp+68], 64
004097aa
004097aaloc_4097aa:
004097aamov eax, [rbp+68]
004097adlea rsp, [rbp+80]
004097b1pop rbp
004097b2ret
004096e0
004097b3
004097b3 48 8d 44 20 00 48 8d 04 05 00 00 00 00 H.D .H.......
004097b3 48 8d 44 20 00 48 8d 04 05 00 00 00 00 H.D .H.......
004097c0
004097c0fn_4097c0:
004097c0push rbp
004097c1sub rsp, 32
004097c5mov rbp, rsp
004097c8mov rcx, [rdx+72]
004097cccall fn_405730
004097d1lea rsp, [rbp+32]
004097d5pop rbp
004097d6ret
004097c0
004097c0fn_4097c0:
004097c0push rbp
004097c1sub rsp, 32
004097c5mov rbp, rsp
004097c8mov rcx, [rdx+72]
004097cccall fn_405730
004097d1lea rsp, [rbp+32]
004097d5pop rbp
004097d6ret
004097c0
004097d7
004097d7 00 6b 00 65 00 72 00 6e 00 .k.e.r.n.
004097e0 65 00 6c 00 33 00 32 00 2e 00 64 00 6c 00 6c 00 e.l.3.2...d.l.l.
004097f0 00 00 47 65 74 4c 6f 67 69 63 61 6c 50 72 6f 63 ..GetLogicalProc
00409800 65 73 73 6f 72 49 6e 66 6f 72 6d 61 74 69 6f 6e essorInformation
00409810 00 cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc ................
004097d7 00 6b 00 65 00 72 00 6e 00 .k.e.r.n.
004097e0 65 00 6c 00 33 00 32 00 2e 00 64 00 6c 00 6c 00 e.l.3.2...d.l.l.
004097f0 00 00 47 65 74 4c 6f 67 69 63 61 6c 50 72 6f 63 ..GetLogicalProc
00409800 65 73 73 6f 72 49 6e 66 6f 72 6d 61 74 69 6f 6e essorInformation
00409810 00 cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc ................
00409820
00409820fn_409820:
00409820push rbx
00409821sub rsp, 32
00409825mov ebx, [rcx+8]
00409828call GetCurrentThreadId
0040982dcmp ebx, eax
0040982fje 0x409838
00409831mov cl, 25
00409833call fn_405a20
00409838
00409838loc_409838:
00409838mov eax, ebx
0040983aadd rsp, 32
0040983epop rbx
0040983fret
00409820
00409820fn_409820:
00409820push rbx
00409821sub rsp, 32
00409825mov ebx, [rcx+8]
00409828call GetCurrentThreadId
0040982dcmp ebx, eax
0040982fje 0x409838
00409831mov cl, 25
00409833call fn_405a20
00409838
00409838loc_409838:
00409838mov eax, ebx
0040983aadd rsp, 32
0040983epop rbx
0040983fret
00409820
00409840
00409840fn_409840:
00409840sub rsp, 40
00409844cmp [rip+0x5b7b5], 0
0040984bjne 0x409859
0040984dcall fn_4096e0
00409852lock xchg [rip+0x5b7a7], eax
00409859
00409859loc_409859:
00409859cmp [rip+0x5b840], 1
00409860jle 0x409877
00409862cmp [rip+0x5b79b], 0
00409869jne 0x409877
0040986bmov eax, 1000
00409870lock xchg [rip+0x5b78d], eax
00409877
00409877loc_409877:
00409877cmp [rip+0x5b782], 48
0040987ejle 0x40988e
00409880movsxd rcx, [rip+0x5b779]
00409887call fn_4046b0
0040988cjmp 0x409898
0040988e
0040988eloc_40988e:
0040988emov ecx, 48
00409893call fn_4046b0
00409898
00409898loc_409898:
00409898mov ecx, [rip+0x5b766]
0040989emov [rax+24], ecx
004098a1add rsp, 40
004098a5ret
00409840
00409840fn_409840:
00409840sub rsp, 40
00409844cmp [rip+0x5b7b5], 0
0040984bjne 0x409859
0040984dcall fn_4096e0
00409852lock xchg [rip+0x5b7a7], eax
00409859
00409859loc_409859:
00409859cmp [rip+0x5b840], 1
00409860jle 0x409877
00409862cmp [rip+0x5b79b], 0
00409869jne 0x409877
0040986bmov eax, 1000
00409870lock xchg [rip+0x5b78d], eax
00409877
00409877loc_409877:
00409877cmp [rip+0x5b782], 48
0040987ejle 0x40988e
00409880movsxd rcx, [rip+0x5b779]
00409887call fn_4046b0
0040988cjmp 0x409898
0040988e
0040988eloc_40988e:
0040988emov ecx, 48
00409893call fn_4046b0
00409898
00409898loc_409898:
00409898mov ecx, [rip+0x5b766]
0040989emov [rax+24], ecx
004098a1add rsp, 40
004098a5ret
00409840
004098a6
004098a6 // align 0x10
004098a6 // align 0x10
004098b0
004098b0fn_4098b0:
004098b0sub rsp, 40
004098b4call fn_409d30
004098b9mov rcx, [rax]
004098bcand rcx, -2
004098c0test rcx, rcx
004098c3je 0x4098d1
004098c5mov [rax], 0
004098cccall fn_4098e0
004098d1
004098d1loc_4098d1:
004098d1add rsp, 40
004098d5ret
004098b0
004098b0fn_4098b0:
004098b0sub rsp, 40
004098b4call fn_409d30
004098b9mov rcx, [rax]
004098bcand rcx, -2
004098c0test rcx, rcx
004098c3je 0x4098d1
004098c5mov [rax], 0
004098cccall fn_4098e0
004098d1
004098d1loc_4098d1:
004098d1add rsp, 40
004098d5ret
004098b0
004098d6
004098d6 // align 0x10
004098d6 // align 0x10
004098e0
004098e0fn_4098e0:
004098e0push rsi
004098e1push rbx
004098e2sub rsp, 40
004098e6mov rbx, rcx
004098e9cmp [rip+0x5c09f], 0
004098f1je 0x409908
004098f3cmp [rbx+16], 0
004098f8je 0x409908
004098famov rcx, [rbx+16]
004098femov rsi, [rip+0x5c08b]
00409905call [rsi+8]
00409908
00409908loc_409908:
00409908mov rcx, rbx
0040990bcall fn_404120
00409910add rsp, 40
00409914pop rbx
00409915pop rsi
00409916ret
004098e0
004098e0fn_4098e0:
004098e0push rsi
004098e1push rbx
004098e2sub rsp, 40
004098e6mov rbx, rcx
004098e9cmp [rip+0x5c09f], 0
004098f1je 0x409908
004098f3cmp [rbx+16], 0
004098f8je 0x409908
004098famov rcx, [rbx+16]
004098femov rsi, [rip+0x5c08b]
00409905call [rsi+8]
00409908
00409908loc_409908:
00409908mov rcx, rbx
0040990bcall fn_404120
00409910add rsp, 40
00409914pop rbx
00409915pop rsi
00409916ret
004098e0
00409917
00409917 // align 0x10
00409917 // align 0x10
00409920
00409920fn_409920:
00409920push rbx
00409921sub rsp, 32
00409925mov rbx, rcx
00409928cmp [rip+0x5c060], 0
00409930jne 0x409939
00409932mov cl, 26
00409934call fn_405a20
00409939
00409939loc_409939:
00409939mov rcx, rbx
0040993ccall fn_409d40
00409941mov rcx, rax
00409944or edx, -1
00409947call fn_409a50
0040994cadd rsp, 32
00409950pop rbx
00409951ret
00409920
00409920fn_409920:
00409920push rbx
00409921sub rsp, 32
00409925mov rbx, rcx
00409928cmp [rip+0x5c060], 0
00409930jne 0x409939
00409932mov cl, 26
00409934call fn_405a20
00409939
00409939loc_409939:
00409939mov rcx, rbx
0040993ccall fn_409d40
00409941mov rcx, rax
00409944or edx, -1
00409947call fn_409a50
0040994cadd rsp, 32
00409950pop rbx
00409951ret
00409920
00409952
00409952 // align 0x10
00409952 // align 0x10
00409960
00409960fn_409960:
00409960push rsi
00409961push rbx
00409962sub rsp, 40
00409966mov rbx, rcx
00409969mov esi, edx
0040996bcmp [rip+0x5c01d], 0
00409973jne 0x40997c
00409975mov cl, 26
00409977call fn_405a20
0040997c
0040997cloc_40997c:
0040997cmov rcx, rbx
0040997fcall fn_409d40
00409984mov rcx, rax
00409987mov edx, esi
00409989call fn_409a50
0040998eadd rsp, 40
00409992pop rbx
00409993pop rsi
00409994ret
00409960
00409960fn_409960:
00409960push rsi
00409961push rbx
00409962sub rsp, 40
00409966mov rbx, rcx
00409969mov esi, edx
0040996bcmp [rip+0x5c01d], 0
00409973jne 0x40997c
00409975mov cl, 26
00409977call fn_405a20
0040997c
0040997cloc_40997c:
0040997cmov rcx, rbx
0040997fcall fn_409d40
00409984mov rcx, rax
00409987mov edx, esi
00409989call fn_409a50
0040998eadd rsp, 40
00409992pop rbx
00409993pop rsi
00409994ret
00409960
00409995
00409995 // align 0x10
00409995 // align 0x10
004099a0
004099a0fn_4099a0:
004099a0push rbp
004099a1sub rsp, 64
004099a5mov rbp, rsp
004099a8mov [rbp+40], rbp
004099acmov [rbp+80], rcx
004099b0mov rax, [rbp+80]
004099b4lea rcx, [rax+40]
004099b8call fn_409680
004099bdnop
004099bemov rax, [rbp+80]
004099c2mov rax, [rax+32]
004099c6mov [rbp+56], rax
004099cacmp [rbp+56], 0
004099cfje 0x4099de
004099d1mov rax, [rbp+56]
004099d5mov rax, [rax]
004099d8cmp rax, [rbp+56]
004099dcjne 0x4099ec
004099de
004099deloc_4099de:
004099demov rax, [rbp+80]
004099e2mov [rax+32], 0
004099eajmp 0x409a11
004099ec
004099ecloc_4099ec:
004099ecmov rax, [rbp+80]
004099f0mov rcx, [rax+32]
004099f4mov rax, [rcx]
004099f7mov [rbp+56], rax
004099fbmov rax, [rax]
004099femov [rcx], rax
00409a01nop
00409a02mov rax, [rbp+80]
00409a06lea rcx, [rax+40]
00409a0acall fn_4096c0
00409a0fjmp 0x409a1c
00409a11
00409a11loc_409a11:
00409a11xor ecx, ecx
00409a13mov rdx, [rbp+40]
00409a17call fn_409a30
00409a1c
00409a1cloc_409a1c:
00409a1cmov rax, [rbp+56]
00409a20lea rsp, [rbp+64]
00409a24pop rbp
00409a25ret
004099a0
004099a0fn_4099a0:
004099a0push rbp
004099a1sub rsp, 64
004099a5mov rbp, rsp
004099a8mov [rbp+40], rbp
004099acmov [rbp+80], rcx
004099b0mov rax, [rbp+80]
004099b4lea rcx, [rax+40]
004099b8call fn_409680
004099bdnop
004099bemov rax, [rbp+80]
004099c2mov rax, [rax+32]
004099c6mov [rbp+56], rax
004099cacmp [rbp+56], 0
004099cfje 0x4099de
004099d1mov rax, [rbp+56]
004099d5mov rax, [rax]
004099d8cmp rax, [rbp+56]
004099dcjne 0x4099ec
004099de
004099deloc_4099de:
004099demov rax, [rbp+80]
004099e2mov [rax+32], 0
004099eajmp 0x409a11
004099ec
004099ecloc_4099ec:
004099ecmov rax, [rbp+80]
004099f0mov rcx, [rax+32]
004099f4mov rax, [rcx]
004099f7mov [rbp+56], rax
004099fbmov rax, [rax]
004099femov [rcx], rax
00409a01nop
00409a02mov rax, [rbp+80]
00409a06lea rcx, [rax+40]
00409a0acall fn_4096c0
00409a0fjmp 0x409a1c
00409a11
00409a11loc_409a11:
00409a11xor ecx, ecx
00409a13mov rdx, [rbp+40]
00409a17call fn_409a30
00409a1c
00409a1cloc_409a1c:
00409a1cmov rax, [rbp+56]
00409a20lea rsp, [rbp+64]
00409a24pop rbp
00409a25ret
004099a0
00409a26
00409a26 48 90 48 8d 04 05 00 00 00 00 H.H.......
00409a26 48 90 48 8d 04 05 00 00 00 00 H.H.......
00409a30
00409a30fn_409a30:
00409a30push rbp
00409a31sub rsp, 32
00409a35mov rbp, rsp
00409a38mov rax, [rdx+80]
00409a3clea rcx, [rax+40]
00409a40call fn_4096c0
00409a45lea rsp, [rbp+32]
00409a49pop rbp
00409a4aret
00409a30
00409a30fn_409a30:
00409a30push rbp
00409a31sub rsp, 32
00409a35mov rbp, rsp
00409a38mov rax, [rdx+80]
00409a3clea rcx, [rax+40]
00409a40call fn_4096c0
00409a45lea rsp, [rbp+32]
00409a49pop rbp
00409a4aret
00409a30
00409a4b
00409a4b // align 0x10
00409a4b // align 0x10
00409a50
00409a50fn_409a50:
00409a50push rbp
00409a51push r14
00409a53push r13
00409a55push rdi
00409a56push rsi
00409a57push rbx
00409a58sub rsp, 72
00409a5cmov rbp, rsp
00409a5fmov [rbp+40], rcx
00409a63mov ebx, edx
00409a65mov rax, [rbp+40]
00409a69mov r13l, [rax+24]
00409a6d
00409a6dloc_409a6d:
00409a6dmov rcx, [rbp+40]
00409a71call fn_40a0a0
00409a76mov esi, eax
00409a79test sil, sil
00409a7cjne 0x409c05
00409a82test ebx, ebx
00409a84je 0x409c05
00409a8axor edi, edi
00409a8dtest r13l, r13l
00409a90jle 0x409b31
00409a96call GetTickCount
00409a9bmov r14l, eax
00409a9emov [rbp+60], 0
00409aa5test r13l, r13l
00409aa8jle 0x409b15
00409aaa
00409aaaloc_409aaa:
00409aaacmp ebx, -1
00409aadje 0x409ac3
00409aafcall GetTickCount
00409ab4sub eax, r14l
00409ab7cmp eax, ebx
00409ab9jb 0x409ac3
00409abbxor esi, esi
00409abejmp 0x409c05
00409ac3
00409ac3loc_409ac3:
00409ac3mov rax, [rbp+40]
00409ac7cmp [rax], 1
00409acajg 0x409b15
00409accmov rax, [rbp+40]
00409ad0cmp [rax], 0
00409ad3jne 0x409b03
00409ad5xor eax, eax
00409ad7mov ecx, 1
00409adcmov rdx, [rbp+40]
00409ae0lock cmpxchg [rdx], ecx
00409ae4test eax, eax
00409ae6jne 0x409b03
00409ae8call GetCurrentThreadId
00409aedmov rcx, [rbp+40]
00409af1mov [rcx+8], eax
00409af4mov [rcx+4], 1
00409afbmov sil, 1
00409afejmp 0x409c05
00409b03
00409b03loc_409b03:
00409b03lea rcx, [rbp+60]
00409b07call fn_4095f0
00409b0csub r13l, 1
00409b10test r13l, r13l
00409b13jg 0x409aaa
00409b15
00409b15loc_409b15:
00409b15nop
00409b16cmp ebx, -1
00409b19je 0x409b31
00409b1bcall GetTickCount
00409b20sub eax, r14l
00409b23cmp eax, ebx
00409b25jb 0x409b2f
00409b27xor esi, esi
00409b2ajmp 0x409c05
00409b2f
00409b2floc_409b2f:
00409b2fsub ebx, eax
00409b31
00409b31loc_409b31:
00409b31mov rax, [rbp+40]
00409b35mov ecx, [rax]
00409b37test ecx, ecx
00409b39je 0x409a6d
00409b3fmov edx, ecx
00409b41add edx, 2
00409b44mov eax, ecx
00409b46mov r8, [rbp+40]
00409b4alock cmpxchg [r8], edx
00409b4fcmp eax, ecx
00409b51jne 0x409b31
00409b53nop
00409b54
00409b54loc_409b54:
00409b54call GetTickCount
00409b59mov r14l, eax
00409b5cmov rcx, [rbp+40]
00409b60call fn_409cb0
00409b65xor ecx, ecx
00409b67mov rdx, rax
00409b6amov r8l, ebx
00409b6dmov rax, [rip+0x5be1c]
00409b74call [rax+32]
00409b77test eax, eax
00409b79sete sil
00409b7dcmp ebx, -1
00409b80je 0x409b94
00409b82call GetTickCount
00409b87sub eax, r14l
00409b8acmp eax, ebx
00409b8cjae 0x409b92
00409b8esub ebx, eax
00409b90jmp 0x409b94
00409b92
00409b92loc_409b92:
00409b92xor ebx, ebx
00409b94
00409b94loc_409b94:
00409b94test sil, sil
00409b97je 0x409bc6
00409b99
00409b99loc_409b99:
00409b99mov rax, [rbp+40]
00409b9dmov ecx, [rax]
00409b9fmov eax, ecx
00409ba1test eax, 1
00409ba7jne 0x409bc3
00409ba9mov edx, ecx
00409babsub edx, 2
00409baeor edx, 1
00409bb1mov eax, ecx
00409bb3mov r8, [rbp+40]
00409bb7lock cmpxchg [r8], edx
00409bbccmp eax, ecx
00409bbejne 0x409b99
00409bc0mov dil, 1
00409bc3
00409bc3loc_409bc3:
00409bc3nop
00409bc4jmp 0x409be3
00409bc6
00409bc6loc_409bc6:
00409bc6mov rax, [rbp+40]
00409bcamov ecx, [rax]
00409bccmov edx, ecx
00409bcesub edx, 2
00409bd1mov eax, ecx
00409bd3mov r8, [rbp+40]
00409bd7lock cmpxchg [r8], edx
00409bdccmp eax, ecx
00409bdejne 0x409bc6
00409be0mov dil, 1
00409be3
00409be3loc_409be3:
00409be3test dil, dil
00409be6je 0x409b54
00409becnop
00409bedtest sil, sil
00409bf0je 0x409c05
00409bf2call GetCurrentThreadId
00409bf7mov rcx, [rbp+40]
00409bfbmov [rcx+8], eax
00409bfemov [rcx+4], 1
00409c05
00409c05loc_409c05:
00409c05mov eax, esi
00409c08lea rsp, [rbp+72]
00409c0cpop rbx
00409c0dpop rsi
00409c0epop rdi
00409c0fpop r13
00409c11pop r14
00409c13pop rbp
00409c14ret
00409a50
00409a50fn_409a50:
00409a50push rbp
00409a51push r14
00409a53push r13
00409a55push rdi
00409a56push rsi
00409a57push rbx
00409a58sub rsp, 72
00409a5cmov rbp, rsp
00409a5fmov [rbp+40], rcx
00409a63mov ebx, edx
00409a65mov rax, [rbp+40]
00409a69mov r13l, [rax+24]
00409a6d
00409a6dloc_409a6d:
00409a6dmov rcx, [rbp+40]
00409a71call fn_40a0a0
00409a76mov esi, eax
00409a79test sil, sil
00409a7cjne 0x409c05
00409a82test ebx, ebx
00409a84je 0x409c05
00409a8axor edi, edi
00409a8dtest r13l, r13l
00409a90jle 0x409b31
00409a96call GetTickCount
00409a9bmov r14l, eax
00409a9emov [rbp+60], 0
00409aa5test r13l, r13l
00409aa8jle 0x409b15
00409aaa
00409aaaloc_409aaa:
00409aaacmp ebx, -1
00409aadje 0x409ac3
00409aafcall GetTickCount
00409ab4sub eax, r14l
00409ab7cmp eax, ebx
00409ab9jb 0x409ac3
00409abbxor esi, esi
00409abejmp 0x409c05
00409ac3
00409ac3loc_409ac3:
00409ac3mov rax, [rbp+40]
00409ac7cmp [rax], 1
00409acajg 0x409b15
00409accmov rax, [rbp+40]
00409ad0cmp [rax], 0
00409ad3jne 0x409b03
00409ad5xor eax, eax
00409ad7mov ecx, 1
00409adcmov rdx, [rbp+40]
00409ae0lock cmpxchg [rdx], ecx
00409ae4test eax, eax
00409ae6jne 0x409b03
00409ae8call GetCurrentThreadId
00409aedmov rcx, [rbp+40]
00409af1mov [rcx+8], eax
00409af4mov [rcx+4], 1
00409afbmov sil, 1
00409afejmp 0x409c05
00409b03
00409b03loc_409b03:
00409b03lea rcx, [rbp+60]
00409b07call fn_4095f0
00409b0csub r13l, 1
00409b10test r13l, r13l
00409b13jg 0x409aaa
00409b15
00409b15loc_409b15:
00409b15nop
00409b16cmp ebx, -1
00409b19je 0x409b31
00409b1bcall GetTickCount
00409b20sub eax, r14l
00409b23cmp eax, ebx
00409b25jb 0x409b2f
00409b27xor esi, esi
00409b2ajmp 0x409c05
00409b2f
00409b2floc_409b2f:
00409b2fsub ebx, eax
00409b31
00409b31loc_409b31:
00409b31mov rax, [rbp+40]
00409b35mov ecx, [rax]
00409b37test ecx, ecx
00409b39je 0x409a6d
00409b3fmov edx, ecx
00409b41add edx, 2
00409b44mov eax, ecx
00409b46mov r8, [rbp+40]
00409b4alock cmpxchg [r8], edx
00409b4fcmp eax, ecx
00409b51jne 0x409b31
00409b53nop
00409b54
00409b54loc_409b54:
00409b54call GetTickCount
00409b59mov r14l, eax
00409b5cmov rcx, [rbp+40]
00409b60call fn_409cb0
00409b65xor ecx, ecx
00409b67mov rdx, rax
00409b6amov r8l, ebx
00409b6dmov rax, [rip+0x5be1c]
00409b74call [rax+32]
00409b77test eax, eax
00409b79sete sil
00409b7dcmp ebx, -1
00409b80je 0x409b94
00409b82call GetTickCount
00409b87sub eax, r14l
00409b8acmp eax, ebx
00409b8cjae 0x409b92
00409b8esub ebx, eax
00409b90jmp 0x409b94
00409b92
00409b92loc_409b92:
00409b92xor ebx, ebx
00409b94
00409b94loc_409b94:
00409b94test sil, sil
00409b97je 0x409bc6
00409b99
00409b99loc_409b99:
00409b99mov rax, [rbp+40]
00409b9dmov ecx, [rax]
00409b9fmov eax, ecx
00409ba1test eax, 1
00409ba7jne 0x409bc3
00409ba9mov edx, ecx
00409babsub edx, 2
00409baeor edx, 1
00409bb1mov eax, ecx
00409bb3mov r8, [rbp+40]
00409bb7lock cmpxchg [r8], edx
00409bbccmp eax, ecx
00409bbejne 0x409b99
00409bc0mov dil, 1
00409bc3
00409bc3loc_409bc3:
00409bc3nop
00409bc4jmp 0x409be3
00409bc6
00409bc6loc_409bc6:
00409bc6mov rax, [rbp+40]
00409bcamov ecx, [rax]
00409bccmov edx, ecx
00409bcesub edx, 2
00409bd1mov eax, ecx
00409bd3mov r8, [rbp+40]
00409bd7lock cmpxchg [r8], edx
00409bdccmp eax, ecx
00409bdejne 0x409bc6
00409be0mov dil, 1
00409be3
00409be3loc_409be3:
00409be3test dil, dil
00409be6je 0x409b54
00409becnop
00409bedtest sil, sil
00409bf0je 0x409c05
00409bf2call GetCurrentThreadId
00409bf7mov rcx, [rbp+40]
00409bfbmov [rcx+8], eax
00409bfemov [rcx+4], 1
00409c05
00409c05loc_409c05:
00409c05mov eax, esi
00409c08lea rsp, [rbp+72]
00409c0cpop rbx
00409c0dpop rsi
00409c0epop rdi
00409c0fpop r13
00409c11pop r14
00409c13pop rbp
00409c14ret
00409a50
00409c15
00409c15 // align 0x10
00409c15 // align 0x10
00409c20
00409c20fn_409c20:
00409c20push rbx
00409c21sub rsp, 32
00409c25mov rbx, rcx
00409c28mov rcx, rbx
00409c2bcall fn_409820
00409c30lea rax, [rbx+4]
00409c34sub [rax], 1
00409c37cmp [rbx+4], 0
00409c3bjne 0x409c78
00409c3dmov [rbx+8], 0
00409c44
00409c44loc_409c44:
00409c44mov ecx, [rbx]
00409c46mov edx, ecx
00409c48sub edx, 1
00409c4bmov eax, ecx
00409c4dlock cmpxchg [rbx], edx
00409c51cmp eax, ecx
00409c53jne 0x409c44
00409c55test ecx, -2
00409c5bje 0x409c77
00409c5dmov rcx, rbx
00409c60call fn_409cb0
00409c65mov rcx, rax
00409c68xor edx, edx
00409c6axor r8, r8
00409c6dmov rax, [rip+0x5bd1c]
00409c74call [rax+32]
00409c77
00409c77loc_409c77:
00409c77nop
00409c78
00409c78loc_409c78:
00409c78add rsp, 32
00409c7cpop rbx
00409c7dret
00409c20
00409c20fn_409c20:
00409c20push rbx
00409c21sub rsp, 32
00409c25mov rbx, rcx
00409c28mov rcx, rbx
00409c2bcall fn_409820
00409c30lea rax, [rbx+4]
00409c34sub [rax], 1
00409c37cmp [rbx+4], 0
00409c3bjne 0x409c78
00409c3dmov [rbx+8], 0
00409c44
00409c44loc_409c44:
00409c44mov ecx, [rbx]
00409c46mov edx, ecx
00409c48sub edx, 1
00409c4bmov eax, ecx
00409c4dlock cmpxchg [rbx], edx
00409c51cmp eax, ecx
00409c53jne 0x409c44
00409c55test ecx, -2
00409c5bje 0x409c77
00409c5dmov rcx, rbx
00409c60call fn_409cb0
00409c65mov rcx, rax
00409c68xor edx, edx
00409c6axor r8, r8
00409c6dmov rax, [rip+0x5bd1c]
00409c74call [rax+32]
00409c77
00409c77loc_409c77:
00409c77nop
00409c78
00409c78loc_409c78:
00409c78add rsp, 32
00409c7cpop rbx
00409c7dret
00409c20
00409c7e
00409c7e // align 0x10
00409c7e // align 0x10
00409c80
00409c80fn_409c80:
00409c80push rbx
00409c81sub rsp, 32
00409c85mov rbx, rcx
00409c88cmp [rip+0x5bd00], 0
00409c90jne 0x409c99
00409c92mov cl, 26
00409c94call fn_405a20
00409c99
00409c99loc_409c99:
00409c99mov rcx, rbx
00409c9ccall fn_409d40
00409ca1mov rcx, rax
00409ca4call fn_409c20
00409ca9add rsp, 32
00409cadpop rbx
00409caeret
00409c80
00409c80fn_409c80:
00409c80push rbx
00409c81sub rsp, 32
00409c85mov rbx, rcx
00409c88cmp [rip+0x5bd00], 0
00409c90jne 0x409c99
00409c92mov cl, 26
00409c94call fn_405a20
00409c99
00409c99loc_409c99:
00409c99mov rcx, rbx
00409c9ccall fn_409d40
00409ca1mov rcx, rax
00409ca4call fn_409c20
00409ca9add rsp, 32
00409cadpop rbx
00409caeret
00409c80
00409caf
00409caf // align 0x10
00409caf // align 0x10
00409cb0
00409cb0fn_409cb0:
00409cb0push r13
00409cb2push rdi
00409cb3push rsi
00409cb4push rbx
00409cb5sub rsp, 40
00409cb9mov rbx, rcx
00409cbcmov edi, 1
00409cc1mov rsi, [rbx+16]
00409cc5test rsi, rsi
00409cc8jne 0x409d1d
00409cca
00409ccaloc_409cca:
00409ccamov rax, [rip+0x5bcbf]
00409cd1call [rax]
00409cd3mov rcx, rax
00409cd6xor eax, eax
00409cd8mov rdx, rcx
00409cdblock cmpxchg [rbx+16], rdx
00409ce1mov rsi, rax
00409ce4test rsi, rsi
00409ce7jne 0x409cee
00409ce9mov rsi, rcx
00409cecjmp 0x409cfe
00409cee
00409ceeloc_409cee:
00409ceetest rcx, rcx
00409cf1je 0x409cfe
00409cf3mov r13, [rip+0x5bc96]
00409cfacall [r13+8]
00409cfe
00409cfeloc_409cfe:
00409cfetest rsi, rsi
00409d01jne 0x409d1d
00409d03mov ecx, edi
00409d05call Sleep
00409d0acmp edi, 512
00409d10jle 0x409d19
00409d12mov edi, 1
00409d17jmp 0x409cca
00409d19
00409d19loc_409d19:
00409d19add edi, edi
00409d1bjmp 0x409cca
00409d1d
00409d1dloc_409d1d:
00409d1dmov rax, rsi
00409d20add rsp, 40
00409d24pop rbx
00409d25pop rsi
00409d26pop rdi
00409d27pop r13
00409d29ret
00409cb0
00409cb0fn_409cb0:
00409cb0push r13
00409cb2push rdi
00409cb3push rsi
00409cb4push rbx
00409cb5sub rsp, 40
00409cb9mov rbx, rcx
00409cbcmov edi, 1
00409cc1mov rsi, [rbx+16]
00409cc5test rsi, rsi
00409cc8jne 0x409d1d
00409cca
00409ccaloc_409cca:
00409ccamov rax, [rip+0x5bcbf]
00409cd1call [rax]
00409cd3mov rcx, rax
00409cd6xor eax, eax
00409cd8mov rdx, rcx
00409cdblock cmpxchg [rbx+16], rdx
00409ce1mov rsi, rax
00409ce4test rsi, rsi
00409ce7jne 0x409cee
00409ce9mov rsi, rcx
00409cecjmp 0x409cfe
00409cee
00409ceeloc_409cee:
00409ceetest rcx, rcx
00409cf1je 0x409cfe
00409cf3mov r13, [rip+0x5bc96]
00409cfacall [r13+8]
00409cfe
00409cfeloc_409cfe:
00409cfetest rsi, rsi
00409d01jne 0x409d1d
00409d03mov ecx, edi
00409d05call Sleep
00409d0acmp edi, 512
00409d10jle 0x409d19
00409d12mov edi, 1
00409d17jmp 0x409cca
00409d19
00409d19loc_409d19:
00409d19add edi, edi
00409d1bjmp 0x409cca
00409d1d
00409d1dloc_409d1d:
00409d1dmov rax, rsi
00409d20add rsp, 40
00409d24pop rbx
00409d25pop rsi
00409d26pop rdi
00409d27pop r13
00409d29ret
00409cb0
00409d2a
00409d2a // align 0x10
00409d2a // align 0x10
00409d30
00409d30fn_409d30:
00409d30mov rax, [rcx]
00409d33movsxd rax, [rax-128]
00409d37lea rax, [rcx+rax-8]
00409d3cret
00409d30
00409d30fn_409d30:
00409d30mov rax, [rcx]
00409d33movsxd rax, [rax-128]
00409d37lea rax, [rcx+rax-8]
00409d3cret
00409d30
00409d3d
00409d3d // align 0x10
00409d3d // align 0x10
00409d40
00409d40fn_409d40:
00409d40push rbp
00409d41push rsi
00409d42push rbx
00409d43sub rsp, 48
00409d47mov rbp, rsp
00409d4amov rax, [rcx]
00409d4dmovsxd rax, [rax-128]
00409d51lea rsi, [rcx+rax-8]
00409d56mov rax, [rsi]
00409d59mov [rbp+40], rax
00409d5dmov rbx, [rbp+40]
00409d61and rbx, -2
00409d65test rbx, rbx
00409d68jne 0x409da7
00409d6acall fn_409840
00409d6fmov rcx, rax
00409d72
00409d72loc_409d72:
00409d72mov rax, [rbp+40]
00409d76and rax, 1
00409d7amov rdx, rcx
00409d7dor rdx, rax
00409d80mov rax, [rbp+40]
00409d84lock cmpxchg [rsi], rdx
00409d89mov rax, [rsi]
00409d8cmov [rbp+40], rax
00409d90mov rbx, [rbp+40]
00409d94and rbx, -2
00409d98test rbx, rbx
00409d9bje 0x409d72
00409d9dcmp rbx, rcx
00409da0je 0x409da7
00409da2call fn_404120
00409da7
00409da7loc_409da7:
00409da7mov rax, rbx
00409daalea rsp, [rbp+48]
00409daepop rbx
00409dafpop rsi
00409db0pop rbp
00409db1ret
00409d40
00409d40fn_409d40:
00409d40push rbp
00409d41push rsi
00409d42push rbx
00409d43sub rsp, 48
00409d47mov rbp, rsp
00409d4amov rax, [rcx]
00409d4dmovsxd rax, [rax-128]
00409d51lea rsi, [rcx+rax-8]
00409d56mov rax, [rsi]
00409d59mov [rbp+40], rax
00409d5dmov rbx, [rbp+40]
00409d61and rbx, -2
00409d65test rbx, rbx
00409d68jne 0x409da7
00409d6acall fn_409840
00409d6fmov rcx, rax
00409d72
00409d72loc_409d72:
00409d72mov rax, [rbp+40]
00409d76and rax, 1
00409d7amov rdx, rcx
00409d7dor rdx, rax
00409d80mov rax, [rbp+40]
00409d84lock cmpxchg [rsi], rdx
00409d89mov rax, [rsi]
00409d8cmov [rbp+40], rax
00409d90mov rbx, [rbp+40]
00409d94and rbx, -2
00409d98test rbx, rbx
00409d9bje 0x409d72
00409d9dcmp rbx, rcx
00409da0je 0x409da7
00409da2call fn_404120
00409da7
00409da7loc_409da7:
00409da7mov rax, rbx
00409daalea rsp, [rbp+48]
00409daepop rbx
00409dafpop rsi
00409db0pop rbp
00409db1ret
00409d40
00409db2
00409db2 // align 0x10
00409db2 // align 0x10
00409dc0
00409dc0fn_409dc0:
00409dc0sub rsp, 40
00409dc4call fn_4099a0
00409dc9test rax, rax
00409dccje 0x409de1
00409dcemov rcx, [rax+16]
00409dd2xor edx, edx
00409dd4xor r8, r8
00409dd7mov rax, [rip+0x5bbb2]
00409ddecall [rax+32]
00409de1
00409de1loc_409de1:
00409de1add rsp, 40
00409de5ret
00409dc0
00409dc0fn_409dc0:
00409dc0sub rsp, 40
00409dc4call fn_4099a0
00409dc9test rax, rax
00409dccje 0x409de1
00409dcemov rcx, [rax+16]
00409dd2xor edx, edx
00409dd4xor r8, r8
00409dd7mov rax, [rip+0x5bbb2]
00409ddecall [rax+32]
00409de1
00409de1loc_409de1:
00409de1add rsp, 40
00409de5ret
00409dc0
00409de6
00409de6 // align 0x10
00409de6 // align 0x10
00409df0
00409df0fn_409df0:
00409df0push rbx
00409df1sub rsp, 32
00409df5mov rbx, rcx
00409df8cmp [rip+0x5bb90], 0
00409e00jne 0x409e09
00409e02mov cl, 26
00409e04call fn_405a20
00409e09
00409e09loc_409e09:
00409e09mov rcx, rbx
00409e0ccall fn_409d40
00409e11mov rcx, rax
00409e14call fn_409dc0
00409e19add rsp, 32
00409e1dpop rbx
00409e1eret
00409df0
00409df0fn_409df0:
00409df0push rbx
00409df1sub rsp, 32
00409df5mov rbx, rcx
00409df8cmp [rip+0x5bb90], 0
00409e00jne 0x409e09
00409e02mov cl, 26
00409e04call fn_405a20
00409e09
00409e09loc_409e09:
00409e09mov rcx, rbx
00409e0ccall fn_409d40
00409e11mov rcx, rax
00409e14call fn_409dc0
00409e19add rsp, 32
00409e1dpop rbx
00409e1eret
00409df0
00409e1f
00409e1f // align 0x10
00409e1f // align 0x10
00409e20
00409e20fn_409e20:
00409e20push rbx
00409e21sub rsp, 32
00409e25mov rbx, rcx
00409e28mov rcx, rbx
00409e2bcall fn_4099a0
00409e30test rax, rax
00409e33je 0x409e55
00409e35
00409e35loc_409e35:
00409e35mov rcx, [rax+16]
00409e39xor edx, edx
00409e3bxor r8, r8
00409e3emov rax, [rip+0x5bb4b]
00409e45call [rax+32]
00409e48mov rcx, rbx
00409e4bcall fn_4099a0
00409e50test rax, rax
00409e53jne 0x409e35
00409e55
00409e55loc_409e55:
00409e55nop
00409e56add rsp, 32
00409e5apop rbx
00409e5bret
00409e20
00409e20fn_409e20:
00409e20push rbx
00409e21sub rsp, 32
00409e25mov rbx, rcx
00409e28mov rcx, rbx
00409e2bcall fn_4099a0
00409e30test rax, rax
00409e33je 0x409e55
00409e35
00409e35loc_409e35:
00409e35mov rcx, [rax+16]
00409e39xor edx, edx
00409e3bxor r8, r8
00409e3emov rax, [rip+0x5bb4b]
00409e45call [rax+32]
00409e48mov rcx, rbx
00409e4bcall fn_4099a0
00409e50test rax, rax
00409e53jne 0x409e35
00409e55
00409e55loc_409e55:
00409e55nop
00409e56add rsp, 32
00409e5apop rbx
00409e5bret
00409e20
00409e5c
00409e5c // align 0x10
00409e5c // align 0x10
00409e60
00409e60fn_409e60:
00409e60push rbx
00409e61sub rsp, 32
00409e65mov rbx, rcx
00409e68cmp [rip+0x5bb20], 0
00409e70jne 0x409e79
00409e72mov cl, 26
00409e74call fn_405a20
00409e79
00409e79loc_409e79:
00409e79mov rcx, rbx
00409e7ccall fn_409d40
00409e81mov rcx, rax
00409e84call fn_409e20
00409e89add rsp, 32
00409e8dpop rbx
00409e8eret
00409e60
00409e60fn_409e60:
00409e60push rbx
00409e61sub rsp, 32
00409e65mov rbx, rcx
00409e68cmp [rip+0x5bb20], 0
00409e70jne 0x409e79
00409e72mov cl, 26
00409e74call fn_405a20
00409e79
00409e79loc_409e79:
00409e79mov rcx, rbx
00409e7ccall fn_409d40
00409e81mov rcx, rax
00409e84call fn_409e20
00409e89add rsp, 32
00409e8dpop rbx
00409e8eret
00409e60
00409e8f
00409e8f // align 0x10
00409e8f // align 0x10
00409e90
00409e90fn_409e90:
00409e90push rbp
00409e91sub rsp, 48
00409e95mov rbp, rsp
00409e98mov [rbp+40], rbp
00409e9cmov [rbp+64], rcx
00409ea0mov [rbp+72], rdx
00409ea4mov rax, [rbp+64]
00409ea8lea rcx, [rax+40]
00409eaccall fn_409680
00409eb1nop
00409eb2mov rax, [rbp+64]
00409eb6mov rax, [rax+32]
00409ebatest rax, rax
00409ebdjne 0x409ed8
00409ebfmov rax, [rbp+64]
00409ec3mov rcx, [rbp+72]
00409ec7mov [rax+32], rcx
00409ecbmov rax, [rbp+72]
00409ecfmov rcx, [rbp+72]
00409ed3mov [rax], rcx
00409ed6jmp 0x409efd
00409ed8
00409ed8loc_409ed8:
00409ed8mov rcx, [rbp+72]
00409edcmov rax, [rax]
00409edfmov [rcx], rax
00409ee2mov rax, [rbp+64]
00409ee6mov rax, [rax+32]
00409eeamov rcx, [rbp+72]
00409eeemov [rax], rcx
00409ef1mov rax, [rbp+64]
00409ef5mov rcx, [rbp+72]
00409ef9mov [rax+32], rcx
00409efd
00409efdloc_409efd:
00409efdnop
00409efemov rax, [rbp+64]
00409f02lea rcx, [rax+40]
00409f06call fn_4096c0
00409f0blea rsp, [rbp+48]
00409f0fpop rbp
00409f10ret
00409e90
00409e90fn_409e90:
00409e90push rbp
00409e91sub rsp, 48
00409e95mov rbp, rsp
00409e98mov [rbp+40], rbp
00409e9cmov [rbp+64], rcx
00409ea0mov [rbp+72], rdx
00409ea4mov rax, [rbp+64]
00409ea8lea rcx, [rax+40]
00409eaccall fn_409680
00409eb1nop
00409eb2mov rax, [rbp+64]
00409eb6mov rax, [rax+32]
00409ebatest rax, rax
00409ebdjne 0x409ed8
00409ebfmov rax, [rbp+64]
00409ec3mov rcx, [rbp+72]
00409ec7mov [rax+32], rcx
00409ecbmov rax, [rbp+72]
00409ecfmov rcx, [rbp+72]
00409ed3mov [rax], rcx
00409ed6jmp 0x409efd
00409ed8
00409ed8loc_409ed8:
00409ed8mov rcx, [rbp+72]
00409edcmov rax, [rax]
00409edfmov [rcx], rax
00409ee2mov rax, [rbp+64]
00409ee6mov rax, [rax+32]
00409eeamov rcx, [rbp+72]
00409eeemov [rax], rcx
00409ef1mov rax, [rbp+64]
00409ef5mov rcx, [rbp+72]
00409ef9mov [rax+32], rcx
00409efd
00409efdloc_409efd:
00409efdnop
00409efemov rax, [rbp+64]
00409f02lea rcx, [rax+40]
00409f06call fn_4096c0
00409f0blea rsp, [rbp+48]
00409f0fpop rbp
00409f10ret
00409e90
00409f11
00409f11 48 8d 80 00 00 00 00 48 8d 04 05 00 00 00 00 H......H.......
00409f11 48 8d 80 00 00 00 00 48 8d 04 05 00 00 00 00 H......H.......
00409f20
00409f20fn_409f20:
00409f20push rbp
00409f21sub rsp, 32
00409f25mov rbp, rsp
00409f28mov rax, [rdx+64]
00409f2clea rcx, [rax+40]
00409f30call fn_4096c0
00409f35lea rsp, [rbp+32]
00409f39pop rbp
00409f3aret
00409f20
00409f20fn_409f20:
00409f20push rbp
00409f21sub rsp, 32
00409f25mov rbp, rsp
00409f28mov rax, [rdx+64]
00409f2clea rcx, [rax+40]
00409f30call fn_4096c0
00409f35lea rsp, [rbp+32]
00409f39pop rbp
00409f3aret
00409f20
00409f3b
00409f3b // align 0x10
00409f3b // align 0x10
00409f40
00409f40fn_409f40:
00409f40push rbp
00409f41sub rsp, 64
00409f45mov rbp, rsp
00409f48mov [rbp+40], rbp
00409f4cmov [rbp+80], rcx
00409f50mov [rbp+88], rdx
00409f54mov rax, [rbp+80]
00409f58cmp [rax+32], 0
00409f5dje 0x40a01f
00409f63mov rax, [rbp+80]
00409f67lea rcx, [rax+40]
00409f6bcall fn_409680
00409f70nop
00409f71mov rax, [rbp+80]
00409f75mov rax, [rax+32]
00409f79test rax, rax
00409f7cje 0x40a011
00409f82mov [rbp+56], rax
00409f86mov rax, [rbp+56]
00409f8amov rax, [rax]
00409f8dmov [rbp+48], rax
00409f91jmp 0x409fc0
00409f93
00409f93loc_409f93:
00409f93mov rax, [rbp+48]
00409f97cmp rax, [rbp+88]
00409f9bjne 0x409fad
00409f9dmov rax, [rbp+56]
00409fa1mov rcx, [rbp+48]
00409fa5mov rcx, [rcx]
00409fa8mov [rax], rcx
00409fabjmp 0x409fce
00409fad
00409fadloc_409fad:
00409fadmov rax, [rbp+48]
00409fb1mov [rbp+56], rax
00409fb5mov rax, [rbp+48]
00409fb9mov rax, [rax]
00409fbcmov [rbp+48], rax
00409fc0
00409fc0loc_409fc0:
00409fc0mov rax, [rbp+80]
00409fc4mov rcx, [rbp+48]
00409fc8cmp rcx, [rax+32]
00409fccjne 0x409f93
00409fce
00409fceloc_409fce:
00409fcenop
00409fcfmov rax, [rbp+80]
00409fd3mov rcx, [rbp+48]
00409fd7cmp rcx, [rax+32]
00409fdbjne 0x40a011
00409fddmov rax, [rbp+48]
00409fe1cmp rax, [rbp+88]
00409fe5jne 0x40a011
00409fe7mov rax, [rbp+48]
00409febmov rax, [rax]
00409feecmp rax, [rbp+48]
00409ff2jne 0x40a002
00409ff4mov rax, [rbp+80]
00409ff8mov [rax+32], 0
0040a000jmp 0x40a011
0040a002
0040a002loc_40a002:
0040a002mov rcx, [rbp+80]
0040a006mov [rcx+32], rax
0040a00amov rcx, [rbp+56]
0040a00emov [rcx], rax
0040a011
0040a011loc_40a011:
0040a011nop
0040a012mov rax, [rbp+80]
0040a016lea rcx, [rax+40]
0040a01acall fn_4096c0
0040a01f
0040a01floc_40a01f:
0040a01flea rsp, [rbp+64]
0040a023pop rbp
0040a024ret
00409f40
00409f40fn_409f40:
00409f40push rbp
00409f41sub rsp, 64
00409f45mov rbp, rsp
00409f48mov [rbp+40], rbp
00409f4cmov [rbp+80], rcx
00409f50mov [rbp+88], rdx
00409f54mov rax, [rbp+80]
00409f58cmp [rax+32], 0
00409f5dje 0x40a01f
00409f63mov rax, [rbp+80]
00409f67lea rcx, [rax+40]
00409f6bcall fn_409680
00409f70nop
00409f71mov rax, [rbp+80]
00409f75mov rax, [rax+32]
00409f79test rax, rax
00409f7cje 0x40a011
00409f82mov [rbp+56], rax
00409f86mov rax, [rbp+56]
00409f8amov rax, [rax]
00409f8dmov [rbp+48], rax
00409f91jmp 0x409fc0
00409f93
00409f93loc_409f93:
00409f93mov rax, [rbp+48]
00409f97cmp rax, [rbp+88]
00409f9bjne 0x409fad
00409f9dmov rax, [rbp+56]
00409fa1mov rcx, [rbp+48]
00409fa5mov rcx, [rcx]
00409fa8mov [rax], rcx
00409fabjmp 0x409fce
00409fad
00409fadloc_409fad:
00409fadmov rax, [rbp+48]
00409fb1mov [rbp+56], rax
00409fb5mov rax, [rbp+48]
00409fb9mov rax, [rax]
00409fbcmov [rbp+48], rax
00409fc0
00409fc0loc_409fc0:
00409fc0mov rax, [rbp+80]
00409fc4mov rcx, [rbp+48]
00409fc8cmp rcx, [rax+32]
00409fccjne 0x409f93
00409fce
00409fceloc_409fce:
00409fcenop
00409fcfmov rax, [rbp+80]
00409fd3mov rcx, [rbp+48]
00409fd7cmp rcx, [rax+32]
00409fdbjne 0x40a011
00409fddmov rax, [rbp+48]
00409fe1cmp rax, [rbp+88]
00409fe5jne 0x40a011
00409fe7mov rax, [rbp+48]
00409febmov rax, [rax]
00409feecmp rax, [rbp+48]
00409ff2jne 0x40a002
00409ff4mov rax, [rbp+80]
00409ff8mov [rax+32], 0
0040a000jmp 0x40a011
0040a002
0040a002loc_40a002:
0040a002mov rcx, [rbp+80]
0040a006mov [rcx+32], rax
0040a00amov rcx, [rbp+56]
0040a00emov [rcx], rax
0040a011
0040a011loc_40a011:
0040a011nop
0040a012mov rax, [rbp+80]
0040a016lea rcx, [rax+40]
0040a01acall fn_4096c0
0040a01f
0040a01floc_40a01f:
0040a01flea rsp, [rbp+64]
0040a023pop rbp
0040a024ret
00409f40
0040a025
0040a025 48 8b c0 48 8d 04 05 00 00 00 00 H..H.......
0040a025 48 8b c0 48 8d 04 05 00 00 00 00 H..H.......
0040a030
0040a030fn_40a030:
0040a030push rbp
0040a031sub rsp, 32
0040a035mov rbp, rsp
0040a038mov rax, [rdx+80]
0040a03clea rcx, [rax+40]
0040a040call fn_4096c0
0040a045lea rsp, [rbp+32]
0040a049pop rbp
0040a04aret
0040a030
0040a030fn_40a030:
0040a030push rbp
0040a031sub rsp, 32
0040a035mov rbp, rsp
0040a038mov rax, [rdx+80]
0040a03clea rcx, [rax+40]
0040a040call fn_4096c0
0040a045lea rsp, [rbp+32]
0040a049pop rbp
0040a04aret
0040a030
0040a04b
0040a04b // align 0x10
0040a04b // align 0x10
0040a050
0040a050fn_40a050:
0040a050push rbx
0040a051sub rsp, 32
0040a055mov ebx, edx
0040a057cmp [rip+0x5b042], 1
0040a05ejle 0x40a069
0040a060call fn_409d40
0040a065lock xchg [rax+24], ebx
0040a069
0040a069loc_40a069:
0040a069add rsp, 32
0040a06dpop rbx
0040a06eret
0040a050
0040a050fn_40a050:
0040a050push rbx
0040a051sub rsp, 32
0040a055mov ebx, edx
0040a057cmp [rip+0x5b042], 1
0040a05ejle 0x40a069
0040a060call fn_409d40
0040a065lock xchg [rax+24], ebx
0040a069
0040a069loc_40a069:
0040a069add rsp, 32
0040a06dpop rbx
0040a06eret
0040a050
0040a06f
0040a06f // align 0x10
0040a06f // align 0x10
0040a070
0040a070fn_40a070:
0040a070push rbx
0040a071sub rsp, 32
0040a075mov rbx, rcx
0040a078cmp [rip+0x5b910], 0
0040a080jne 0x40a089
0040a082mov cl, 26
0040a084call fn_405a20
0040a089
0040a089loc_40a089:
0040a089mov rcx, rbx
0040a08ccall fn_409d40
0040a091mov rcx, rax
0040a094call fn_40a0a0
0040a099add rsp, 32
0040a09dpop rbx
0040a09eret
0040a070
0040a070fn_40a070:
0040a070push rbx
0040a071sub rsp, 32
0040a075mov rbx, rcx
0040a078cmp [rip+0x5b910], 0
0040a080jne 0x40a089
0040a082mov cl, 26
0040a084call fn_405a20
0040a089
0040a089loc_40a089:
0040a089mov rcx, rbx
0040a08ccall fn_409d40
0040a091mov rcx, rax
0040a094call fn_40a0a0
0040a099add rsp, 32
0040a09dpop rbx
0040a09eret
0040a070
0040a09f
0040a09f // align 0x10
0040a09f // align 0x10
0040a0a0
0040a0a0fn_40a0a0:
0040a0a0push rbx
0040a0a1sub rsp, 32
0040a0a5mov rbx, rcx
0040a0a8call GetCurrentThreadId
0040a0adcmp [rbx+8], eax
0040a0b0jne 0x40a0bd
0040a0b2lea rax, [rbx+4]
0040a0b6add [rax], 1
0040a0b9mov al, 1
0040a0bbjmp 0x40a0e6
0040a0bd
0040a0bdloc_40a0bd:
0040a0bdcmp [rbx], 0
0040a0c0jne 0x40a0e4
0040a0c2xor eax, eax
0040a0c4mov ecx, 1
0040a0c9lock cmpxchg [rbx], ecx
0040a0cdtest eax, eax
0040a0cfjne 0x40a0e4
0040a0d1call GetCurrentThreadId
0040a0d6mov [rbx+8], eax
0040a0d9mov [rbx+4], 1
0040a0e0mov al, 1
0040a0e2jmp 0x40a0e6
0040a0e4
0040a0e4loc_40a0e4:
0040a0e4xor eax, eax
0040a0e6
0040a0e6loc_40a0e6:
0040a0e6add rsp, 32
0040a0eapop rbx
0040a0ebret
0040a0a0
0040a0a0fn_40a0a0:
0040a0a0push rbx
0040a0a1sub rsp, 32
0040a0a5mov rbx, rcx
0040a0a8call GetCurrentThreadId
0040a0adcmp [rbx+8], eax
0040a0b0jne 0x40a0bd
0040a0b2lea rax, [rbx+4]
0040a0b6add [rax], 1
0040a0b9mov al, 1
0040a0bbjmp 0x40a0e6
0040a0bd
0040a0bdloc_40a0bd:
0040a0bdcmp [rbx], 0
0040a0c0jne 0x40a0e4
0040a0c2xor eax, eax
0040a0c4mov ecx, 1
0040a0c9lock cmpxchg [rbx], ecx
0040a0cdtest eax, eax
0040a0cfjne 0x40a0e4
0040a0d1call GetCurrentThreadId
0040a0d6mov [rbx+8], eax
0040a0d9mov [rbx+4], 1
0040a0e0mov al, 1
0040a0e2jmp 0x40a0e6
0040a0e4
0040a0e4loc_40a0e4:
0040a0e4xor eax, eax
0040a0e6
0040a0e6loc_40a0e6:
0040a0e6add rsp, 32
0040a0eapop rbx
0040a0ebret
0040a0a0
0040a0ec
0040a0ec // align 0x10
0040a0ec // align 0x10
0040a0f0
0040a0f0fn_40a0f0:
0040a0f0push rbp
0040a0f1push rbx
0040a0f2sub rsp, 88
0040a0f6mov rbp, rsp
0040a0f9mov [rbp+40], rbp
0040a0fdmov [rbp+112], rcx
0040a101mov [rbp+120], rdx
0040a105mov [rbp+128], r8l
0040a10cmov [rbp+56], 0
0040a114mov rcx, [rbp+120]
0040a118call fn_409820
0040a11dmov [rbp+64], eax
0040a120mov rax, [rip+0x5b869]
0040a127call [rax+16]
0040a12amov [rbp+72], rax
0040a12enop
0040a12fmov rax, [rbp+120]
0040a133mov eax, [rax+4]
0040a136mov [rbp+48], eax
0040a139mov rcx, [rbp+112]
0040a13dlea rdx, [rbp+56]
0040a141call fn_409e90
0040a146mov rax, [rbp+120]
0040a14amov [rax+4], 1
0040a151mov rcx, [rbp+120]
0040a155call fn_409c20
0040a15axor ecx, ecx
0040a15cmov rdx, [rbp+72]
0040a160mov r8l, [rbp+128]
0040a167mov rax, [rip+0x5b822]
0040a16ecall [rax+32]
0040a171test eax, eax
0040a173sete al
0040a176mov [rbp+55], al
0040a179mov rcx, [rbp+120]
0040a17dor edx, -1
0040a180call fn_409a50
0040a185mov rcx, [rbp+112]
0040a189lea rdx, [rbp+56]
0040a18dcall fn_409f40
0040a192mov rax, [rbp+120]
0040a196mov ecx, [rbp+48]
0040a199mov [rax+4], ecx
0040a19cnop
0040a19dmov rcx, [rbp+72]
0040a1a1mov rbx, [rip+0x5b7e8]
0040a1a8call [rbx+24]
0040a1abmovzx rax, [rbp+55]
0040a1b0lea rsp, [rbp+88]
0040a1b4pop rbx
0040a1b5pop rbp
0040a1b6ret
0040a0f0
0040a0f0fn_40a0f0:
0040a0f0push rbp
0040a0f1push rbx
0040a0f2sub rsp, 88
0040a0f6mov rbp, rsp
0040a0f9mov [rbp+40], rbp
0040a0fdmov [rbp+112], rcx
0040a101mov [rbp+120], rdx
0040a105mov [rbp+128], r8l
0040a10cmov [rbp+56], 0
0040a114mov rcx, [rbp+120]
0040a118call fn_409820
0040a11dmov [rbp+64], eax
0040a120mov rax, [rip+0x5b869]
0040a127call [rax+16]
0040a12amov [rbp+72], rax
0040a12enop
0040a12fmov rax, [rbp+120]
0040a133mov eax, [rax+4]
0040a136mov [rbp+48], eax
0040a139mov rcx, [rbp+112]
0040a13dlea rdx, [rbp+56]
0040a141call fn_409e90
0040a146mov rax, [rbp+120]
0040a14amov [rax+4], 1
0040a151mov rcx, [rbp+120]
0040a155call fn_409c20
0040a15axor ecx, ecx
0040a15cmov rdx, [rbp+72]
0040a160mov r8l, [rbp+128]
0040a167mov rax, [rip+0x5b822]
0040a16ecall [rax+32]
0040a171test eax, eax
0040a173sete al
0040a176mov [rbp+55], al
0040a179mov rcx, [rbp+120]
0040a17dor edx, -1
0040a180call fn_409a50
0040a185mov rcx, [rbp+112]
0040a189lea rdx, [rbp+56]
0040a18dcall fn_409f40
0040a192mov rax, [rbp+120]
0040a196mov ecx, [rbp+48]
0040a199mov [rax+4], ecx
0040a19cnop
0040a19dmov rcx, [rbp+72]
0040a1a1mov rbx, [rip+0x5b7e8]
0040a1a8call [rbx+24]
0040a1abmovzx rax, [rbp+55]
0040a1b0lea rsp, [rbp+88]
0040a1b4pop rbx
0040a1b5pop rbp
0040a1b6ret
0040a0f0
0040a1b7
0040a1b7 90 48 8d 04 05 00 00 00 00 .H.......
0040a1b7 90 48 8d 04 05 00 00 00 00 .H.......
0040a1c0
0040a1c0fn_40a1c0:
0040a1c0push rbp
0040a1c1push rbx
0040a1c2sub rsp, 40
0040a1c6mov rbp, rsp
0040a1c9mov rcx, [rdx+72]
0040a1cdmov rbx, [rip+0x5b7bc]
0040a1d4call [rbx+24]
0040a1d7lea rsp, [rbp+40]
0040a1dbpop rbx
0040a1dcpop rbp
0040a1ddret
0040a1c0
0040a1c0fn_40a1c0:
0040a1c0push rbp
0040a1c1push rbx
0040a1c2sub rsp, 40
0040a1c6mov rbp, rsp
0040a1c9mov rcx, [rdx+72]
0040a1cdmov rbx, [rip+0x5b7bc]
0040a1d4call [rbx+24]
0040a1d7lea rsp, [rbp+40]
0040a1dbpop rbx
0040a1dcpop rbp
0040a1ddret
0040a1c0
0040a1de
0040a1de // align 0x10
0040a1de // align 0x10
0040a1e0
0040a1e0fn_40a1e0:
0040a1e0push rsi
0040a1e1push rbx
0040a1e2sub rsp, 40
0040a1e6mov rbx, rcx
0040a1e9mov esi, edx
0040a1ebcmp [rip+0x5b79d], 0
0040a1f3jne 0x40a1fc
0040a1f5mov cl, 26
0040a1f7call fn_405a20
0040a1fc
0040a1fcloc_40a1fc:
0040a1fcmov rcx, rbx
0040a1ffcall fn_409d40
0040a204mov rcx, rax
0040a207mov rdx, rax
0040a20amov r8l, esi
0040a20dcall fn_40a0f0
0040a212add rsp, 40
0040a216pop rbx
0040a217pop rsi
0040a218ret
0040a1e0
0040a1e0fn_40a1e0:
0040a1e0push rsi
0040a1e1push rbx
0040a1e2sub rsp, 40
0040a1e6mov rbx, rcx
0040a1e9mov esi, edx
0040a1ebcmp [rip+0x5b79d], 0
0040a1f3jne 0x40a1fc
0040a1f5mov cl, 26
0040a1f7call fn_405a20
0040a1fc
0040a1fcloc_40a1fc:
0040a1fcmov rcx, rbx
0040a1ffcall fn_409d40
0040a204mov rcx, rax
0040a207mov rdx, rax
0040a20amov r8l, esi
0040a20dcall fn_40a0f0
0040a212add rsp, 40
0040a216pop rbx
0040a217pop rsi
0040a218ret
0040a1e0
0040a219
0040a219 // align 0x10
0040a219 // align 0x10
0040a220
0040a220fn_40a220:
0040a220push rdi
0040a221push rsi
0040a222push rbx
0040a223sub rsp, 32
0040a227mov rbx, rcx
0040a22amov rsi, rdx
0040a22dmov edi, r8l
0040a230cmp [rip+0x5b758], 0
0040a238jne 0x40a241
0040a23amov cl, 26
0040a23ccall fn_405a20
0040a241
0040a241loc_40a241:
0040a241mov rcx, rbx
0040a244call fn_409d40
0040a249mov rbx, rax
0040a24cmov rcx, rsi
0040a24fcall fn_409d40
0040a254mov rcx, rbx
0040a257mov rdx, rax
0040a25amov r8l, edi
0040a25dcall fn_40a0f0
0040a262add rsp, 32
0040a266pop rbx
0040a267pop rsi
0040a268pop rdi
0040a269ret
0040a220
0040a220fn_40a220:
0040a220push rdi
0040a221push rsi
0040a222push rbx
0040a223sub rsp, 32
0040a227mov rbx, rcx
0040a22amov rsi, rdx
0040a22dmov edi, r8l
0040a230cmp [rip+0x5b758], 0
0040a238jne 0x40a241
0040a23amov cl, 26
0040a23ccall fn_405a20
0040a241
0040a241loc_40a241:
0040a241mov rcx, rbx
0040a244call fn_409d40
0040a249mov rbx, rax
0040a24cmov rcx, rsi
0040a24fcall fn_409d40
0040a254mov rcx, rbx
0040a257mov rdx, rax
0040a25amov r8l, edi
0040a25dcall fn_40a0f0
0040a262add rsp, 32
0040a266pop rbx
0040a267pop rsi
0040a268pop rdi
0040a269ret
0040a220
0040a26a
0040a26a // align 0x10
0040a26a // align 0x10
0040a270
0040a270fn_40a270:
0040a270sub rsp, 40
0040a274cmp [rip+0x4edbd], 1
0040a27bjbe 0x40a290
0040a27dmov ecx, 0xeedfadf
0040a282xor edx, edx
0040a284xor r8, r8
0040a287xor r9, r9
0040a28acall [rip+0x5ada0]
0040a290
0040a290loc_40a290:
0040a290add rsp, 40
0040a294ret
0040a270
0040a270fn_40a270:
0040a270sub rsp, 40
0040a274cmp [rip+0x4edbd], 1
0040a27bjbe 0x40a290
0040a27dmov ecx, 0xeedfadf
0040a282xor edx, edx
0040a284xor r8, r8
0040a287xor r9, r9
0040a28acall [rip+0x5ada0]
0040a290
0040a290loc_40a290:
0040a290add rsp, 40
0040a294ret
0040a270
0040a295
0040a295 // align 0x10
0040a295 // align 0x10
0040a2a0
0040a2a0fn_40a2a0:
0040a2a0push rbp
0040a2a1sub rsp, 48
0040a2a5mov rbp, rsp
0040a2a8cmp [rip+0x4ed89], 0
0040a2afje 0x40a2d0
0040a2b1mov [rbp+32], rdx
0040a2b5mov [rbp+40], rcx
0040a2b9mov ecx, 0xeedfae4
0040a2bexor edx, edx
0040a2c0mov r8l, 2
0040a2c6lea r9, [rbp+32]
0040a2cacall [rip+0x5ad60]
0040a2d0
0040a2d0loc_40a2d0:
0040a2d0lea rsp, [rbp+48]
0040a2d4pop rbp
0040a2d5ret
0040a2a0
0040a2a0fn_40a2a0:
0040a2a0push rbp
0040a2a1sub rsp, 48
0040a2a5mov rbp, rsp
0040a2a8cmp [rip+0x4ed89], 0
0040a2afje 0x40a2d0
0040a2b1mov [rbp+32], rdx
0040a2b5mov [rbp+40], rcx
0040a2b9mov ecx, 0xeedfae4
0040a2bexor edx, edx
0040a2c0mov r8l, 2
0040a2c6lea r9, [rbp+32]
0040a2cacall [rip+0x5ad60]
0040a2d0
0040a2d0loc_40a2d0:
0040a2d0lea rsp, [rbp+48]
0040a2d4pop rbp
0040a2d5ret
0040a2a0
0040a2d6
0040a2d6 // align 0x10
0040a2d6 // align 0x10
0040a2e0
0040a2e0fn_40a2e0:
0040a2e0sub rsp, 40
0040a2e4mov [rsp+48], rcx
0040a2e9mov ecx, 0xeedfae0
0040a2eexor edx, edx
0040a2f0mov r8l, 1
0040a2f6lea r9, [rsp+48]
0040a2fbcall [rip+0x5ad2f]
0040a301add rsp, 40
0040a305ret
0040a2e0
0040a2e0fn_40a2e0:
0040a2e0sub rsp, 40
0040a2e4mov [rsp+48], rcx
0040a2e9mov ecx, 0xeedfae0
0040a2eexor edx, edx
0040a2f0mov r8l, 1
0040a2f6lea r9, [rsp+48]
0040a2fbcall [rip+0x5ad2f]
0040a301add rsp, 40
0040a305ret
0040a2e0
0040a306
0040a306 // align 0x10
0040a306 // align 0x10
0040a310
0040a310fn_40a310:
0040a310sub rsp, 40
0040a314cmp [rip+0x4ed1d], 1
0040a31bjbe 0x40a322
0040a31dcall fn_40a2e0
0040a322
0040a322loc_40a322:
0040a322add rsp, 40
0040a326ret
0040a310
0040a310fn_40a310:
0040a310sub rsp, 40
0040a314cmp [rip+0x4ed1d], 1
0040a31bjbe 0x40a322
0040a31dcall fn_40a2e0
0040a322
0040a322loc_40a322:
0040a322add rsp, 40
0040a326ret
0040a310
0040a327
0040a327 // align 0x10
0040a327 // align 0x10
0040a330
0040a330fn_40a330:
0040a330sub rsp, 40
0040a334cmp [rip+0x4ecfd], 1
0040a33bjbe 0x40a342
0040a33dcall fn_40a2e0
0040a342
0040a342loc_40a342:
0040a342add rsp, 40
0040a346ret
0040a330
0040a330fn_40a330:
0040a330sub rsp, 40
0040a334cmp [rip+0x4ecfd], 1
0040a33bjbe 0x40a342
0040a33dcall fn_40a2e0
0040a342
0040a342loc_40a342:
0040a342add rsp, 40
0040a346ret
0040a330
0040a347
0040a347 // align 0x10
0040a347 // align 0x10
0040a350
0040a350fn_40a350:
0040a350sub rsp, 40
0040a354mov [rsp+48], rcx
0040a359cmp [rip+0x4ecd8], 1
0040a360jbe 0x40a37a
0040a362mov ecx, 0xeedfae1
0040a367xor edx, edx
0040a369mov r8l, 1
0040a36flea r9, [rsp+48]
0040a374call [rip+0x5acb6]
0040a37a
0040a37aloc_40a37a:
0040a37aadd rsp, 40
0040a37eret
0040a350
0040a350fn_40a350:
0040a350sub rsp, 40
0040a354mov [rsp+48], rcx
0040a359cmp [rip+0x4ecd8], 1
0040a360jbe 0x40a37a
0040a362mov ecx, 0xeedfae1
0040a367xor edx, edx
0040a369mov r8l, 1
0040a36flea r9, [rsp+48]
0040a374call [rip+0x5acb6]
0040a37a
0040a37aloc_40a37a:
0040a37aadd rsp, 40
0040a37eret
0040a350
0040a37f
0040a37f // align 0x10
0040a37f // align 0x10
0040a380
0040a380fn_40a380:
0040a380sub rsp, 40
0040a384mov [rsp+48], rcx
0040a389cmp [rip+0x4eca8], 1
0040a390jbe 0x40a3aa
0040a392mov ecx, 0xeedfae2
0040a397xor edx, edx
0040a399mov r8l, 1
0040a39flea r9, [rsp+48]
0040a3a4call [rip+0x5ac86]
0040a3aa
0040a3aaloc_40a3aa:
0040a3aaadd rsp, 40
0040a3aeret
0040a380
0040a380fn_40a380:
0040a380sub rsp, 40
0040a384mov [rsp+48], rcx
0040a389cmp [rip+0x4eca8], 1
0040a390jbe 0x40a3aa
0040a392mov ecx, 0xeedfae2
0040a397xor edx, edx
0040a399mov r8l, 1
0040a39flea r9, [rsp+48]
0040a3a4call [rip+0x5ac86]
0040a3aa
0040a3aaloc_40a3aa:
0040a3aaadd rsp, 40
0040a3aeret
0040a380
0040a3af
0040a3af // align 0x10
0040a3af // align 0x10
0040a3b0
0040a3b0fn_40a3b0:
0040a3b0push rbp
0040a3b1sub rsp, 48
0040a3b5mov rbp, rsp
0040a3b8cmp [rip+0x4ec79], 0
0040a3bfje 0x40a3e0
0040a3c1mov [rbp+32], rdx
0040a3c5mov [rbp+40], rcx
0040a3c9mov ecx, 0xeedfae3
0040a3cexor edx, edx
0040a3d0mov r8l, 2
0040a3d6lea r9, [rbp+32]
0040a3dacall [rip+0x5ac50]
0040a3e0
0040a3e0loc_40a3e0:
0040a3e0lea rsp, [rbp+48]
0040a3e4pop rbp
0040a3e5ret
0040a3b0
0040a3b0fn_40a3b0:
0040a3b0push rbp
0040a3b1sub rsp, 48
0040a3b5mov rbp, rsp
0040a3b8cmp [rip+0x4ec79], 0
0040a3bfje 0x40a3e0
0040a3c1mov [rbp+32], rdx
0040a3c5mov [rbp+40], rcx
0040a3c9mov ecx, 0xeedfae3
0040a3cexor edx, edx
0040a3d0mov r8l, 2
0040a3d6lea r9, [rbp+32]
0040a3dacall [rip+0x5ac50]
0040a3e0
0040a3e0loc_40a3e0:
0040a3e0lea rsp, [rbp+48]
0040a3e4pop rbp
0040a3e5ret
0040a3b0
0040a3e6
0040a3e6 // align 0x10
0040a3e6 // align 0x10
0040a3f0
0040a3f0fn_40a3f0:
0040a3f0push r14
0040a3f2push r13
0040a3f4push rdi
0040a3f5push rsi
0040a3f6push rbx
0040a3f7sub rsp, 64
0040a3fbmov [rsp+40], rcx
0040a400mov [rsp+48], rdx
0040a405mov [rsp+56], r8
0040a40axor eax, eax
0040a40cmov rcx, [rsp+56]
0040a411mov r14l, [rcx]
0040a414sub r14l, 1
0040a418mov edi, eax
0040a41acmp edi, r14l
0040a41djg 0x40a4c5
0040a423sub r14l, eax
0040a426add r14l, 1
0040a42a
0040a42aloc_40a42a:
0040a42amovsxd rax, edi
0040a42dmov rcx, [rsp+56]
0040a432lea rsi, [rcx+8*rax+4]
0040a437mov rbx, rsi
0040a43acmp [rsi], 0
0040a43dje 0x40a4c8
0040a443mov rax, [rsp+48]
0040a448test rax, rax
0040a44bje 0x40a4b5
0040a44dmov r13, [rsp+48]
0040a452
0040a452loc_40a452:
0040a452mov rax, [rsp+40]
0040a457mov rax, [rax+8]
0040a45bmov ecx, [rsi]
0040a45dmov rax, [rax+rcx]
0040a461cmp rax, r13
0040a464je 0x40a4c8
0040a466mov rcx, r13
0040a469mov edx, [rax-128]
0040a46ccmp edx, [rcx-128]
0040a46fjne 0x40a4a5
0040a471mov rax, [rax-136]
0040a478mov rcx, [rcx-136]
0040a47fmovzx rdx, [rax]
0040a483cmp dl, [rcx]
0040a485jne 0x40a4a5
0040a487lea rdx, [rax+1]
0040a48blea r8, [rcx+1]
0040a48fmovzx rax, [rax]
0040a493mov rcx, rdx
0040a496mov rdx, r8
0040a499mov r8, rax
0040a49ccall fn_40c6b0
0040a4a1test eax, eax
0040a4a3je 0x40a4c8
0040a4a5
0040a4a5loc_40a4a5:
0040a4a5mov r13, [r13-120]
0040a4a9test r13, r13
0040a4acje 0x40a4b4
0040a4aemov r13, [r13]
0040a4b2jmp 0x40a452
0040a4b4
0040a4b4loc_40a4b4:
0040a4b4nop
0040a4b5
0040a4b5loc_40a4b5:
0040a4b5add edi, 1
0040a4b8sub r14l, 1
0040a4bctest r14l, r14l
0040a4bfjne 0x40a42a
0040a4c5
0040a4c5loc_40a4c5:
0040a4c5nop
0040a4c6xor ebx, ebx
0040a4c8
0040a4c8loc_40a4c8:
0040a4c8mov rax, rbx
0040a4cbadd rsp, 64
0040a4cfpop rbx
0040a4d0pop rsi
0040a4d1pop rdi
0040a4d2pop r13
0040a4d4pop r14
0040a4d6ret
0040a3f0
0040a3f0fn_40a3f0:
0040a3f0push r14
0040a3f2push r13
0040a3f4push rdi
0040a3f5push rsi
0040a3f6push rbx
0040a3f7sub rsp, 64
0040a3fbmov [rsp+40], rcx
0040a400mov [rsp+48], rdx
0040a405mov [rsp+56], r8
0040a40axor eax, eax
0040a40cmov rcx, [rsp+56]
0040a411mov r14l, [rcx]
0040a414sub r14l, 1
0040a418mov edi, eax
0040a41acmp edi, r14l
0040a41djg 0x40a4c5
0040a423sub r14l, eax
0040a426add r14l, 1
0040a42a
0040a42aloc_40a42a:
0040a42amovsxd rax, edi
0040a42dmov rcx, [rsp+56]
0040a432lea rsi, [rcx+8*rax+4]
0040a437mov rbx, rsi
0040a43acmp [rsi], 0
0040a43dje 0x40a4c8
0040a443mov rax, [rsp+48]
0040a448test rax, rax
0040a44bje 0x40a4b5
0040a44dmov r13, [rsp+48]
0040a452
0040a452loc_40a452:
0040a452mov rax, [rsp+40]
0040a457mov rax, [rax+8]
0040a45bmov ecx, [rsi]
0040a45dmov rax, [rax+rcx]
0040a461cmp rax, r13
0040a464je 0x40a4c8
0040a466mov rcx, r13
0040a469mov edx, [rax-128]
0040a46ccmp edx, [rcx-128]
0040a46fjne 0x40a4a5
0040a471mov rax, [rax-136]
0040a478mov rcx, [rcx-136]
0040a47fmovzx rdx, [rax]
0040a483cmp dl, [rcx]
0040a485jne 0x40a4a5
0040a487lea rdx, [rax+1]
0040a48blea r8, [rcx+1]
0040a48fmovzx rax, [rax]
0040a493mov rcx, rdx
0040a496mov rdx, r8
0040a499mov r8, rax
0040a49ccall fn_40c6b0
0040a4a1test eax, eax
0040a4a3je 0x40a4c8
0040a4a5
0040a4a5loc_40a4a5:
0040a4a5mov r13, [r13-120]
0040a4a9test r13, r13
0040a4acje 0x40a4b4
0040a4aemov r13, [r13]
0040a4b2jmp 0x40a452
0040a4b4
0040a4b4loc_40a4b4:
0040a4b4nop
0040a4b5
0040a4b5loc_40a4b5:
0040a4b5add edi, 1
0040a4b8sub r14l, 1
0040a4bctest r14l, r14l
0040a4bfjne 0x40a42a
0040a4c5
0040a4c5loc_40a4c5:
0040a4c5nop
0040a4c6xor ebx, ebx
0040a4c8
0040a4c8loc_40a4c8:
0040a4c8mov rax, rbx
0040a4cbadd rsp, 64
0040a4cfpop rbx
0040a4d0pop rsi
0040a4d1pop rdi
0040a4d2pop r13
0040a4d4pop r14
0040a4d6ret
0040a3f0
0040a4d7
0040a4d7 // align 0x10
0040a4d7 // align 0x10
0040a4e0
0040a4e0fn_40a4e0:
0040a4e0push rbp
0040a4e1push rbx
0040a4e2sub rsp, 296
0040a4e9mov rbp, rsp
0040a4ecmov [rbp+56], rbp
0040a4f0mov [rbp+320], rcx
0040a4f7mov [rbp+328], rdx
0040a4femov [rbp+336], r8
0040a505mov [rbp+344], r9
0040a50cmov [rbp+244], 1
0040a516mov rax, [rbp+344]
0040a51dmov rcx, [rax+56]
0040a521mov [rbp+144], rcx
0040a528mov rcx, [rax+8]
0040a52cmov [rbp+232], rcx
0040a533mov rcx, [rax]
0040a536sub rcx, [rbp+232]
0040a53dmov [rbp+224], rcx
0040a544mov rcx, [rbp+320]
0040a54bmov ecx, [rcx+4]
0040a54etest ecx, 102
0040a554jne 0x40a8da
0040a55axor eax, eax
0040a55cmov rcx, [rbp+144]
0040a563mov ebx, [rcx]
0040a565sub ebx, 1
0040a568mov [rbp+204], eax
0040a56ecmp [rbp+204], ebx
0040a574jg 0x40a8d4
0040a57asub ebx, eax
0040a57cadd ebx, 1
0040a57f
0040a57floc_40a57f:
0040a57fmov rax, [rbp+144]
0040a586movsxd rcx, [rbp+204]
0040a58dadd rcx, rcx
0040a590lea rax, [rax+8*rcx+4]
0040a595mov [rbp+256], rax
0040a59cmov rax, [rbp+256]
0040a5a3mov eax, [rax]
0040a5a5cmp [rbp+224], rax
0040a5acjb 0x40a8c2
0040a5b2mov rax, [rbp+256]
0040a5b9mov eax, [rax+4]
0040a5bccmp [rbp+224], rax
0040a5c3jae 0x40a8c2
0040a5c9mov rax, [rbp+256]
0040a5d0cmp [rax+8], 0
0040a5d4je 0x40a8c2
0040a5dacall fn_4085e0
0040a5dfmov rax, [rbp+256]
0040a5e6mov eax, [rax+8]
0040a5e9cmp eax, 2
0040a5ecjbe 0x40a6b1
0040a5f2mov rax, [rbp+320]
0040a5f9cmp [rax], 0xeedfade
0040a5ffjne 0x40a618
0040a601mov rax, [rbp+320]
0040a608mov rax, [rax+40]
0040a60cmov rax, [rax]
0040a60fmov [rbp+176], rax
0040a616jmp 0x40a648
0040a618
0040a618loc_40a618:
0040a618cmp [rip+0x5aa00], 0
0040a620je 0x40a8c2
0040a626mov rcx, [rbp+320]
0040a62dcall [rip+0x5a9ed]
0040a633mov [rbp+176], rax
0040a63acmp [rbp+176], 0
0040a642je 0x40a8c2
0040a648
0040a648loc_40a648:
0040a648mov rax, [rbp+232]
0040a64fmov rcx, [rbp+256]
0040a656mov ecx, [rcx+8]
0040a659lea rax, [rax+rcx]
0040a65dmov [rbp+152], rax
0040a664mov rcx, [rbp+344]
0040a66bmov rdx, [rbp+176]
0040a672mov r8, [rbp+152]
0040a679call fn_40a3f0
0040a67emov [rbp+160], rax
0040a685cmp [rbp+160], 0
0040a68dje 0x40a8c2
0040a693mov rax, [rbp+232]
0040a69amov rcx, [rbp+160]
0040a6a1mov ecx, [rcx+4]
0040a6a4lea rax, [rax+rcx]
0040a6a8mov [rbp+136], rax
0040a6afjmp 0x40a6f0
0040a6b1
0040a6b1loc_40a6b1:
0040a6b1cmp eax, 1
0040a6b4jne 0x40a6d4
0040a6b6mov rax, [rbp+232]
0040a6bdmov rcx, [rbp+256]
0040a6c4mov ecx, [rcx+4]
0040a6c7lea rax, [rax+rcx]
0040a6cbmov [rbp+136], rax
0040a6d2jmp 0x40a6f0
0040a6d4
0040a6d4loc_40a6d4:
0040a6d4mov rax, [rbp+232]
0040a6dbmov rcx, [rbp+256]
0040a6e2mov ecx, [rcx+12]
0040a6e5lea rax, [rax+rcx]
0040a6e9mov [rbp+136], rax
0040a6f0
0040a6f0loc_40a6f0:
0040a6f0mov rax, [rbp+320]
0040a6f7cmp [rax], 0xeedfade
0040a6fdjne 0x40a72c
0040a6ffmov rax, [rbp+320]
0040a706mov rax, [rax+40]
0040a70amov [rbp+184], rax
0040a711mov rax, [rbp+320]
0040a718mov rax, [rax+32]
0040a71cmov [rbp+168], rax
0040a723mov [rbp+131], 1
0040a72ajmp 0x40a7a3
0040a72c
0040a72cloc_40a72c:
0040a72ccmp [rip+0x5a8f4], 0
0040a734je 0x40a8c2
0040a73amov rcx, [rbp+320]
0040a741call [rip+0x5a8e1]
0040a747mov [rbp+184], rax
0040a74ecmp [rbp+184], 0
0040a756je 0x40a8c2
0040a75cmov rax, [rbp+320]
0040a763mov rax, [rax+16]
0040a767mov [rbp+168], rax
0040a76emov [rbp+131], 1
0040a775mov rax, [rbp+320]
0040a77cmov eax, [rax]
0040a77eand eax, -2
0040a781cmp eax, 0xffffffffe36c6700
0040a787jne 0x40a7a3
0040a789mov rcx, [rbp+184]
0040a790mov rdx, [rbp+336]
0040a797call fn_40a2a0
0040a79cmov [rbp+131], 0
0040a7a3
0040a7a3loc_40a7a3:
0040a7a3movzx rax, [rip+0x4e88e]
0040a7abcmp al, [rbp+131]
0040a7b1jbe 0x40a7f7
0040a7b3cmp [rip+0x4e87e], 0
0040a7baja 0x40a7f7
0040a7bcmov rax, [rbp+320]
0040a7c3mov [rbp+208], rax
0040a7camov rax, [rbp+336]
0040a7d1mov [rbp+216], rax
0040a7d8lea rcx, [rbp+208]
0040a7dfcall UnhandledExceptionFilter
0040a7e4mov [rbp+132], eax
0040a7eacmp [rbp+132], 0
0040a7f1je 0x40a8c2
0040a7f7
0040a7f7loc_40a7f7:
0040a7f7mov rax, [rbp+320]
0040a7felea rax, [rax+4]
0040a802or [rax], 2
0040a805mov rax, [rbp+256]
0040a80ccmp [rax+8], 2
0040a810jb 0x40a820
0040a812call fn_4057e0
0040a817mov [rbp+272], rax
0040a81ejmp 0x40a82b
0040a820
0040a820loc_40a820:
0040a820lea rax, [rbp+96]
0040a824mov [rbp+272], rax
0040a82b
0040a82bloc_40a82b:
0040a82bmov rax, [rbp+272]
0040a832mov rcx, [rbp+168]
0040a839mov [rax+8], rcx
0040a83dmov rax, [rbp+272]
0040a844mov rcx, [rbp+184]
0040a84bmov [rax+16], rcx
0040a84fmov rax, [rbp+272]
0040a856mov [rbp+80], rax
0040a85acall fn_414a40
0040a85flea rcx, [0x208]
0040a867lea rax, [rax+rcx]
0040a86bmov [rbp+72], rax
0040a86fmov rax, [rbp+80]
0040a873mov rcx, [rbp+72]
0040a877mov rcx, [rcx]
0040a87amov [rax], rcx
0040a87dmov rax, [rbp+72]
0040a881mov rcx, [rbp+80]
0040a885mov [rax], rcx
0040a888mov rax, [rbp+344]
0040a88fmov rcx, [rbp+328]
0040a896mov rdx, [rbp+136]
0040a89dmov r8, [rbp+320]
0040a8a4mov r9, [rbp+184]
0040a8abmov r10, [rax+40]
0040a8afmov [rsp+32], r10
0040a8b4mov rax, [rax+64]
0040a8b8mov [rsp+40], rax
0040a8bdcall RtlUnwindEx
0040a8c2
0040a8c2loc_40a8c2:
0040a8c2add [rbp+204], 1
0040a8c9sub ebx, 1
0040a8cctest ebx, ebx
0040a8cejne 0x40a57f
0040a8d4
0040a8d4loc_40a8d4:
0040a8d4nop
0040a8d5jmp 0x40adbd
0040a8da
0040a8daloc_40a8da:
0040a8damov rax, [rax+32]
0040a8desub rax, [rbp+232]
0040a8e5mov [rbp+192], rax
0040a8ecxor eax, eax
0040a8eemov rcx, [rbp+144]
0040a8f5mov ecx, [rcx]
0040a8f7sub ecx, 1
0040a8famov [rbp+52], ecx
0040a8fdmov [rbp+204], eax
0040a903mov ecx, [rbp+52]
0040a906cmp [rbp+204], ecx
0040a90cjg 0x40adbc
0040a912mov ecx, [rbp+52]
0040a915sub ecx, eax
0040a917add ecx, 1
0040a91amov [rbp+52], ecx
0040a91d
0040a91dloc_40a91d:
0040a91dmov rax, [rbp+144]
0040a924movsxd rcx, [rbp+204]
0040a92badd rcx, rcx
0040a92elea rax, [rax+8*rcx+4]
0040a933mov [rbp+256], rax
0040a93amov rax, [rbp+256]
0040a941mov eax, [rax]
0040a943cmp [rbp+224], rax
0040a94ajb 0x40ada1
0040a950mov rax, [rbp+256]
0040a957mov eax, [rax+4]
0040a95acmp [rbp+224], rax
0040a961jae 0x40ada1
0040a967mov rax, [rbp+256]
0040a96emov eax, [rax]
0040a970cmp [rbp+192], rax
0040a977jb 0x40a9a2
0040a979mov rax, [rbp+256]
0040a980mov eax, [rax+4]
0040a983cmp [rbp+192], rax
0040a98ajae 0x40a9a2
0040a98cmov rax, [rbp+320]
0040a993mov eax, [rax+4]
0040a996test eax, 32
0040a99cjne 0x40adbd
0040a9a2
0040a9a2loc_40a9a2:
0040a9a2mov rax, [rbp+256]
0040a9a9mov eax, [rax+8]
0040a9acmov [rbp+48], eax
0040a9afcmp eax, 2
0040a9b2jae 0x40ac52
0040a9b8call fn_414a40
0040a9bdmov rax, [rax+520]
0040a9c4mov [rbp+264], rax
0040a9cbnop
0040a9ccmov eax, [rbp+48]
0040a9cfsub eax, 1
0040a9d2cmp eax, -1
0040a9d5je 0x40a9e4
0040a9d7test eax, eax
0040a9d9jne 0x40ab5e
0040a9dfjmp 0x40aa7c
0040a9e4
0040a9e4loc_40a9e4:
0040a9e4mov rbx, [rbp+344]
0040a9ebmov rax, [rbp+232]
0040a9f2mov rcx, [rbp+256]
0040a9f9mov ecx, [rcx+4]
0040a9fclea rax, [rax+rcx]
0040aa00mov [rbx], rax
0040aa03mov rax, [rbp+232]
0040aa0amov rcx, [rbp+256]
0040aa11mov ecx, [rcx+12]
0040aa14lea rax, [rax+rcx]
0040aa18mov [rbp+136], rax
0040aa1fmov rcx, [rbp+136]
0040aa26call fn_40a350
0040aa2bmov rax, [rbp+320]
0040aa32mov [rbp+208], rax
0040aa39mov rax, [rbp+336]
0040aa40mov [rbp+216], rax
0040aa47lea rcx, [rbp+208]
0040aa4emov rdx, [rbp+328]
0040aa55call [rbp+136]
0040aa5bcall fn_406080
0040aa60mov rcx, [rbx+40]
0040aa64mov [rcx+52], eax
0040aa67call fn_406020
0040aa6cmov rcx, [rbx+40]
0040aa70mov [rcx+256], ax
0040aa77jmp 0x40ab5e
0040aa7c
0040aa7cloc_40aa7c:
0040aa7cmov rax, [rbp+232]
0040aa83mov rcx, [rbp+256]
0040aa8amov ecx, [rcx+12]
0040aa8dlea rax, [rax+rcx]
0040aa91mov [rbp+136], rax
0040aa98mov rax, [rbp+344]
0040aa9fmov rcx, [rbp+232]
0040aaa6mov rdx, [rbp+256]
0040aaadmov edx, [rdx+4]
0040aab0lea rcx, [rcx+rdx]
0040aab4mov [rax], rcx
0040aab7mov rax, [rbp+320]
0040aabemov [rbp+208], rax
0040aac5mov rax, [rbp+336]
0040aaccmov [rbp+216], rax
0040aad3mov rax, [rbp+264]
0040aadamov rax, [rax+16]
0040aademov [rbp+184], rax
0040aae5mov rax, [rbp+264]
0040aaecmov rax, [rax+8]
0040aaf0mov [rbp+168], rax
0040aaf7lea rcx, [rbp+208]
0040aafemov rdx, [rbp+328]
0040ab05mov r8, [rbp+184]
0040ab0cmov r9, [rbp+168]
0040ab13call [rbp+136]
0040ab19mov [rbp+136], rax
0040ab20mov rax, [rbp+344]
0040ab27mov rcx, [rbp+136]
0040ab2emov [rax], rcx
0040ab31mov rax, [rbp+264]
0040ab38cmp [rax+16], 0
0040ab3dje 0x40ab5e
0040ab3fmov rax, [rbp+264]
0040ab46mov rcx, [rax+16]
0040ab4acall TObject.Free
0040ab4fmov rax, [rbp+264]
0040ab56mov [rax+16], 0
0040ab5e
0040ab5eloc_40ab5e:
0040ab5enop
0040ab5fmov [rbp+280], 0
0040ab6acall fn_414a40
0040ab6fmov rax, [rax+520]
0040ab76mov [rbp+272], rax
0040ab7dcmp [rbp+272], 0
0040ab85je 0x40ac4c
0040ab8b
0040ab8bloc_40ab8b:
0040ab8bmov rax, [rbp+272]
0040ab92cmp rax, [rbp+264]
0040ab99jne 0x40ac1f
0040ab9fcmp [rbp+280], 0
0040aba7jne 0x40abba
0040aba9mov rax, [rbp+256]
0040abb0cmp [rax+8], 1
0040abb4jne 0x40ac4c
0040abba
0040abbaloc_40abba:
0040abbacmp [rbp+280], 0
0040abc2jne 0x40abd6
0040abc4call fn_414a40
0040abc9mov [rax+520], 0
0040abd4jmp 0x40abea
0040abd6
0040abd6loc_40abd6:
0040abd6mov rax, [rbp+280]
0040abddmov rcx, [rbp+272]
0040abe4mov rcx, [rcx]
0040abe7mov [rax], rcx
0040abea
0040abealoc_40abea:
0040abeamov rax, [rbp+272]
0040abf1mov rax, [rax+16]
0040abf5test rax, rax
0040abf8je 0x40ac11
0040abfamov rcx, rax
0040abfdcall TObject.Free
0040ac02mov rax, [rbp+272]
0040ac09mov [rax+16], 0
0040ac11
0040ac11loc_40ac11:
0040ac11mov rcx, [rbp+272]
0040ac18call fn_405890
0040ac1djmp 0x40ac4c
0040ac1f
0040ac1floc_40ac1f:
0040ac1fmov rax, [rbp+272]
0040ac26mov [rbp+280], rax
0040ac2dmov rax, [rbp+272]
0040ac34mov rax, [rax]
0040ac37mov [rbp+272], rax
0040ac3ecmp [rbp+272], 0
0040ac46jne 0x40ab8b
0040ac4c
0040ac4cloc_40ac4c:
0040ac4cnop
0040ac4djmp 0x40ada1
0040ac52
0040ac52loc_40ac52:
0040ac52mov rax, [rbp+320]
0040ac59mov eax, [rax+4]
0040ac5ctest eax, 32
0040ac62je 0x40ada1
0040ac68mov [rbp+136], 0
0040ac73mov eax, [rbp+48]
0040ac76cmp eax, 2
0040ac79jne 0x40ac9c
0040ac7bmov rax, [rbp+232]
0040ac82mov rcx, [rbp+256]
0040ac89mov ecx, [rcx+12]
0040ac8clea rax, [rax+rcx]
0040ac90mov [rbp+136], rax
0040ac97jmp 0x40ad5a
0040ac9c
0040ac9cloc_40ac9c:
0040ac9cmov rax, [rbp+320]
0040aca3cmp [rax], 0xeedfade
0040aca9jne 0x40acc2
0040acabmov rax, [rbp+320]
0040acb2mov rax, [rax+40]
0040acb6mov rax, [rax]
0040acb9mov [rbp+176], rax
0040acc0jmp 0x40aced
0040acc2
0040acc2loc_40acc2:
0040acc2cmp [rip+0x5a356], 0
0040accaje 0x40ace2
0040acccmov rcx, [rbp+320]
0040acd3call [rip+0x5a347]
0040acd9mov [rbp+176], rax
0040ace0jmp 0x40aced
0040ace2
0040ace2loc_40ace2:
0040ace2mov [rbp+176], 0
0040aced
0040acedloc_40aced:
0040acedcmp [rbp+176], 0
0040acf5je 0x40ad5a
0040acf7mov rax, [rbp+232]
0040acfemov rcx, [rbp+256]
0040ad05mov ecx, [rcx+8]
0040ad08lea rax, [rax+rcx]
0040ad0cmov [rbp+152], rax
0040ad13mov rcx, [rbp+344]
0040ad1amov rdx, [rbp+176]
0040ad21mov r8, [rbp+152]
0040ad28call fn_40a3f0
0040ad2dmov [rbp+160], rax
0040ad34cmp [rbp+160], 0
0040ad3cje 0x40ad5a
0040ad3emov rax, [rbp+232]
0040ad45mov rcx, [rbp+160]
0040ad4cmov ecx, [rcx+4]
0040ad4flea rax, [rax+rcx]
0040ad53mov [rbp+136], rax
0040ad5a
0040ad5aloc_40ad5a:
0040ad5acmp [rbp+136], 0
0040ad62je 0x40ada1
0040ad64mov rax, [rbp+344]
0040ad6bmov rcx, [rbp+136]
0040ad72cmp rcx, [rax+32]
0040ad76jne 0x40ada1
0040ad78mov rax, [rbp+256]
0040ad7fcmp [rax+8], 2
0040ad83jne 0x40ad93
0040ad85mov rcx, [rbp+136]
0040ad8ccall fn_40a330
0040ad91jmp 0x40adbc
0040ad93
0040ad93loc_40ad93:
0040ad93mov rcx, [rbp+136]
0040ad9acall fn_40a310
0040ad9fjmp 0x40adbc
0040ada1
0040ada1loc_40ada1:
0040ada1add [rbp+204], 1
0040ada8mov eax, [rbp+52]
0040adabsub eax, 1
0040adaemov [rbp+52], eax
0040adb1mov eax, [rbp+52]
0040adb4test eax, eax
0040adb6jne 0x40a91d
0040adbc
0040adbcloc_40adbc:
0040adbcnop
0040adbd
0040adbdloc_40adbd:
0040adbdmov eax, [rbp+244]
0040adc3lea rsp, [rbp+296]
0040adcapop rbx
0040adcbpop rbp
0040adccret
0040a4e0
0040a4e0fn_40a4e0:
0040a4e0push rbp
0040a4e1push rbx
0040a4e2sub rsp, 296
0040a4e9mov rbp, rsp
0040a4ecmov [rbp+56], rbp
0040a4f0mov [rbp+320], rcx
0040a4f7mov [rbp+328], rdx
0040a4femov [rbp+336], r8
0040a505mov [rbp+344], r9
0040a50cmov [rbp+244], 1
0040a516mov rax, [rbp+344]
0040a51dmov rcx, [rax+56]
0040a521mov [rbp+144], rcx
0040a528mov rcx, [rax+8]
0040a52cmov [rbp+232], rcx
0040a533mov rcx, [rax]
0040a536sub rcx, [rbp+232]
0040a53dmov [rbp+224], rcx
0040a544mov rcx, [rbp+320]
0040a54bmov ecx, [rcx+4]
0040a54etest ecx, 102
0040a554jne 0x40a8da
0040a55axor eax, eax
0040a55cmov rcx, [rbp+144]
0040a563mov ebx, [rcx]
0040a565sub ebx, 1
0040a568mov [rbp+204], eax
0040a56ecmp [rbp+204], ebx
0040a574jg 0x40a8d4
0040a57asub ebx, eax
0040a57cadd ebx, 1
0040a57f
0040a57floc_40a57f:
0040a57fmov rax, [rbp+144]
0040a586movsxd rcx, [rbp+204]
0040a58dadd rcx, rcx
0040a590lea rax, [rax+8*rcx+4]
0040a595mov [rbp+256], rax
0040a59cmov rax, [rbp+256]
0040a5a3mov eax, [rax]
0040a5a5cmp [rbp+224], rax
0040a5acjb 0x40a8c2
0040a5b2mov rax, [rbp+256]
0040a5b9mov eax, [rax+4]
0040a5bccmp [rbp+224], rax
0040a5c3jae 0x40a8c2
0040a5c9mov rax, [rbp+256]
0040a5d0cmp [rax+8], 0
0040a5d4je 0x40a8c2
0040a5dacall fn_4085e0
0040a5dfmov rax, [rbp+256]
0040a5e6mov eax, [rax+8]
0040a5e9cmp eax, 2
0040a5ecjbe 0x40a6b1
0040a5f2mov rax, [rbp+320]
0040a5f9cmp [rax], 0xeedfade
0040a5ffjne 0x40a618
0040a601mov rax, [rbp+320]
0040a608mov rax, [rax+40]
0040a60cmov rax, [rax]
0040a60fmov [rbp+176], rax
0040a616jmp 0x40a648
0040a618
0040a618loc_40a618:
0040a618cmp [rip+0x5aa00], 0
0040a620je 0x40a8c2
0040a626mov rcx, [rbp+320]
0040a62dcall [rip+0x5a9ed]
0040a633mov [rbp+176], rax
0040a63acmp [rbp+176], 0
0040a642je 0x40a8c2
0040a648
0040a648loc_40a648:
0040a648mov rax, [rbp+232]
0040a64fmov rcx, [rbp+256]
0040a656mov ecx, [rcx+8]
0040a659lea rax, [rax+rcx]
0040a65dmov [rbp+152], rax
0040a664mov rcx, [rbp+344]
0040a66bmov rdx, [rbp+176]
0040a672mov r8, [rbp+152]
0040a679call fn_40a3f0
0040a67emov [rbp+160], rax
0040a685cmp [rbp+160], 0
0040a68dje 0x40a8c2
0040a693mov rax, [rbp+232]
0040a69amov rcx, [rbp+160]
0040a6a1mov ecx, [rcx+4]
0040a6a4lea rax, [rax+rcx]
0040a6a8mov [rbp+136], rax
0040a6afjmp 0x40a6f0
0040a6b1
0040a6b1loc_40a6b1:
0040a6b1cmp eax, 1
0040a6b4jne 0x40a6d4
0040a6b6mov rax, [rbp+232]
0040a6bdmov rcx, [rbp+256]
0040a6c4mov ecx, [rcx+4]
0040a6c7lea rax, [rax+rcx]
0040a6cbmov [rbp+136], rax
0040a6d2jmp 0x40a6f0
0040a6d4
0040a6d4loc_40a6d4:
0040a6d4mov rax, [rbp+232]
0040a6dbmov rcx, [rbp+256]
0040a6e2mov ecx, [rcx+12]
0040a6e5lea rax, [rax+rcx]
0040a6e9mov [rbp+136], rax
0040a6f0
0040a6f0loc_40a6f0:
0040a6f0mov rax, [rbp+320]
0040a6f7cmp [rax], 0xeedfade
0040a6fdjne 0x40a72c
0040a6ffmov rax, [rbp+320]
0040a706mov rax, [rax+40]
0040a70amov [rbp+184], rax
0040a711mov rax, [rbp+320]
0040a718mov rax, [rax+32]
0040a71cmov [rbp+168], rax
0040a723mov [rbp+131], 1
0040a72ajmp 0x40a7a3
0040a72c
0040a72cloc_40a72c:
0040a72ccmp [rip+0x5a8f4], 0
0040a734je 0x40a8c2
0040a73amov rcx, [rbp+320]
0040a741call [rip+0x5a8e1]
0040a747mov [rbp+184], rax
0040a74ecmp [rbp+184], 0
0040a756je 0x40a8c2
0040a75cmov rax, [rbp+320]
0040a763mov rax, [rax+16]
0040a767mov [rbp+168], rax
0040a76emov [rbp+131], 1
0040a775mov rax, [rbp+320]
0040a77cmov eax, [rax]
0040a77eand eax, -2
0040a781cmp eax, 0xffffffffe36c6700
0040a787jne 0x40a7a3
0040a789mov rcx, [rbp+184]
0040a790mov rdx, [rbp+336]
0040a797call fn_40a2a0
0040a79cmov [rbp+131], 0
0040a7a3
0040a7a3loc_40a7a3:
0040a7a3movzx rax, [rip+0x4e88e]
0040a7abcmp al, [rbp+131]
0040a7b1jbe 0x40a7f7
0040a7b3cmp [rip+0x4e87e], 0
0040a7baja 0x40a7f7
0040a7bcmov rax, [rbp+320]
0040a7c3mov [rbp+208], rax
0040a7camov rax, [rbp+336]
0040a7d1mov [rbp+216], rax
0040a7d8lea rcx, [rbp+208]
0040a7dfcall UnhandledExceptionFilter
0040a7e4mov [rbp+132], eax
0040a7eacmp [rbp+132], 0
0040a7f1je 0x40a8c2
0040a7f7
0040a7f7loc_40a7f7:
0040a7f7mov rax, [rbp+320]
0040a7felea rax, [rax+4]
0040a802or [rax], 2
0040a805mov rax, [rbp+256]
0040a80ccmp [rax+8], 2
0040a810jb 0x40a820
0040a812call fn_4057e0
0040a817mov [rbp+272], rax
0040a81ejmp 0x40a82b
0040a820
0040a820loc_40a820:
0040a820lea rax, [rbp+96]
0040a824mov [rbp+272], rax
0040a82b
0040a82bloc_40a82b:
0040a82bmov rax, [rbp+272]
0040a832mov rcx, [rbp+168]
0040a839mov [rax+8], rcx
0040a83dmov rax, [rbp+272]
0040a844mov rcx, [rbp+184]
0040a84bmov [rax+16], rcx
0040a84fmov rax, [rbp+272]
0040a856mov [rbp+80], rax
0040a85acall fn_414a40
0040a85flea rcx, [0x208]
0040a867lea rax, [rax+rcx]
0040a86bmov [rbp+72], rax
0040a86fmov rax, [rbp+80]
0040a873mov rcx, [rbp+72]
0040a877mov rcx, [rcx]
0040a87amov [rax], rcx
0040a87dmov rax, [rbp+72]
0040a881mov rcx, [rbp+80]
0040a885mov [rax], rcx
0040a888mov rax, [rbp+344]
0040a88fmov rcx, [rbp+328]
0040a896mov rdx, [rbp+136]
0040a89dmov r8, [rbp+320]
0040a8a4mov r9, [rbp+184]
0040a8abmov r10, [rax+40]
0040a8afmov [rsp+32], r10
0040a8b4mov rax, [rax+64]
0040a8b8mov [rsp+40], rax
0040a8bdcall RtlUnwindEx
0040a8c2
0040a8c2loc_40a8c2:
0040a8c2add [rbp+204], 1
0040a8c9sub ebx, 1
0040a8cctest ebx, ebx
0040a8cejne 0x40a57f
0040a8d4
0040a8d4loc_40a8d4:
0040a8d4nop
0040a8d5jmp 0x40adbd
0040a8da
0040a8daloc_40a8da:
0040a8damov rax, [rax+32]
0040a8desub rax, [rbp+232]
0040a8e5mov [rbp+192], rax
0040a8ecxor eax, eax
0040a8eemov rcx, [rbp+144]
0040a8f5mov ecx, [rcx]
0040a8f7sub ecx, 1
0040a8famov [rbp+52], ecx
0040a8fdmov [rbp+204], eax
0040a903mov ecx, [rbp+52]
0040a906cmp [rbp+204], ecx
0040a90cjg 0x40adbc
0040a912mov ecx, [rbp+52]
0040a915sub ecx, eax
0040a917add ecx, 1
0040a91amov [rbp+52], ecx
0040a91d
0040a91dloc_40a91d:
0040a91dmov rax, [rbp+144]
0040a924movsxd rcx, [rbp+204]
0040a92badd rcx, rcx
0040a92elea rax, [rax+8*rcx+4]
0040a933mov [rbp+256], rax
0040a93amov rax, [rbp+256]
0040a941mov eax, [rax]
0040a943cmp [rbp+224], rax
0040a94ajb 0x40ada1
0040a950mov rax, [rbp+256]
0040a957mov eax, [rax+4]
0040a95acmp [rbp+224], rax
0040a961jae 0x40ada1
0040a967mov rax, [rbp+256]
0040a96emov eax, [rax]
0040a970cmp [rbp+192], rax
0040a977jb 0x40a9a2
0040a979mov rax, [rbp+256]
0040a980mov eax, [rax+4]
0040a983cmp [rbp+192], rax
0040a98ajae 0x40a9a2
0040a98cmov rax, [rbp+320]
0040a993mov eax, [rax+4]
0040a996test eax, 32
0040a99cjne 0x40adbd
0040a9a2
0040a9a2loc_40a9a2:
0040a9a2mov rax, [rbp+256]
0040a9a9mov eax, [rax+8]
0040a9acmov [rbp+48], eax
0040a9afcmp eax, 2
0040a9b2jae 0x40ac52
0040a9b8call fn_414a40
0040a9bdmov rax, [rax+520]
0040a9c4mov [rbp+264], rax
0040a9cbnop
0040a9ccmov eax, [rbp+48]
0040a9cfsub eax, 1
0040a9d2cmp eax, -1
0040a9d5je 0x40a9e4
0040a9d7test eax, eax
0040a9d9jne 0x40ab5e
0040a9dfjmp 0x40aa7c
0040a9e4
0040a9e4loc_40a9e4:
0040a9e4mov rbx, [rbp+344]
0040a9ebmov rax, [rbp+232]
0040a9f2mov rcx, [rbp+256]
0040a9f9mov ecx, [rcx+4]
0040a9fclea rax, [rax+rcx]
0040aa00mov [rbx], rax
0040aa03mov rax, [rbp+232]
0040aa0amov rcx, [rbp+256]
0040aa11mov ecx, [rcx+12]
0040aa14lea rax, [rax+rcx]
0040aa18mov [rbp+136], rax
0040aa1fmov rcx, [rbp+136]
0040aa26call fn_40a350
0040aa2bmov rax, [rbp+320]
0040aa32mov [rbp+208], rax
0040aa39mov rax, [rbp+336]
0040aa40mov [rbp+216], rax
0040aa47lea rcx, [rbp+208]
0040aa4emov rdx, [rbp+328]
0040aa55call [rbp+136]
0040aa5bcall fn_406080
0040aa60mov rcx, [rbx+40]
0040aa64mov [rcx+52], eax
0040aa67call fn_406020
0040aa6cmov rcx, [rbx+40]
0040aa70mov [rcx+256], ax
0040aa77jmp 0x40ab5e
0040aa7c
0040aa7cloc_40aa7c:
0040aa7cmov rax, [rbp+232]
0040aa83mov rcx, [rbp+256]
0040aa8amov ecx, [rcx+12]
0040aa8dlea rax, [rax+rcx]
0040aa91mov [rbp+136], rax
0040aa98mov rax, [rbp+344]
0040aa9fmov rcx, [rbp+232]
0040aaa6mov rdx, [rbp+256]
0040aaadmov edx, [rdx+4]
0040aab0lea rcx, [rcx+rdx]
0040aab4mov [rax], rcx
0040aab7mov rax, [rbp+320]
0040aabemov [rbp+208], rax
0040aac5mov rax, [rbp+336]
0040aaccmov [rbp+216], rax
0040aad3mov rax, [rbp+264]
0040aadamov rax, [rax+16]
0040aademov [rbp+184], rax
0040aae5mov rax, [rbp+264]
0040aaecmov rax, [rax+8]
0040aaf0mov [rbp+168], rax
0040aaf7lea rcx, [rbp+208]
0040aafemov rdx, [rbp+328]
0040ab05mov r8, [rbp+184]
0040ab0cmov r9, [rbp+168]
0040ab13call [rbp+136]
0040ab19mov [rbp+136], rax
0040ab20mov rax, [rbp+344]
0040ab27mov rcx, [rbp+136]
0040ab2emov [rax], rcx
0040ab31mov rax, [rbp+264]
0040ab38cmp [rax+16], 0
0040ab3dje 0x40ab5e
0040ab3fmov rax, [rbp+264]
0040ab46mov rcx, [rax+16]
0040ab4acall TObject.Free
0040ab4fmov rax, [rbp+264]
0040ab56mov [rax+16], 0
0040ab5e
0040ab5eloc_40ab5e:
0040ab5enop
0040ab5fmov [rbp+280], 0
0040ab6acall fn_414a40
0040ab6fmov rax, [rax+520]
0040ab76mov [rbp+272], rax
0040ab7dcmp [rbp+272], 0
0040ab85je 0x40ac4c
0040ab8b
0040ab8bloc_40ab8b:
0040ab8bmov rax, [rbp+272]
0040ab92cmp rax, [rbp+264]
0040ab99jne 0x40ac1f
0040ab9fcmp [rbp+280], 0
0040aba7jne 0x40abba
0040aba9mov rax, [rbp+256]
0040abb0cmp [rax+8], 1
0040abb4jne 0x40ac4c
0040abba
0040abbaloc_40abba:
0040abbacmp [rbp+280], 0
0040abc2jne 0x40abd6
0040abc4call fn_414a40
0040abc9mov [rax+520], 0
0040abd4jmp 0x40abea
0040abd6
0040abd6loc_40abd6:
0040abd6mov rax, [rbp+280]
0040abddmov rcx, [rbp+272]
0040abe4mov rcx, [rcx]
0040abe7mov [rax], rcx
0040abea
0040abealoc_40abea:
0040abeamov rax, [rbp+272]
0040abf1mov rax, [rax+16]
0040abf5test rax, rax
0040abf8je 0x40ac11
0040abfamov rcx, rax
0040abfdcall TObject.Free
0040ac02mov rax, [rbp+272]
0040ac09mov [rax+16], 0
0040ac11
0040ac11loc_40ac11:
0040ac11mov rcx, [rbp+272]
0040ac18call fn_405890
0040ac1djmp 0x40ac4c
0040ac1f
0040ac1floc_40ac1f:
0040ac1fmov rax, [rbp+272]
0040ac26mov [rbp+280], rax
0040ac2dmov rax, [rbp+272]
0040ac34mov rax, [rax]
0040ac37mov [rbp+272], rax
0040ac3ecmp [rbp+272], 0
0040ac46jne 0x40ab8b
0040ac4c
0040ac4cloc_40ac4c:
0040ac4cnop
0040ac4djmp 0x40ada1
0040ac52
0040ac52loc_40ac52:
0040ac52mov rax, [rbp+320]
0040ac59mov eax, [rax+4]
0040ac5ctest eax, 32
0040ac62je 0x40ada1
0040ac68mov [rbp+136], 0
0040ac73mov eax, [rbp+48]
0040ac76cmp eax, 2
0040ac79jne 0x40ac9c
0040ac7bmov rax, [rbp+232]
0040ac82mov rcx, [rbp+256]
0040ac89mov ecx, [rcx+12]
0040ac8clea rax, [rax+rcx]
0040ac90mov [rbp+136], rax
0040ac97jmp 0x40ad5a
0040ac9c
0040ac9cloc_40ac9c:
0040ac9cmov rax, [rbp+320]
0040aca3cmp [rax], 0xeedfade
0040aca9jne 0x40acc2
0040acabmov rax, [rbp+320]
0040acb2mov rax, [rax+40]
0040acb6mov rax, [rax]
0040acb9mov [rbp+176], rax
0040acc0jmp 0x40aced
0040acc2
0040acc2loc_40acc2:
0040acc2cmp [rip+0x5a356], 0
0040accaje 0x40ace2
0040acccmov rcx, [rbp+320]
0040acd3call [rip+0x5a347]
0040acd9mov [rbp+176], rax
0040ace0jmp 0x40aced
0040ace2
0040ace2loc_40ace2:
0040ace2mov [rbp+176], 0
0040aced
0040acedloc_40aced:
0040acedcmp [rbp+176], 0
0040acf5je 0x40ad5a
0040acf7mov rax, [rbp+232]
0040acfemov rcx, [rbp+256]
0040ad05mov ecx, [rcx+8]
0040ad08lea rax, [rax+rcx]
0040ad0cmov [rbp+152], rax
0040ad13mov rcx, [rbp+344]
0040ad1amov rdx, [rbp+176]
0040ad21mov r8, [rbp+152]
0040ad28call fn_40a3f0
0040ad2dmov [rbp+160], rax
0040ad34cmp [rbp+160], 0
0040ad3cje 0x40ad5a
0040ad3emov rax, [rbp+232]
0040ad45mov rcx, [rbp+160]
0040ad4cmov ecx, [rcx+4]
0040ad4flea rax, [rax+rcx]
0040ad53mov [rbp+136], rax
0040ad5a
0040ad5aloc_40ad5a:
0040ad5acmp [rbp+136], 0
0040ad62je 0x40ada1
0040ad64mov rax, [rbp+344]
0040ad6bmov rcx, [rbp+136]
0040ad72cmp rcx, [rax+32]
0040ad76jne 0x40ada1
0040ad78mov rax, [rbp+256]
0040ad7fcmp [rax+8], 2
0040ad83jne 0x40ad93
0040ad85mov rcx, [rbp+136]
0040ad8ccall fn_40a330
0040ad91jmp 0x40adbc
0040ad93
0040ad93loc_40ad93:
0040ad93mov rcx, [rbp+136]
0040ad9acall fn_40a310
0040ad9fjmp 0x40adbc
0040ada1
0040ada1loc_40ada1:
0040ada1add [rbp+204], 1
0040ada8mov eax, [rbp+52]
0040adabsub eax, 1
0040adaemov [rbp+52], eax
0040adb1mov eax, [rbp+52]
0040adb4test eax, eax
0040adb6jne 0x40a91d
0040adbc
0040adbcloc_40adbc:
0040adbcnop
0040adbd
0040adbdloc_40adbd:
0040adbdmov eax, [rbp+244]
0040adc3lea rsp, [rbp+296]
0040adcapop rbx
0040adcbpop rbp
0040adccret
0040a4e0
0040adcd
0040adcd 48 8b c0 H..
0040adcd 48 8b c0 H..
0040add0
0040add0fn_40add0:
0040add0push rbp
0040add1push rbx
0040add2sub rsp, 40
0040add6mov rbp, rsp
0040add9mov rbx, rdx
0040addcmov [rbx+280], 0
0040ade7call fn_414a40
0040adecmov rax, [rax+520]
0040adf3mov [rbx+272], rax
0040adfacmp [rbx+272], 0
0040ae02je 0x40aec9
0040ae08
0040ae08loc_40ae08:
0040ae08mov rax, [rbx+272]
0040ae0fcmp rax, [rbx+264]
0040ae16jne 0x40ae9c
0040ae1ccmp [rbx+280], 0
0040ae24jne 0x40ae37
0040ae26mov rax, [rbx+256]
0040ae2dcmp [rax+8], 1
0040ae31jne 0x40aec9
0040ae37
0040ae37loc_40ae37:
0040ae37cmp [rbx+280], 0
0040ae3fjne 0x40ae53
0040ae41call fn_414a40
0040ae46mov [rax+520], 0
0040ae51jmp 0x40ae67
0040ae53
0040ae53loc_40ae53:
0040ae53mov rax, [rbx+280]
0040ae5amov rcx, [rbx+272]
0040ae61mov rcx, [rcx]
0040ae64mov [rax], rcx
0040ae67
0040ae67loc_40ae67:
0040ae67mov rax, [rbx+272]
0040ae6emov rax, [rax+16]
0040ae72test rax, rax
0040ae75je 0x40ae8e
0040ae77mov rcx, rax
0040ae7acall TObject.Free
0040ae7fmov rax, [rbx+272]
0040ae86mov [rax+16], 0
0040ae8e
0040ae8eloc_40ae8e:
0040ae8emov rcx, [rbx+272]
0040ae95call fn_405890
0040ae9ajmp 0x40aec9
0040ae9c
0040ae9cloc_40ae9c:
0040ae9cmov rax, [rbx+272]
0040aea3mov [rbx+280], rax
0040aeaamov rax, [rbx+272]
0040aeb1mov rax, [rax]
0040aeb4mov [rbx+272], rax
0040aebbcmp [rbx+272], 0
0040aec3jne 0x40ae08
0040aec9
0040aec9loc_40aec9:
0040aec9nop
0040aecalea rsp, [rbp+40]
0040aecepop rbx
0040aecfpop rbp
0040aed0ret
0040add0
0040add0fn_40add0:
0040add0push rbp
0040add1push rbx
0040add2sub rsp, 40
0040add6mov rbp, rsp
0040add9mov rbx, rdx
0040addcmov [rbx+280], 0
0040ade7call fn_414a40
0040adecmov rax, [rax+520]
0040adf3mov [rbx+272], rax
0040adfacmp [rbx+272], 0
0040ae02je 0x40aec9
0040ae08
0040ae08loc_40ae08:
0040ae08mov rax, [rbx+272]
0040ae0fcmp rax, [rbx+264]
0040ae16jne 0x40ae9c
0040ae1ccmp [rbx+280], 0
0040ae24jne 0x40ae37
0040ae26mov rax, [rbx+256]
0040ae2dcmp [rax+8], 1
0040ae31jne 0x40aec9
0040ae37
0040ae37loc_40ae37:
0040ae37cmp [rbx+280], 0
0040ae3fjne 0x40ae53
0040ae41call fn_414a40
0040ae46mov [rax+520], 0
0040ae51jmp 0x40ae67
0040ae53
0040ae53loc_40ae53:
0040ae53mov rax, [rbx+280]
0040ae5amov rcx, [rbx+272]
0040ae61mov rcx, [rcx]
0040ae64mov [rax], rcx
0040ae67
0040ae67loc_40ae67:
0040ae67mov rax, [rbx+272]
0040ae6emov rax, [rax+16]
0040ae72test rax, rax
0040ae75je 0x40ae8e
0040ae77mov rcx, rax
0040ae7acall TObject.Free
0040ae7fmov rax, [rbx+272]
0040ae86mov [rax+16], 0
0040ae8e
0040ae8eloc_40ae8e:
0040ae8emov rcx, [rbx+272]
0040ae95call fn_405890
0040ae9ajmp 0x40aec9
0040ae9c
0040ae9cloc_40ae9c:
0040ae9cmov rax, [rbx+272]
0040aea3mov [rbx+280], rax
0040aeaamov rax, [rbx+272]
0040aeb1mov rax, [rax]
0040aeb4mov [rbx+272], rax
0040aebbcmp [rbx+272], 0
0040aec3jne 0x40ae08
0040aec9
0040aec9loc_40aec9:
0040aec9nop
0040aecalea rsp, [rbp+40]
0040aecepop rbx
0040aecfpop rbp
0040aed0ret
0040add0
0040aed1
0040aed1 // align 0x10
0040aed1 // align 0x10
0040aee0
0040aee0fn_40aee0:
0040aee0push rbp
0040aee1push rsi
0040aee2push rbx
0040aee3sub rsp, 240
0040aeeamov rbp, rsp
0040aeedmov rbx, rcx
0040aef0mov rsi, rdx
0040aef3test rbx, rbx
0040aef6jne 0x40aeff
0040aef8mov cl, 216
0040aefacall fn_40ba30
0040aeff
0040aeffloc_40aeff:
0040aeffmov [rbp+184], rsi
0040af06mov [rbp+192], rbx
0040af0dmov [rbp+200], 0
0040af18mov [rbp+208], 0
0040af23mov [rbp+216], 0
0040af2emov [rbp+224], 0
0040af39mov [rbp+232], 0
0040af44cmp [rip+0x5a0f4], 0
0040af4cje 0x40afc6
0040af4emov [rbp+32], 0xeedfade
0040af55mov [rbp+36], 1
0040af5cmov [rbp+40], 0
0040af64mov [rbp+48], rsi
0040af68mov [rbp+56], 7
0040af6fmov rax, [rbp+184]
0040af76mov [rbp+64], rax
0040af7amov rax, [rbp+192]
0040af81mov [rbp+72], rax
0040af85mov rax, [rbp+200]
0040af8cmov [rbp+80], rax
0040af90mov rax, [rbp+208]
0040af97mov [rbp+88], rax
0040af9bmov rax, [rbp+216]
0040afa2mov [rbp+96], rax
0040afa6mov rax, [rbp+224]
0040afadmov [rbp+104], rax
0040afb1mov rax, [rbp+232]
0040afb8mov [rbp+112], rax
0040afbclea rcx, [rbp+32]
0040afc0call [rip+0x5a07a]
0040afc6
0040afc6loc_40afc6:
0040afc6mov ecx, 0xeedfade
0040afcbmov edx, 1
0040afd0mov r8l, 7
0040afd6lea r9, [rbp+184]
0040afddcall [rip+0x5a04d]
0040afe3lea rsp, [rbp+240]
0040afeapop rbx
0040afebpop rsi
0040afecpop rbp
0040afedret
0040aee0
0040aee0fn_40aee0:
0040aee0push rbp
0040aee1push rsi
0040aee2push rbx
0040aee3sub rsp, 240
0040aeeamov rbp, rsp
0040aeedmov rbx, rcx
0040aef0mov rsi, rdx
0040aef3test rbx, rbx
0040aef6jne 0x40aeff
0040aef8mov cl, 216
0040aefacall fn_40ba30
0040aeff
0040aeffloc_40aeff:
0040aeffmov [rbp+184], rsi
0040af06mov [rbp+192], rbx
0040af0dmov [rbp+200], 0
0040af18mov [rbp+208], 0
0040af23mov [rbp+216], 0
0040af2emov [rbp+224], 0
0040af39mov [rbp+232], 0
0040af44cmp [rip+0x5a0f4], 0
0040af4cje 0x40afc6
0040af4emov [rbp+32], 0xeedfade
0040af55mov [rbp+36], 1
0040af5cmov [rbp+40], 0
0040af64mov [rbp+48], rsi
0040af68mov [rbp+56], 7
0040af6fmov rax, [rbp+184]
0040af76mov [rbp+64], rax
0040af7amov rax, [rbp+192]
0040af81mov [rbp+72], rax
0040af85mov rax, [rbp+200]
0040af8cmov [rbp+80], rax
0040af90mov rax, [rbp+208]
0040af97mov [rbp+88], rax
0040af9bmov rax, [rbp+216]
0040afa2mov [rbp+96], rax
0040afa6mov rax, [rbp+224]
0040afadmov [rbp+104], rax
0040afb1mov rax, [rbp+232]
0040afb8mov [rbp+112], rax
0040afbclea rcx, [rbp+32]
0040afc0call [rip+0x5a07a]
0040afc6
0040afc6loc_40afc6:
0040afc6mov ecx, 0xeedfade
0040afcbmov edx, 1
0040afd0mov r8l, 7
0040afd6lea r9, [rbp+184]
0040afddcall [rip+0x5a04d]
0040afe3lea rsp, [rbp+240]
0040afeapop rbx
0040afebpop rsi
0040afecpop rbp
0040afedret
0040aee0
0040afee
0040afee // align 0x10
0040afee // align 0x10
0040aff0
0040aff0fn_40aff0:
0040aff0push rbp
0040aff1sub rsp, 32
0040aff5mov rbp, rsp
0040aff8mov rdx, [rbp+40]
0040affccall fn_40aee0
0040b001lea rsp, [rbp+32]
0040b005pop rbp
0040b006ret
0040aff0
0040aff0fn_40aff0:
0040aff0push rbp
0040aff1sub rsp, 32
0040aff5mov rbp, rsp
0040aff8mov rdx, [rbp+40]
0040affccall fn_40aee0
0040b001lea rsp, [rbp+32]
0040b005pop rbp
0040b006ret
0040aff0
0040b007
0040b007 // align 0x10
0040b007 // align 0x10
0040b010
0040b010fn_40b010:
0040b010push rsi
0040b011push rbx
0040b012sub rsp, 40
0040b016call fn_414a40
0040b01bmov rax, [rax+520]
0040b022mov rbx, [rax+16]
0040b026mov rsi, [rax+8]
0040b02amov [rax+16], 0
0040b032mov rcx, rbx
0040b035mov rdx, rsi
0040b038call fn_40a270
0040b03dmov rcx, rbx
0040b040mov rdx, rsi
0040b043call fn_40aee0
0040b048add rsp, 40
0040b04cpop rbx
0040b04dpop rsi
0040b04eret
0040b010
0040b010fn_40b010:
0040b010push rsi
0040b011push rbx
0040b012sub rsp, 40
0040b016call fn_414a40
0040b01bmov rax, [rax+520]
0040b022mov rbx, [rax+16]
0040b026mov rsi, [rax+8]
0040b02amov [rax+16], 0
0040b032mov rcx, rbx
0040b035mov rdx, rsi
0040b038call fn_40a270
0040b03dmov rcx, rbx
0040b040mov rdx, rsi
0040b043call fn_40aee0
0040b048add rsp, 40
0040b04cpop rbx
0040b04dpop rsi
0040b04eret
0040b010
0040b04f
0040b04f // align 0x10
0040b04f // align 0x10
0040b050
0040b050fn_40b050:
0040b050push r13
0040b052push rdi
0040b053push rsi
0040b054push rbx
0040b055sub rsp, 40
0040b059call fn_414a40
0040b05elea rcx, [0x208]
0040b066lea rsi, [rax+rcx]
0040b06amov rbx, [rsi]
0040b06dtest rbx, rbx
0040b070jne 0x40b079
0040b072mov cl, 216
0040b074call fn_40ba30
0040b079
0040b079loc_40b079:
0040b079mov rax, [rbx]
0040b07cmov [rsi], rax
0040b07fmov rsi, [rbx+16]
0040b083mov rdi, [rbx+8]
0040b087mov [rbx+16], 0
0040b08fmov rcx, rbx
0040b092call fn_405890
0040b097call fn_414a40
0040b09ccmp [rax+520], 0
0040b0a4je 0x40b116
0040b0a6test rsi, rsi
0040b0a9je 0x40b116
0040b0abcall fn_414a40
0040b0b0lea rcx, [0x208]
0040b0b8lea r13, [rax+rcx]
0040b0bcmov rbx, [r13]
0040b0c0test rbx, rbx
0040b0c3jne 0x40b0cc
0040b0c5mov cl, 216
0040b0c7call fn_40ba30
0040b0cc
0040b0ccloc_40b0cc:
0040b0ccmov rax, [rbx]
0040b0cfmov [r13], rax
0040b0d3mov rax, [rbx+16]
0040b0d7test rax, rax
0040b0daje 0x40b0e4
0040b0dcmov rcx, rax
0040b0dfcall TObject.Free
0040b0e4
0040b0e4loc_40b0e4:
0040b0e4mov rcx, rbx
0040b0e7call fn_405890
0040b0eccall fn_4057e0
0040b0f1mov [rax+8], rdi
0040b0f5mov [rax+16], rsi
0040b0f9mov rbx, rax
0040b0fccall fn_414a40
0040b101lea rcx, [0x208]
0040b109lea rax, [rax+rcx]
0040b10dmov rcx, [rax]
0040b110mov [rbx], rcx
0040b113mov [rax], rbx
0040b116
0040b116loc_40b116:
0040b116add rsp, 40
0040b11apop rbx
0040b11bpop rsi
0040b11cpop rdi
0040b11dpop r13
0040b11fret
0040b050
0040b050fn_40b050:
0040b050push r13
0040b052push rdi
0040b053push rsi
0040b054push rbx
0040b055sub rsp, 40
0040b059call fn_414a40
0040b05elea rcx, [0x208]
0040b066lea rsi, [rax+rcx]
0040b06amov rbx, [rsi]
0040b06dtest rbx, rbx
0040b070jne 0x40b079
0040b072mov cl, 216
0040b074call fn_40ba30
0040b079
0040b079loc_40b079:
0040b079mov rax, [rbx]
0040b07cmov [rsi], rax
0040b07fmov rsi, [rbx+16]
0040b083mov rdi, [rbx+8]
0040b087mov [rbx+16], 0
0040b08fmov rcx, rbx
0040b092call fn_405890
0040b097call fn_414a40
0040b09ccmp [rax+520], 0
0040b0a4je 0x40b116
0040b0a6test rsi, rsi
0040b0a9je 0x40b116
0040b0abcall fn_414a40
0040b0b0lea rcx, [0x208]
0040b0b8lea r13, [rax+rcx]
0040b0bcmov rbx, [r13]
0040b0c0test rbx, rbx
0040b0c3jne 0x40b0cc
0040b0c5mov cl, 216
0040b0c7call fn_40ba30
0040b0cc
0040b0ccloc_40b0cc:
0040b0ccmov rax, [rbx]
0040b0cfmov [r13], rax
0040b0d3mov rax, [rbx+16]
0040b0d7test rax, rax
0040b0daje 0x40b0e4
0040b0dcmov rcx, rax
0040b0dfcall TObject.Free
0040b0e4
0040b0e4loc_40b0e4:
0040b0e4mov rcx, rbx
0040b0e7call fn_405890
0040b0eccall fn_4057e0
0040b0f1mov [rax+8], rdi
0040b0f5mov [rax+16], rsi
0040b0f9mov rbx, rax
0040b0fccall fn_414a40
0040b101lea rcx, [0x208]
0040b109lea rax, [rax+rcx]
0040b10dmov rcx, [rax]
0040b110mov [rbx], rcx
0040b113mov [rax], rbx
0040b116
0040b116loc_40b116:
0040b116add rsp, 40
0040b11apop rbx
0040b11bpop rsi
0040b11cpop rdi
0040b11dpop r13
0040b11fret
0040b050
0040b120
0040b120fn_40b120:
0040b120push rbp
0040b121push rsi
0040b122push rbx
0040b123sub rsp, 32
0040b127mov rbp, rsp
0040b12acall fn_414a40
0040b12flea rcx, [0x208]
0040b137lea rsi, [rax+rcx]
0040b13bmov rbx, [rsi]
0040b13etest rbx, rbx
0040b141jne 0x40b14a
0040b143mov cl, 216
0040b145call fn_40ba30
0040b14a
0040b14aloc_40b14a:
0040b14amov rax, [rbx]
0040b14dmov [rsi], rax
0040b150mov rax, [rbx+16]
0040b154test rax, rax
0040b157je 0x40b161
0040b159mov rcx, rax
0040b15ccall TObject.Free
0040b161
0040b161loc_40b161:
0040b161mov rcx, rbx
0040b164call fn_405890
0040b169mov rax, [rbp+56]
0040b16dmov rcx, rax
0040b170call fn_40a380
0040b175lea rsp, [rbp+32]
0040b179pop rbx
0040b17apop rsi
0040b17bpop rbp
0040b17cret
0040b120
0040b120fn_40b120:
0040b120push rbp
0040b121push rsi
0040b122push rbx
0040b123sub rsp, 32
0040b127mov rbp, rsp
0040b12acall fn_414a40
0040b12flea rcx, [0x208]
0040b137lea rsi, [rax+rcx]
0040b13bmov rbx, [rsi]
0040b13etest rbx, rbx
0040b141jne 0x40b14a
0040b143mov cl, 216
0040b145call fn_40ba30
0040b14a
0040b14aloc_40b14a:
0040b14amov rax, [rbx]
0040b14dmov [rsi], rax
0040b150mov rax, [rbx+16]
0040b154test rax, rax
0040b157je 0x40b161
0040b159mov rcx, rax
0040b15ccall TObject.Free
0040b161
0040b161loc_40b161:
0040b161mov rcx, rbx
0040b164call fn_405890
0040b169mov rax, [rbp+56]
0040b16dmov rcx, rax
0040b170call fn_40a380
0040b175lea rsp, [rbp+32]
0040b179pop rbx
0040b17apop rsi
0040b17bpop rbp
0040b17cret
0040b120
0040b17d
0040b17d // align 0x10
0040b17d // align 0x10
0040b180
0040b180fn_40b180:
0040b180push rbp
0040b181sub rsp, 80
0040b185mov rbp, rsp
0040b188mov [rbp+40], rbp
0040b18cmov rax, [rip+0x5eaed]
0040b193test rax, rax
0040b196je 0x40b200
0040b198mov ecx, [rip+0x5eaea]
0040b19emov [rbp+76], ecx
0040b1a1mov rax, [rax+8]
0040b1a5mov [rbp+64], rax
0040b1a9nop
0040b1aacmp [rbp+76], 0
0040b1aejle 0x40b1eb
0040b1b0
0040b1b0loc_40b1b0:
0040b1b0sub [rbp+76], 1
0040b1b4mov eax, [rbp+76]
0040b1b7mov [rip+0x5eacb], eax
0040b1bdmov rax, [rbp+64]
0040b1c1movsxd rcx, [rbp+76]
0040b1c5add rcx, rcx
0040b1c8mov rax, [rax+8*rcx+8]
0040b1cdmov [rbp+56], rax
0040b1d1cmp [rbp+56], 0
0040b1d6je 0x40b1e5
0040b1d8mov rax, [rbp+56]
0040b1dccmp [rax], 0
0040b1e0je 0x40b1e5
0040b1e2call [rbp+56]
0040b1e5
0040b1e5loc_40b1e5:
0040b1e5cmp [rbp+76], 0
0040b1e9jg 0x40b1b0
0040b1eb
0040b1ebloc_40b1eb:
0040b1ebnop
0040b1ecjmp 0x40b200
0040b1ee
0040b1ee 90 90 ..
0040b1f0 e8 8b ff ff ff e8 16 fe ff ff e8 21 ff ff ff 90 ...........!....
0040b200
0040b200loc_40b200:
0040b200lea rsp, [rbp+80]
0040b204pop rbp
0040b205ret
0040b180
0040b180fn_40b180:
0040b180push rbp
0040b181sub rsp, 80
0040b185mov rbp, rsp
0040b188mov [rbp+40], rbp
0040b18cmov rax, [rip+0x5eaed]
0040b193test rax, rax
0040b196je 0x40b200
0040b198mov ecx, [rip+0x5eaea]
0040b19emov [rbp+76], ecx
0040b1a1mov rax, [rax+8]
0040b1a5mov [rbp+64], rax
0040b1a9nop
0040b1aacmp [rbp+76], 0
0040b1aejle 0x40b1eb
0040b1b0
0040b1b0loc_40b1b0:
0040b1b0sub [rbp+76], 1
0040b1b4mov eax, [rbp+76]
0040b1b7mov [rip+0x5eacb], eax
0040b1bdmov rax, [rbp+64]
0040b1c1movsxd rcx, [rbp+76]
0040b1c5add rcx, rcx
0040b1c8mov rax, [rax+8*rcx+8]
0040b1cdmov [rbp+56], rax
0040b1d1cmp [rbp+56], 0
0040b1d6je 0x40b1e5
0040b1d8mov rax, [rbp+56]
0040b1dccmp [rax], 0
0040b1e0je 0x40b1e5
0040b1e2call [rbp+56]
0040b1e5
0040b1e5loc_40b1e5:
0040b1e5cmp [rbp+76], 0
0040b1e9jg 0x40b1b0
0040b1eb
0040b1ebloc_40b1eb:
0040b1ebnop
0040b1ecjmp 0x40b200
0040b1ee
0040b1ee 90 90 ..
0040b1f0 e8 8b ff ff ff e8 16 fe ff ff e8 21 ff ff ff 90 ...........!....
0040b200
0040b200loc_40b200:
0040b200lea rsp, [rbp+80]
0040b204pop rbp
0040b205ret
0040b180
0040b206
0040b206 48 90 48 8d 04 05 00 00 00 00 H.H.......
0040b206 48 90 48 8d 04 05 00 00 00 00 H.H.......
0040b210
0040b210fn_40b210:
0040b210sub rsp, 40
0040b214call fn_40b050
0040b219add rsp, 40
0040b21dret
0040b210
0040b210fn_40b210:
0040b210sub rsp, 40
0040b214call fn_40b050
0040b219add rsp, 40
0040b21dret
0040b210
0040b21e
0040b21e // align 0x10
0040b21e // align 0x10
0040b220
0040b220fn_40b220:
0040b220push rbp
0040b221sub rsp, 80
0040b225mov rbp, rsp
0040b228mov [rbp+40], rbp
0040b22cmov rax, [rip+0x5ea4d]
0040b233test rax, rax
0040b236je 0x40b2a6
0040b238mov ecx, [rax]
0040b23amov [rbp+76], ecx
0040b23dmov [rbp+72], 0
0040b244mov rax, [rax+8]
0040b248mov [rbp+64], rax
0040b24cnop
0040b24dmov eax, [rbp+72]
0040b250cmp eax, [rbp+76]
0040b253jge 0x40b291
0040b255
0040b255loc_40b255:
0040b255mov rax, [rbp+64]
0040b259movsxd rcx, [rbp+72]
0040b25dadd rcx, rcx
0040b260mov rax, [rax+8*rcx]
0040b264mov [rbp+56], rax
0040b268add [rbp+72], 1
0040b26cmov eax, [rbp+72]
0040b26fmov [rip+0x5ea13], eax
0040b275cmp [rbp+56], 0
0040b27aje 0x40b289
0040b27cmov rax, [rbp+56]
0040b280cmp [rax], 0
0040b284je 0x40b289
0040b286call [rbp+56]
0040b289
0040b289loc_40b289:
0040b289mov eax, [rbp+72]
0040b28ccmp eax, [rbp+76]
0040b28fjl 0x40b255
0040b291
0040b291loc_40b291:
0040b291nop
0040b292jmp 0x40b2a6
0040b294
0040b294 90 90 e8 e5 fe ff ff e8 70 fd ff ff ........p...
0040b2a0 e8 7b fe ff ff 90 .{....
0040b2a6
0040b2a6loc_40b2a6:
0040b2a6lea rsp, [rbp+80]
0040b2aapop rbp
0040b2abret
0040b220
0040b220fn_40b220:
0040b220push rbp
0040b221sub rsp, 80
0040b225mov rbp, rsp
0040b228mov [rbp+40], rbp
0040b22cmov rax, [rip+0x5ea4d]
0040b233test rax, rax
0040b236je 0x40b2a6
0040b238mov ecx, [rax]
0040b23amov [rbp+76], ecx
0040b23dmov [rbp+72], 0
0040b244mov rax, [rax+8]
0040b248mov [rbp+64], rax
0040b24cnop
0040b24dmov eax, [rbp+72]
0040b250cmp eax, [rbp+76]
0040b253jge 0x40b291
0040b255
0040b255loc_40b255:
0040b255mov rax, [rbp+64]
0040b259movsxd rcx, [rbp+72]
0040b25dadd rcx, rcx
0040b260mov rax, [rax+8*rcx]
0040b264mov [rbp+56], rax
0040b268add [rbp+72], 1
0040b26cmov eax, [rbp+72]
0040b26fmov [rip+0x5ea13], eax
0040b275cmp [rbp+56], 0
0040b27aje 0x40b289
0040b27cmov rax, [rbp+56]
0040b280cmp [rax], 0
0040b284je 0x40b289
0040b286call [rbp+56]
0040b289
0040b289loc_40b289:
0040b289mov eax, [rbp+72]
0040b28ccmp eax, [rbp+76]
0040b28fjl 0x40b255
0040b291
0040b291loc_40b291:
0040b291nop
0040b292jmp 0x40b2a6
0040b294
0040b294 90 90 e8 e5 fe ff ff e8 70 fd ff ff ........p...
0040b2a0 e8 7b fe ff ff 90 .{....
0040b2a6
0040b2a6loc_40b2a6:
0040b2a6lea rsp, [rbp+80]
0040b2aapop rbp
0040b2abret
0040b220
0040b2ac
0040b2ac 48 8d 40 00 H.@.
0040b2ac 48 8d 40 00 H.@.
0040b2b0
0040b2b0fn_40b2b0:
0040b2b0sub rsp, 40
0040b2b4call fn_40b050
0040b2b9add rsp, 40
0040b2bdret
0040b2b0
0040b2b0fn_40b2b0:
0040b2b0sub rsp, 40
0040b2b4call fn_40b050
0040b2b9add rsp, 40
0040b2bdret
0040b2b0
0040b2be
0040b2be // align 0x10
0040b2be // align 0x10
0040b2c0
0040b2c0fn_40b2c0:
0040b2c0sub rsp, 40
0040b2c4lea rax, [rip-32923]
0040b2cbmov [rip+0x59d5e], rax
0040b2d2lea rax, [rip-32921]
0040b2d9mov [rip+0x59d58], rax
0040b2e0mov [rip+0x5e999], rcx
0040b2e7mov [rip+0x5e997], 0
0040b2f1mov [rip+0x5e998], rdx
0040b2f8mov rax, [rdx+8]
0040b2fcmov [rip+0x59d6d], rax
0040b303mov [rip+0x5e96a], 1
0040b30emov [rip+0x59d67], 0
0040b315call fn_40b220
0040b31aadd rsp, 40
0040b31eret
0040b2c0
0040b2c0fn_40b2c0:
0040b2c0sub rsp, 40
0040b2c4lea rax, [rip-32923]
0040b2cbmov [rip+0x59d5e], rax
0040b2d2lea rax, [rip-32921]
0040b2d9mov [rip+0x59d58], rax
0040b2e0mov [rip+0x5e999], rcx
0040b2e7mov [rip+0x5e997], 0
0040b2f1mov [rip+0x5e998], rdx
0040b2f8mov rax, [rdx+8]
0040b2fcmov [rip+0x59d6d], rax
0040b303mov [rip+0x5e96a], 1
0040b30emov [rip+0x59d67], 0
0040b315call fn_40b220
0040b31aadd rsp, 40
0040b31eret
0040b2c0
0040b31f
0040b31f // align 0x10
0040b31f // align 0x10
0040b320
0040b320fn_40b320:
0040b320push rbp
0040b321sub rsp, 80
0040b325mov rbp, rsp
0040b328mov [rbp+40], rcx
0040b32cmov [rbp+48], rdx
0040b330mov [rbp+62], r8w
0040b335mov [rbp+72], 0
0040b33dnop
0040b33elea rcx, [rbp+72]
0040b342mov rdx, [rbp+48]
0040b346call fn_414600
0040b34bmov rcx, [rbp+40]
0040b34fmov rdx, [rbp+72]
0040b353movzx r8, [rbp+62]
0040b358call fn_40cff0
0040b35dnop
0040b35elea rcx, [rbp+72]
0040b362call fn_40bcf0
0040b367mov rax, [rbp+40]
0040b36blea rsp, [rbp+80]
0040b36fpop rbp
0040b370ret
0040b320
0040b320fn_40b320:
0040b320push rbp
0040b321sub rsp, 80
0040b325mov rbp, rsp
0040b328mov [rbp+40], rcx
0040b32cmov [rbp+48], rdx
0040b330mov [rbp+62], r8w
0040b335mov [rbp+72], 0
0040b33dnop
0040b33elea rcx, [rbp+72]
0040b342mov rdx, [rbp+48]
0040b346call fn_414600
0040b34bmov rcx, [rbp+40]
0040b34fmov rdx, [rbp+72]
0040b353movzx r8, [rbp+62]
0040b358call fn_40cff0
0040b35dnop
0040b35elea rcx, [rbp+72]
0040b362call fn_40bcf0
0040b367mov rax, [rbp+40]
0040b36blea rsp, [rbp+80]
0040b36fpop rbp
0040b370ret
0040b320
0040b371
0040b371 48 8d 80 00 00 00 00 48 8d 04 05 00 00 00 00 H......H.......
0040b371 48 8d 80 00 00 00 00 48 8d 04 05 00 00 00 00 H......H.......
0040b380
0040b380fn_40b380:
0040b380push rbp
0040b381sub rsp, 32
0040b385mov rbp, rsp
0040b388lea rcx, [rdx+72]
0040b38ccall fn_40bcf0
0040b391lea rsp, [rbp+32]
0040b395pop rbp
0040b396ret
0040b380
0040b380fn_40b380:
0040b380push rbp
0040b381sub rsp, 32
0040b385mov rbp, rsp
0040b388lea rcx, [rdx+72]
0040b38ccall fn_40bcf0
0040b391lea rsp, [rbp+32]
0040b395pop rbp
0040b396ret
0040b380
0040b397
0040b397 // align 0x10
0040b397 // align 0x10
0040b3a0
0040b3a0fn_40b3a0:
0040b3a0push rbp
0040b3a1sub rsp, 64
0040b3a5mov rbp, rsp
0040b3a8mov [rbp+40], rcx
0040b3acmov [rbp+48], rdx
0040b3b0mov [rbp+56], 0
0040b3b8nop
0040b3b9lea rcx, [rbp+56]
0040b3bdmov rdx, [rbp+48]
0040b3c1call fn_414600
0040b3c6mov rcx, [rbp+40]
0040b3camov rdx, [rbp+56]
0040b3cecall fn_40d850
0040b3d3nop
0040b3d4lea rcx, [rbp+56]
0040b3d8call fn_40bcf0
0040b3ddmov rax, [rbp+40]
0040b3e1lea rsp, [rbp+64]
0040b3e5pop rbp
0040b3e6ret
0040b3a0
0040b3a0fn_40b3a0:
0040b3a0push rbp
0040b3a1sub rsp, 64
0040b3a5mov rbp, rsp
0040b3a8mov [rbp+40], rcx
0040b3acmov [rbp+48], rdx
0040b3b0mov [rbp+56], 0
0040b3b8nop
0040b3b9lea rcx, [rbp+56]
0040b3bdmov rdx, [rbp+48]
0040b3c1call fn_414600
0040b3c6mov rcx, [rbp+40]
0040b3camov rdx, [rbp+56]
0040b3cecall fn_40d850
0040b3d3nop
0040b3d4lea rcx, [rbp+56]
0040b3d8call fn_40bcf0
0040b3ddmov rax, [rbp+40]
0040b3e1lea rsp, [rbp+64]
0040b3e5pop rbp
0040b3e6ret
0040b3a0
Loading..