Function at 0x445580
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x48bb88
mov eax, dword fs:[0]
push eax
sub esp, 0x9c
push ebx
push esi
push edi
mov eax, dword [0x5a1014]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x2c], edx
mov ebx, ecx
mov dword [ebp - 0x1c], ebx
call fcn.0046bf6f
mov edi, dword [ebp + 8]
mov dword [ebp - 0x10], edi
test al, al
jne 0x4a4c3e
mov dword [ebp - 0x20], 0
lea eax, [ebp - 0x20]
mov dword [ebp - 4], 0
push eax
mov ecx, edi
call fcn.00446020
mov esi, dword [edi + 0x68]
mov eax, 0x14c
movzx ecx, word [ebx + 0x40]
add esi, 0x1f
shr esi, 5
cmp cx, ax
jne 0x4a4c82
lea ebx, [esi*4]
push ebx
call dword [sym.imp.tbbmalloc.dll_scalable_malloc]
mov edi, eax
add esp, 4
test edi, edi
je 0x4a4c97
cmp dword [0x5a2e48], 3
jl 0x4a4cae
mov edx, ebx
mov ecx, edi
call fcn.0045be4b
mov ebx, dword [ebp - 0x1c]
mov dword [0x5a2f7c], edi
mov edi, dword [ebp - 0x10]
movzx eax, word [ebx + 0x40]
mov edx, 0x1c4
cmp ax, dx
jae 0x4a4cbf
mov dword [ebp - 0x94], edi
xor eax, eax
mov dword [ebp - 0x98], ebx
lea edi, [ebp - 0x88]
mov dword [ebp - 0x90], 0
mov byte [ebp - 0x8c], 1
stosd dword es:[edi], eax
mov dword [ebp - 0x30], 0
stosd dword es:[edi], eax
stosd dword es:[edi], eax
mov dword [ebp - 0x7c], 0
mov dword [ebp - 0x74], 0
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x6c], 0
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x5c], 0
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 0
mov dword [ebp - 0x40], 0
mov byte [ebp - 4], 1
mov edi, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x90]
mov esi, dword [edi + 0xe0]
mov eax, dword [esi]
mov edi, dword [eax + 0x34]
test ecx, ecx
jne 0x4a4d04
lea eax, [ebp - 0x90]
push eax
push esi
call edi
test eax, eax
js 0x4a53a6
mov ecx, dword [ebp - 0x90]
lea edx, [ebp - 0x30]
push edx
push ecx
mov eax, dword [ecx]
call dword [eax + 0xc]
test eax, eax
js 0x4a53a6
mov esi, dword [ebp - 0x10]
lea eax, [ebp - 0x20]
push ecx
push eax
push ecx
push esi
mov ecx, ebx
call fcn.00445d00
push dword [ebp - 0x90]
mov edx, dword [ebp - 0x30]
mov ecx, ebx
push esi
call fcn.00441ae0
mov eax, dword [ebp - 0x30]
lea edi, [eax*4]
mov edi, edi
push edi
call dword [sym.imp.tbbmalloc.dll_scalable_malloc]
mov esi, eax
add esp, 4
test esi, esi
je 0x4a4d19
cmp dword [0x5a2e48], 3
jl 0x4a4d30
mov edx, edi
mov ecx, esi
call fcn.0045be4b
mov edi, dword [sym.imp.tbbmalloc.dll_scalable_free]
mov dword [0x5a30f0], esi
mov esi, dword [ebp - 0x10]
mov dword [ebp - 0x28], edi
cmp dword [esi + 0xe4], 0
je 0x445927
mov eax, dword [ebp - 0x20]
push eax
mov ecx, dword [eax]
call dword [ecx + 0x14]
xor edi, edi
mov dword [ebp - 0x14], edi
mov byte [ebp - 4], 2
mov dword [ebp - 0x24], 1
mov esi, dword [ebp - 0x20]
mov eax, dword [esi]
mov ebx, dword [eax + 0xc]
test edi, edi
je 0x445808
mov eax, dword [edi]
mov eax, dword [eax + 8]
cmp eax, 0x446eb0
jne 0x445bc6
add dword [edi + 4], 0xffffffff
jne 0x4457f1
mov ecx, dword [edi + 0x14]
add dword [ecx + 0x30], 0xffffffff
je 0x445c36
cmp dword [edi + 4], 0
jne 0x445801
cmp byte [edi + 8], 0
je 0x4a4d41
mov dword [ebp - 0x14], 0
cmp ebx, 0x446f00
jne 0x4458aa
mov eax, dword [esi + 0x10]
sub eax, dword [esi + 0x14]
cmp eax, 1
jbe 0x445828
mov dword [ebp - 0x18], 1
jmp 0x445833
mov dword [ebp - 0x18], eax
test eax, eax
je 0x445bce
xor edi, edi
mov edx, dword [esi + 0x18]
mov ebx, dword [esi + 0x14]
add ebx, edi
cmp dword [edx + 4], 0
jne 0x4a4d5a
mov eax, dword [esi + 8]
lea ecx, [ebx + ebx*4]
lea ecx, [eax + ecx*8]
mov eax, dword [esi + 0xc]
test eax, eax
je 0x44585a
inc dword [eax + 0x30]
mov dword [edx + 0x14], eax
mov dword [edx + 0x10], ecx
mov dword [edx + 0xc], ebx
mov dword [edx + 4], 0
mov edx, dword [esi + 0x18]
mov dword [ebp + edi*4 - 0x14], edx
test edx, edx
je 0x4458bb
mov eax, dword [edx]
push edx
call dword [eax + 4]
mov eax, dword [ebp - 0x18]
inc edi
cmp edi, eax
jb 0x445835
add dword [esi + 0x14], eax
mov eax, dword [ebp - 0x14]
test eax, eax
je 0x4458bb
mov ebx, dword [ebp - 0x24]
lea ecx, [ebp - 0x98]
push eax
mov edx, ebx
call fcn.00443c80
mov edi, dword [ebp - 0x14]
inc ebx
mov dword [ebp - 0x24], ebx
jmp 0x4457c2
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x14]
push eax
push 1
push esi
call ebx
test eax, eax
jns 0x445886
cmp dword [ebp - 0x78], 0
mov ebx, dword [ebp - 0x1c]
jne 0x4a4dbb
mov ecx, ebx
call fcn.0046bf6f
mov edi, dword [ebp - 0x10]
test al, al
jne 0x4a4e18
test byte [ebx + 0x14c], 0x40
je 0x4458ef
test dword [ebx + 0xaf0], 0x10000
je 0x44590e
xor esi, esi
cmp dword [ebp - 0x78], esi
ja 0x4a4e48
cmp byte [0x5a2ef9], 0
jne 0x44590e
xor esi, esi
cmp dword [ebp - 0x6c], esi
ja 0x445c95
mov byte [ebp - 4], 3
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x4a4e62
mov edi, dword [ebp - 0x28]
mov byte [ebp - 4], 1
mov esi, dword [ebp - 0x10]
mov eax, dword [ebp - 0x40]
test eax, eax
jne 0x4a4e6d
cmp byte [0x5a2ef9], 0
jne 0x4a4e82
push dword [ebp - 0x8c]
lea eax, [ebp - 0x90]
mov edx, esi
push 0
push eax
push dword [ebp - 0x2c]
mov ecx, ebx
call fcn.00442050
mov eax, dword [0x5a3ea8]
test eax, eax
je 0x445973
push eax
call edi
add esp, 4
mov dword [0x5a3ea8], 0
cmp dword [0x5a303c], 6
jne 0x44599a
test dword [ebx + 0x148], 0x8000000
je 0x44599a
mov eax, 0x2000
test word [esi + 0xcc], ax
jne 0x445c58
mov eax, dword [ebp - 0x48]
test eax, eax
jne 0x4a4eb1
test dword [ebx + 0x19c], 0x400
jne 0x4a4eca
mov eax, dword [esi + 0x7c]
test eax, 0x2000
jne 0x4a4f45
cmp dword [0x5a30c4], esi
je 0x445c83
cmp dword [0x5a303c], 6
jne 0x4459e5
test byte [ebx + 0x148], 8
jne 0x4a4f89
test byte [ebx + 0x14c], 0x40
je 0x4459fe
test dword [ebx + 0xaf0], 0x10000
je 0x445be2
test dword [esi + 0xd4], 0x200
je 0x445a33
mov eax, dword [esi + 0x7c]
test eax, 0xc00
je 0x445a33
test eax, 0x800
je 0x445a28
or dword [ebx + 0xa94], 0x100
mov eax, dword [esi + 0x7c]
test eax, 0x400
jne 0x4a4fb4
xor edi, edi
cmp dword [ebp - 0x60], edi
ja 0x4a4fc3
mov edx, esi
mov ecx, ebx
call fcn.0046f84b
mov edx, esi
mov ecx, ebx
call fcn.00457fb9
mov eax, dword [ebx + 0x14c]
test al, 0x40
je 0x445a66
test dword [ebx + 0xaf0], 0x10000
je 0x445a83
cmp dword [0x5a303c], 5
je 0x4a50c4
test dword [ebx + 0x19c], 0x800
jne 0x4a50c4
test al, 0x40
je 0x445a97
test dword [ebx + 0xaf0], 0x10000
je 0x445c03
mov eax, 0xa64e
cmp word [ebx + 0x40], ax
je 0x4a50e2
test byte [ebx + 0x150], 0x90
je 0x445ab7
push ecx
mov edx, esi
call fcn.00460870
mov eax, dword [0x5a30f0]
mov edi, dword [ebp - 0x28]
test eax, eax
je 0x445ac9
push eax
call edi
add esp, 4
mov eax, dword [0x5a3eb4]
mov dword [0x5a30f0], 0
test eax, eax
je 0x445aec
push eax
call edi
add esp, 4
mov dword [0x5a3eb4], 0
cmp byte [0x5a2ef9], 0
mov dword [0x5a3eb8], 0
jne 0x4a50f7
movzx eax, word [ebx + 0x40]
mov edx, 0x1c4
cmp ax, dx
jae 0x4a5107
mov eax, dword [0x5a2f7c]
test eax, eax
je 0x445b24
push eax
call edi
add esp, 4
cmp byte [0x5a4f22], 0
mov dword [0x5a2f7c], 0
jne 0x4a5153
cmp byte [esi + 0xe8], 0
je 0x4a521c
mov eax, dword [esi + 0xd4]
shr eax, 0xa
and al, 1
test al, al
jne 0x445c1e
mov eax, dword [ebp - 0x58]
mov ebx, dword [ebp - 0x28]
test eax, eax
jne 0x445c4d
mov eax, dword [ebp - 0x64]
test eax, eax
jne 0x4a5390
mov eax, dword [ebp - 0x70]
test eax, eax
jne 0x445ced
mov eax, dword [ebp - 0x7c]
test eax, eax
jne 0x4a539b
mov byte [ebp - 4], 0xc
mov ecx, dword [ebp - 0x90]
test ecx, ecx
je 0x445b9e
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov dword [ebp - 4], 0xd
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x445bb2
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
push edi
call eax
jmp 0x445801
mov eax, 1
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x18], eax
jmp 0x445883
test byte [esi + 0xcc], 0x40
jne 0x445a50
lea eax, [ebp + 8]
lea ecx, [ebx + 0xa44]
push eax
call fcn.0046ffad
jmp 0x445a50
test eax, 0x20000000
jne 0x445ab7
mov eax, dword [ebx + 0x150]
shr eax, 7
and al, 1
jmp 0x445aad
mov edi, dword [esi + 0x9c]
cmp dword [edi + 0x80], 0
je 0x445b5b
jmp 0x4a5288
cmp byte [ecx + 0x2f], 0
je 0x4457f1
mov eax, dword [ecx]
push 0
push ecx
call dword [eax + 0x2c]
jmp 0x4457f1
push eax
call ebx
add esp, 4
jmp 0x445b69
xor esi, esi
cmp dword [ebp - 0x54], esi
jbe 0x445c7b
mov edi, dword [ebp - 0x10]
mov eax, dword [ebp - 0x58]
lea ecx, [ebp - 0x90]
push ecx
push dword [eax + esi*4]
push edi
call fcn.00439278
inc esi
cmp esi, dword [ebp - 0x54]
jb 0x445c62
mov esi, dword [ebp - 0x10]
jmp 0x44599a
cmp byte [0x5a4e83], 0
je 0x4459cf
jmp 0x4a4f7a
mov ecx, dword [0x5a30fc]
test ecx, ecx
jne 0x445cc0
mov edx, 0xba8
mov ecx, 1
call fcn.0044fc74
mov ecx, eax
mov dword [0x5a30fc], eax
call fcn.00432d3d
mov ecx, dword [0x5a30fc]
cmp dword [ecx + 0x9ec], 0
jne 0x445cd4
call fcn.004617f2
mov ecx, dword [0x5a30fc]
mov eax, dword [ebp - 0x70]
mov edx, edi
push dword [eax + esi*4]
call fcn.0043fa70
inc esi
cmp esi, dword [ebp - 0x6c]
jae 0x44590e
jmp 0x445c95
push eax
call ebx
add esp, 4
jmp 0x445b7f
cmp byte [0x5b3b5d], 0
jne 0x4a4c55
mov ecx, ebx
mov byte [0x5b3b5d], 1
call fcn.00469c02
mov esi, 0x200
test word [edi + 0xcc], si
jne 0x4455c6
mov ecx, edi
call fcn.004356b8
test al, al
je 0x4455c6
or word [edi + 0xcc], si
jmp 0x4455c6
mov edx, 0x3a64
mov eax, ecx
cmp cx, dx
jne 0x44563b
jmp 0x4455fa
call fcn.004575aa
test al, al
jne 0x445601
call fcn.004fd4dc
jmp 0x44562b
push ebx
push 0
push edi
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
jmp 0x44562b
mov ecx, 0xa64e
cmp ax, cx
ja 0x4a4cdf
je 0x4a4ced
cmp ax, dx
je 0x4a4ced
mov ecx, 0x3a64
cmp ax, cx
je 0x4a4ced
jmp 0x445649
mov ecx, 0xaa64
cmp ax, cx
jne 0x445649
mov ecx, esi
mov dword [0x5a4ff8], esi
call fcn.0046f392
mov dword [0x5a4ff4], eax
jmp 0x445649
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov dword [ebp - 0x90], 0
jmp 0x445708
call fcn.004575aa
test al, al
jne 0x445760
call fcn.004fd4dc
jmp 0x44578a
push edi
push 0
push esi
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
jmp 0x44578a
cmp byte [0x5a2ee5], 0
jne 0x445801
push edi
call dword [ebp - 0x28]
add esp, 4
jmp 0x445801
cmp byte [0x5a2ee5], 0
je 0x4a4d72
mov edx, 0x18
lea ecx, [edx - 0x17]
call fcn.0044fc74
jmp 0x4a4d7c
mov ecx, 0x18
call fcn.0043d6d0
mov edx, eax
test edx, edx
je 0x4a4db4
mov eax, dword [esi + 8]
lea ecx, [ebx + ebx*4]
lea ecx, [eax + ecx*8]
mov eax, dword [esi + 0xc]
mov dword [edx], 0x401b60
test eax, eax
je 0x4a4d9b
inc dword [eax + 0x30]
mov dword [edx + 0x14], eax
mov dword [edx + 0x10], ecx
mov dword [edx + 0xc], ebx
mov dword [edx + 4], 0
mov byte [edx + 8], 0
jmp 0x44586d
xor edx, edx
jmp 0x44586d
cmp dword [ebx + 0x184], 2
jne 0x4458c8
mov ecx, dword [ebx + 0x23c]
xor eax, eax
mov edi, dword [ebp - 0x10]
and ecx, 0x40
or eax, ecx
je 0x4a4de1
push 0x429ed0
jmp 0x4a4de6
push 0x429ee8
push 0x17ae
push edi
call fcn.0042fff6
add esp, 0xc
xor dl, dl
mov cl, 1
call fcn.00457243
push 0
push 0
push 0
push 0
mov edx, 0x429f08
xor cl, cl
call fcn.004708d7
push eax
call dword [sym.imp.KERNEL32.dll_ExitProcess]
mov ecx, edi
call fcn.004356b8
test al, al
jne 0x4a4e31
mov edx, ebx
mov ecx, edi
call fcn.00538d65
jmp 0x4458da
lea eax, [edi + 0xd0]
lock bts dword [eax], 2
mov ecx, edi
call fcn.0046c1d2
jmp 0x4458da
mov eax, dword [ebp - 0x7c]
mov edx, edi
mov ecx, ebx
push dword [eax + esi*4]
call fcn.0043fa70
inc esi
cmp esi, dword [ebp - 0x78]
jb 0x4a4e48
jmp 0x4458fa
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x44591d
lea ecx, [ebp - 0x90]
push ecx
push eax
push esi
mov ecx, ebx
call fcn.00536d5f
jmp 0x445932
lea eax, [ebp - 0x88]
mov edx, esi
push eax
mov ecx, ebx
call fcn.00509185
test al, al
jne 0x44593f
lea ecx, [ebp - 0x98]
call fcn.00534add
mov dword [ebp - 4], 4
jmp 0x445ba5
lea ecx, [ebp - 0x90]
push ecx
lea ecx, [ebp - 0x20]
push ecx
push eax
push esi
mov ecx, ebx
call fcn.00537723
jmp 0x4459a5
mov ecx, dword [ebp - 0x44]
test ecx, ecx
je 0x4a4f02
mov eax, dword [ecx + 0x10]
sub ecx, dword [eax + 0xa0]
mov eax, 0x66666667
imul ecx
mov ecx, ebx
sar edx, 5
mov eax, edx
inc edx
shr eax, 0x1f
add eax, edx
mov dword [esi + 0x80], eax
push dword [ebp - 0x44]
push esi
call fcn.00500b68
jmp 0x4459b5
test byte [esi + 0xd4], 8
je 0x4459b5
test byte [ebx + 0x14c], 0x40
je 0x4a4f28
test dword [ebx + 0xaf0], 0x10000
je 0x4459b5
push 0x10bf
push esi
call fcn.0052bce6
add esp, 8
or dword [ebx + 0xaf0], 0x200000
jmp 0x4459b5
cmp byte [0x5a2ee5], 0
mov byte [0x5a4e80], 1
je 0x4459c3
xor dl, dl
mov cl, 1
call fcn.00457243
push 0
push 0
push 0
push 0
xor edx, edx
xor cl, cl
call fcn.004708d7
push eax
call dword [sym.imp.KERNEL32.dll_ExitProcess]
shr eax, 0xf
and al, 1
mov byte [0x5a4e82], al
jmp 0x4459cf
test byte [ebx + 0x14c], 0x40
je 0x4a4fa2
test dword [ebx + 0xaf0], 0x10000
je 0x4459e5
push esi
push ecx
mov ecx, dword [ebx + 0x9b4]
call fcn.0052f173
jmp 0x4459e5
or dword [ebx + 0xa94], 0x200
jmp 0x445a33
mov dword [ebp - 0x18], 0
mov dword [ebp + 8], 0
mov byte [ebp - 4], 6
lea ebx, [ebp - 0x18]
mov edx, dword [ebp - 0x90]
mov dword [ebp - 0x24], 0
push ebx
mov eax, dword [edx]
mov ecx, dword [eax + 0x10]
mov eax, dword [ebp - 0x64]
push dword [eax + edi*4]
push edx
call ecx
test eax, eax
js 0x4a50b2
mov esi, dword [ebp - 0x18]
mov eax, dword [esi]
mov ebx, dword [eax + 0x20]
mov eax, dword [ebp + 8]
test eax, eax
je 0x4a5018
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov dword [ebp + 8], 0
lea eax, [ebp + 8]
push eax
push esi
call ebx
test eax, eax
js 0x4a50af
mov eax, dword [ebp + 8]
lea edx, [ebp - 0x34]
push edx
lea edx, [ebp - 0x24]
push edx
mov ecx, dword [eax]
push eax
call dword [ecx + 0xc]
mov esi, dword [ebp - 0x10]
test eax, eax
js 0x4a50b2
mov ecx, dword [ebp - 0x18]
mov edx, esi
call fcn.0052cd58
mov ebx, dword [ebp - 0x1c]
mov ecx, ebx
push eax
call fcn.0045c0f2
push dword [ebp - 0x24]
mov ecx, eax
call fcn.00455a31
lea ecx, [ebp - 0x14]
mov dword [ebp - 0x14], eax
push ecx
push eax
mov eax, ecx
mov ecx, 0x5a1578
push eax
lea eax, [ebp - 0xa4]
push eax
call fcn.0044e7f5
mov byte [ebp - 4], 7
mov eax, dword [ebp + 8]
test eax, eax
je 0x4a508b
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 8
mov eax, dword [ebp - 0x18]
test eax, eax
je 0x4a509c
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
inc edi
mov byte [ebp - 4], 1
cmp edi, dword [ebp - 0x60]
jb 0x4a4fc3
jmp 0x445a3e
mov esi, dword [ebp - 0x10]
mov ecx, eax
call fcn.004fd165
push 0x4d3
push esi
call fcn.0052bb8a
push dword [ebx + 0x89c]
mov edx, esi
lea ecx, [ebp - 0x90]
call fcn.00543782
mov eax, dword [ebx + 0x14c]
jmp 0x445a83
test dword [ebx + 0xaf0], 0x40000
jne 0x445aaf
jmp 0x445aa6
lea ecx, [ebp - 0x88]
call fcn.0047802e
jmp 0x445b03
mov ecx, 0xa64e
cmp ax, cx
ja 0x4a5127
je 0x4a5135
cmp ax, dx
je 0x4a5135
mov ecx, 0x3a64
cmp ax, cx
je 0x4a5135
jmp 0x445b15
mov ecx, 0xaa64
cmp ax, cx
jne 0x445b15
mov eax, dword [0x5a4ff4]
test eax, eax
je 0x4a5144
push eax
call edi
add esp, 4
mov dword [0x5a4ff4], 0
jmp 0x445b15
cmp byte [0x5a4e68], 0
jne 0x445b3b
cmp dword [0x5a303c], 6
jne 0x445b3b
cmp esi, dword [0x5a30c4]
jne 0x4a51e0
call fcn.00539efa
xor esi, esi
cmp dword [0x5a4d0c], esi
jbe 0x4a519c
mov eax, dword [0x5a4d08]
mov ecx, ebx
push dword [eax + esi*4]
call fcn.00506300
inc esi
cmp esi, dword [0x5a4d0c]
jb 0x4a5184
mov eax, dword [0x5a4d08]
test eax, eax
je 0x4a51b5
push eax
call edi
add esp, 4
mov dword [0x5a4d08], 0
lea ecx, [ebp - 0x98]
mov dword [0x5a4d10], 0
mov dword [0x5a4d0c], 0
call fcn.00534add
mov dword [ebp - 4], 9
jmp 0x445ba5
test byte [ebx + 0x14c], 0x40
je 0x4a520f
mov eax, dword [ebx + 0xaf0]
and eax, 0x110000
cmp eax, 0x10000
je 0x445b3b
test dword [ebx + 0xaf0], 0x10000
je 0x445b3b
push esi
mov ecx, ebx
call fcn.00506300
jmp 0x445b3b
test byte [esi + 0xcc], 0x40
jne 0x445b5b
mov dword [ebp + 8], 0
mov byte [ebp - 4], 0xa
lea edx, [ebp + 8]
mov ecx, dword [esi + 0xe0]
push edx
push 0x401b34
push ecx
mov eax, dword [ecx]
call dword [eax]
test eax, eax
js 0x4a537e
mov eax, dword [ebp + 8]
lea edx, [ebp - 0x2c]
push edx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x2c]
test eax, eax
js 0x4a536c
cmp dword [ebp - 0x2c], 0
setne bl
mov byte [ebp - 4], 0xb
mov eax, dword [ebp + 8]
test eax, eax
je 0x4a527d
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 1
mov al, bl
jmp 0x445b53
mov eax, dword [esi]
sub eax, 0x3c
mov dword [ebp - 0x24], eax
lea eax, [ebp - 0x24]
push eax
call fcn.004f01b3
mov ecx, dword [edi + 0x7c]
push eax
lea eax, [ebp - 0x24]
push eax
lea eax, [ebp - 0x38]
push eax
call fcn.00533d2e
mov eax, dword [edi + 0x7c]
mov ecx, dword [eax + 0xc]
add ecx, dword [eax]
cmp dword [ebp - 0x38], ecx
je 0x445b5b
mov eax, dword [ebp - 0x34]
mov cl, 1
mov byte [ebp + 0xb], cl
mov edx, dword [eax + 8]
mov esi, dword [eax + 4]
mov dword [ebp - 0x14], edx
mov dword [ebp - 0x18], esi
cmp esi, edx
je 0x445b5b
mov ebx, dword [ebp + 8]
test cl, cl
je 0x4a532a
mov ecx, dword [edi + 0x80]
lea eax, [ebp - 0x38]
push esi
push eax
call fcn.00534018
mov eax, dword [ebp - 0x34]
mov byte [ebp + 0xb], 0
mov ebx, dword [eax + 0x10]
mov eax, dword [ebp - 0x1c]
add ebx, dword [edi + 0x84]
mov ecx, dword [eax + 0xb9c]
test ecx, ecx
jne 0x4a5320
push ecx
lea ecx, [eax + 0xb9c]
call fcn.004e6762
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax + 0xb9c]
push ecx
push ebx
call fcn.004e67e0
mov dword [ebp - 0x2c], eax
mov esi, dword [esi + 8]
mov edx, ebx
mov ecx, esi
call fcn.00539991
push eax
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax + 0x89c]
call fcn.00455a31
mov edx, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x1c]
push esi
push eax
call fcn.00535343
mov esi, dword [ebp - 0x18]
mov cl, byte [ebp + 0xb]
add esi, 0x10
mov dword [ebp - 0x18], esi
cmp esi, dword [ebp - 0x14]
jne 0x4a52da
jmp 0x445b5b
mov ecx, eax
call fcn.004fd165
push 0x470
push esi
call fcn.0052bb8a
mov ecx, eax
call fcn.004fd165
push 0x4d1
push esi
call fcn.0052bb8a
push eax
call ebx
add esp, 4
jmp 0x445b74
push eax
call ebx
add esp, 4
jmp 0x445b8a
mov ecx, eax
call fcn.004fd165
push 0x4d3
push dword [ebp - 0x10]
call fcn.0052bb8a
int3