Function at 0x4465a0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x4d9726
mov eax, dword fs:[0]
push eax
sub esp, 0x90
push ebx
push ebp
push esi
push edi
mov eax, dword [0x51d260]
xor eax, esp
push eax
lea eax, [esp + 0xa4]
mov dword fs:[0], eax
mov edi, ecx
push 0x4dd6d7
xor ebx, ebx
xor esi, esi
call fcn.00435450
push 0x4dd6d7
mov ecx, edi
call fcn.00435450
push 0x4dd6d7
mov ecx, edi
call fcn.004354e0
push 0x4dd6d7
mov ecx, edi
call fcn.00435450
push 0x4dd6d7
mov ecx, edi
call fcn.00435450
mov eax, dword [edi + 0x134]
sub eax, dword [edi + 0x130]
sar eax, 2
test eax, eax
ja 0x446625
call fcn.004a067d
mov ecx, dword [edi + 0x130]
mov edx, dword [edi + 0x134]
mov ebp, dword [ecx]
sub edx, ecx
sar edx, 2
cmp edx, 1
ja 0x446642
call fcn.004a067d
mov edx, dword [edi + 0x15c]
sub edx, dword [edi + 0x158]
mov eax, dword [edi + 0x130]
mov ecx, dword [eax + 4]
sar edx, 2
mov dword [esp + 0x9c], ecx
test edx, edx
ja 0x44666a
call fcn.004a067d
mov edx, dword [edi + 0x134]
sub edx, dword [edi + 0x130]
mov eax, dword [edi + 0x158]
mov ecx, dword [eax]
sar edx, 2
mov dword [esp + 0x18], ecx
cmp edx, 2
ja 0x44668f
call fcn.004a067d
mov eax, dword [edi + 0x130]
mov edx, dword [edi + 0x134]
mov ecx, dword [eax + 8]
sub edx, eax
sar edx, 2
mov dword [esp + 0x28], ecx
cmp edx, 3
ja 0x4466b1
call fcn.004a067d
mov eax, dword [edi + 0x130]
mov ecx, dword [eax + 0xc]
mov eax, dword [edi + 0x86e58]
mov dword [esp + 0x94], ecx
lea ecx, [edi + 0x86e4c]
mov dword [esp + 0x24], ecx
mov dword [esp + 0x14], eax
cmp eax, dword [ecx + 0x10]
jbe 0x4466e3
call fcn.004a067d
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x24]
mov edx, dword [ecx]
mov dword [esp + 0x1c], edx
mov dword [esp + 0x20], eax
mov eax, dword [ecx + 0x10]
mov dword [esp + 0x14], eax
cmp dword [ecx + 0xc], eax
jbe 0x446702
call fcn.004a067d
mov ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
cmp ecx, ebx
je 0x446714
cmp ecx, eax
je 0x446719
call fcn.004a067d
mov ecx, dword [esp + 0x14]
cmp dword [esp + 0x20], ecx
je 0x44678c
mov eax, dword [esp + 0x1c]
cmp eax, ebx
jne 0x446784
call fcn.004a067d
xor eax, eax
mov edx, dword [esp + 0x20]
cmp edx, dword [eax + 0x10]
jb 0x446740
call fcn.004a067d
mov eax, dword [esp + 0x20]
mov esi, dword [eax]
cmp dword [esi + 4], ebp
jne 0x446757
mov ecx, dword [esp + 0x9c]
cmp dword [esi + 8], ecx
je 0x44678c
mov eax, dword [esp + 0x1c]
xor esi, esi
cmp eax, ebx
jne 0x446788
call fcn.004a067d
xor eax, eax
mov edx, dword [esp + 0x20]
cmp edx, dword [eax + 0x10]
jb 0x446776
call fcn.004a067d
add dword [esp + 0x20], 4
mov ecx, dword [esp + 0x24]
jmp 0x4466f1
mov eax, dword [eax]
jmp 0x446732
mov eax, dword [eax]
jmp 0x446768
cmp dword [esp + 0x18], 0xffffffff
jne 0x44682c
cmp esi, ebx
je 0x446c7a
push ebx
lea ebp, [esi + 0x14]
push ebp
mov ecx, edi
call fcn.00443d40
mov edi, dword [esi]
cmp edi, ebx
je 0x4467c1
mov ecx, edi
call fcn.0040bd90
push edi
call fcn.0048f8b2
add esp, 4
mov dword [ebp + 0x10], ebx
mov eax, dword [ebp + 0x24]
cmp eax, ebx
je 0x4467d4
push eax
call fcn.004a2159
add esp, 4
push esi
mov dword [ebp + 0x28], 0x40
mov dword [ebp + 0x2c], ebx
call fcn.0048f8b2
mov edi, dword [esp + 0x24]
mov esi, dword [esp + 0x28]
mov eax, dword [esi + 0x10]
lea ecx, [edi + 4]
sub eax, ecx
sar eax, 2
add esp, 4
cmp eax, ebx
jle 0x44680e
add eax, eax
add eax, eax
push eax
push ecx
push eax
push edi
call fcn.004a02ed
add esp, 0x10
add dword [esi + 0x10], 0xfffffffc
mov eax, dword [esi + 0x10]
cmp dword [esi + 0xc], edi
ja 0x446822
cmp edi, eax
jbe 0x446c7a
call fcn.004a067d
jmp 0x446c7a
cmp esi, ebx
jne 0x44685f
push 0x60
call fcn.0048f878
add esp, 4
cmp eax, ebx
je 0x446847
mov ecx, eax
call fcn.0041a160
jmp 0x446849
xor eax, eax
mov ecx, dword [esp + 0x24]
mov esi, eax
lea eax, [esp + 0x14]
push eax
mov dword [esp + 0x18], esi
call fcn.00423950
jmp 0x446896
mov ecx, dword [esi + 0x14]
mov edx, dword [esi + 0x18]
push ebx
push ecx
push edx
lea eax, [edi + 0x1444]
push eax
lea ecx, [edi + 0x5820]
call fcn.004217d0
mov ecx, dword [esi]
mov dword [esp + 0x14], ecx
cmp ecx, ebx
je 0x446896
call fcn.0040bd90
mov ecx, dword [esp + 0x14]
push ecx
call fcn.0048f8b2
add esp, 4
mov edx, dword [esp + 0x28]
push ebx
push ebx
lea ecx, [edi + 0x1444]
push edx
call fcn.0040eae0
mov eax, dword [esp + 0x28]
push 1
push eax
lea ecx, [edi + 0x1444]
call fcn.0040fac0
mov ecx, dword [esp + 0x9c]
mov edx, dword [esp + 0x28]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x18]
mov dword [esi + 0xc], eax
mov dword [esi + 8], ecx
mov dword [esi + 4], ebp
push eax
mov ecx, edi
mov dword [esi + 0x10], edx
call fcn.0043b960
push eax
mov eax, dword [esp + 0x18]
lea ecx, [edi + 0x5820]
push eax
mov dword [esp + 0x20], ecx
call fcn.00428e80
mov ecx, dword [esp + 0x9c]
mov dword [esi], eax
mov dword [eax + 0xc8], 0x270f
mov edx, dword [esi]
mov dword [edx + 0xd0], ecx
imul ecx, ecx, 0x320
mov eax, dword [esi]
mov edx, ebp
sub edx, dword [eax + 0x10]
mov dword [esp + 0x54], ebx
mov dword [eax + 0xcc], edx
mov eax, dword [esi]
mov edx, ebp
sub edx, dword [eax + 0x10]
mov dword [esp + 0x58], ebx
mov dword [eax + 0x4c], edx
mov eax, dword [esi]
mov dword [eax + 0x54], ebp
imul ebp, ebp, 0x258
mov eax, dword [esi]
mov edx, dword [eax + 0xd0]
mov dword [eax + 0x50], edx
mov eax, dword [esi]
mov edx, dword [eax + 0xd0]
add edx, dword [eax + 0xc]
lea ecx, [ecx + ebp + 0x2710]
mov dword [eax + 0x58], edx
mov eax, dword [esi]
mov dword [eax + 0xec], 1
mov edx, dword [esi]
mov dword [esi + 0x24], edx
mov eax, dword [esi]
mov edx, dword [eax + 0xd0]
mov eax, dword [eax + 0xcc]
mov dword [esi + 0x1c], eax
mov dword [esi + 0x20], edx
mov edx, dword [edi + 0x5924]
mov eax, 1
sub edx, eax
cmp dword [esp + 0x94], 0x270f
mov dword [esi + 0x28], edx
mov dword [esi + 0x18], ecx
mov dword [esp + 0x5c], ebx
jne 0x446b01
mov dword [esi + 0x34], ebx
mov dword [edi + 0x6398], eax
mov ebp, dword [esi + 0x24]
mov eax, dword [esi + 0x28]
mov ecx, dword [esi + 0x1c]
mov edx, dword [esi + 0x20]
mov dword [esp + 0x40], ebp
mov ebp, dword [esi + 0x18]
mov dword [esp + 0x34], ebp
mov ebp, dword [esi + 0x14]
mov dword [esp + 0x30], ebp
mov ebp, eax
mov dword [esp + 0x44], ebp
mov ebp, dword [esi + 0x2c]
mov dword [esp + 0x48], ebp
mov ebp, dword [esi + 0x30]
mov dword [esp + 0x4c], ebp
mov ebp, dword [esi + 0x34]
mov dword [esp + 0x2c], eax
mov dword [esp + 0x38], ecx
mov dword [esp + 0x3c], edx
mov dword [esp + 0x50], ebp
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 0x6c], ecx
mov ecx, dword [esp + 0x30]
mov dword [esp + 0x70], edx
mov edx, dword [esp + 0x40]
mov dword [esp + 0x74], edx
mov edx, dword [esp + 0x44]
mov dword [esp + 0x68], eax
mov eax, dword [esp + 0x48]
mov dword [esp + 0x64], ecx
mov ecx, dword [esp + 0x4c]
mov dword [esp + 0xac], ebx
mov dword [esp + 0x88], ebx
mov dword [esp + 0x8c], ebx
mov dword [esp + 0x90], ebx
mov dword [esp + 0x78], edx
mov dword [esp + 0x7c], eax
mov dword [esp + 0x80], ecx
mov dword [esp + 0x84], ebp
lea edx, [esp + 0x60]
push edx
lea eax, [esp + 0x9c]
push eax
lea ecx, [edi + 0x58dc]
mov byte [esp + 0xb4], 1
call fcn.00421fa0
mov eax, dword [esp + 0x88]
cmp eax, ebx
je 0x446a92
push eax
call fcn.004a2159
add esp, 4
mov ecx, dword [esi + 0x24]
push ecx
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0xb0], 0xffffffff
call fcn.0041f550
mov eax, dword [esi + 0x24]
mov edx, dword [eax + 0x5c]
mov dword [esi + 0x54], edx
mov ecx, dword [eax + 0x60]
add eax, 0x4c
mov dword [esi + 0x58], ecx
mov edx, dword [eax + 0x18]
mov dword [esi + 0x5c], edx
mov ecx, dword [eax + 4]
mov dword [esi + 0x48], ecx
mov edx, dword [eax]
mov dword [esi + 0x44], edx
mov ecx, dword [eax + 8]
mov dword [esi + 0x4c], ecx
mov edx, dword [eax + 0xc]
mov dword [esi + 0x50], edx
mov eax, dword [esi + 0x24]
mov esi, dword [esi + 0x24]
mov ecx, dword [eax + 0x4c]
add eax, 0x4c
add esi, 0x6c
mov dword [esi], ecx
mov edx, dword [eax + 4]
mov dword [esi + 4], edx
mov ecx, dword [eax + 8]
mov dword [esi + 8], ecx
mov edx, dword [eax + 0xc]
mov dword [esi + 0xc], edx
jmp 0x446c7a
mov dword [esi + 0x2c], eax
mov ebp, dword [esi + 0x24]
mov eax, dword [esi + 0x28]
mov ecx, dword [esi + 0x1c]
mov edx, dword [esi + 0x20]
mov dword [esp + 0x40], ebp
mov ebp, dword [esi + 0x18]
mov dword [esp + 0x34], ebp
mov ebp, dword [esi + 0x14]
mov dword [esp + 0x30], ebp
mov ebp, eax
mov dword [esp + 0x44], ebp
mov ebp, dword [esi + 0x2c]
mov dword [esp + 0x48], ebp
mov ebp, dword [esi + 0x30]
mov dword [esp + 0x4c], ebp
mov ebp, dword [esi + 0x34]
mov dword [esp + 0x2c], eax
mov dword [esp + 0x38], ecx
mov dword [esp + 0x3c], edx
mov dword [esp + 0x50], ebp
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 0x6c], ecx
mov ecx, dword [esp + 0x34]
mov dword [esp + 0x70], edx
mov edx, dword [esp + 0x30]
mov dword [esp + 0x74], eax
mov eax, dword [esp + 0x44]
mov dword [esp + 0x68], ecx
mov ecx, dword [esp + 0x48]
mov dword [esp + 0x64], edx
mov edx, dword [esp + 0x4c]
mov dword [esp + 0xac], 2
mov dword [esp + 0x88], ebx
mov dword [esp + 0x8c], ebx
mov dword [esp + 0x90], ebx
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], ecx
mov dword [esp + 0x80], edx
mov dword [esp + 0x84], ebp
lea eax, [esp + 0x60]
push eax
lea ecx, [esp + 0x9c]
push ecx
lea ecx, [edi + 0x58dc]
mov byte [esp + 0xb4], 3
call fcn.00421fa0
mov eax, dword [esp + 0x88]
cmp eax, ebx
je 0x446be3
push eax
call fcn.004a2159
add esp, 4
mov edx, dword [esi + 0x24]
mov ebp, dword [esp + 0x18]
push edx
mov ecx, ebp
mov dword [esp + 0xb0], 0xffffffff
call fcn.0041f550
mov eax, dword [esi + 0x24]
mov ecx, dword [eax + 0x54]
mov edx, dword [esi + 0x4c]
sub ecx, dword [eax + 0x4c]
sub edx, dword [esi + 0x44]
lea ebx, [esi + 0x44]
cmp edx, ecx
jge 0x446c3c
mov ecx, dword [eax + 0x5c]
mov dword [ebx + 0x10], ecx
mov edx, dword [eax + 0x60]
mov dword [ebx + 0x14], edx
mov ecx, dword [eax + 0x64]
mov dword [ebx + 0x18], ecx
mov edx, dword [eax + 0x50]
mov dword [ebx + 4], edx
mov ecx, dword [eax + 0x4c]
mov dword [ebx], ecx
mov edx, dword [eax + 0x54]
mov dword [ebx + 8], edx
mov eax, dword [eax + 0x58]
mov dword [ebx + 0xc], eax
push ebx
mov ecx, ebp
call fcn.0041f760
push ebx
mov ecx, edi
call fcn.0043b7b0
mov esi, dword [esi + 0x24]
mov ecx, dword [esi + 0x5c]
add esi, 0x4c
mov dword [ebx + 0x10], ecx
mov edx, dword [esi + 0x14]
mov dword [ebx + 0x14], edx
mov eax, dword [esi + 0x18]
mov dword [ebx + 0x18], eax
mov ecx, dword [esi + 4]
mov dword [ebx + 4], ecx
mov edx, dword [esi]
mov dword [ebx], edx
mov eax, dword [esi + 8]
mov dword [ebx + 8], eax
mov ecx, dword [esi + 0xc]
mov dword [ebx + 0xc], ecx
mov ecx, dword [esp + 0xa4]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x9c
ret