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

Disassembly:
sub esp, 0x5c
push ebx
push ebp
push esi
mov esi, ecx
push edi
lea eax, [esi + 0x30]
push eax
lea ecx, [esp + 0x50]
mov dword [esp + 0x14], esi
call fcn.0045f890
mov edx, dword [esi + 0x2c]
mov eax, dword [esp + 0x70]
cmp eax, edx
jb 0x45dfba
lea ecx, [esp + 0x4c]
call fcn.0045f880
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x5c
ret 0xc
mov ecx, dword [esp + 0x78]
xor edi, edi
cmp ecx, edi
je 0x45dfa5
add ecx, eax
cmp ecx, edx
jae 0x45dfd0
mov dword [esp + 0x70], ecx
jmp 0x45dfd6
mov dword [esp + 0x70], edx
mov ecx, edx
mov ebx, eax
mov edx, ecx
shr edx, 0xe
push edi
shr ebx, 0xe
sub esp, 8
cmp ebx, edx
mov dword [esp + 0x84], edx
jne 0x45e080
sub ecx, eax
mov esi, eax
mov eax, esp
mov ebp, ecx
lea ecx, [esp + 0x38]
and esi, 0x3fff
mov dword [eax], edi
mov dword [eax + 4], edi
call fcn.00455ba0
lea ecx, [esp + 0x14]
push ecx
mov ecx, dword [esp + 0x14]
lea edx, [esp + 0x30]
push edx
push ebx
call fcn.0045dd10
mov eax, dword [esp + 0x2c]
mov ecx, dword [eax + 0x14]
mov edx, dword [eax + 0x10]
push ecx
push edx
lea ecx, [esp + 0x44]
mov dword [esp + 0x44], edi
mov dword [esp + 0x4c], edi
mov dword [esp + 0x50], edi
call fcn.004db320
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x74]
push ebp
add eax, esi
push eax
push ecx
call fcn.00458f30
add esp, 0xc
lea ecx, [esp + 0x3c]
call fcn.00494cf0
lea ecx, [esp + 0x2c]
call fcn.0045d460
lea ecx, [esp + 0x4c]
call fcn.0045f880
mov eax, ebp
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x5c
ret 0xc
and eax, 0x3fff
mov ebp, eax
mov eax, esp
mov esi, 0x4000
lea ecx, [esp + 0x28]
sub esi, ebp
mov dword [eax], edi
mov dword [eax + 4], edi
call fcn.00455ba0
mov ecx, dword [esp + 0x10]
lea edx, [esp + 0x14]
push edx
lea eax, [esp + 0x20]
push eax
push ebx
call fcn.0045dd10
mov eax, dword [esp + 0x1c]
mov ecx, dword [eax + 0x14]
mov edx, dword [eax + 0x10]
push ecx
push edx
lea ecx, [esp + 0x44]
mov dword [esp + 0x44], edi
mov dword [esp + 0x4c], edi
mov dword [esp + 0x50], edi
call fcn.004db320
mov eax, dword [esp + 0x3c]
add eax, ebp
mov ebp, dword [esp + 0x74]
push esi
push eax
push ebp
call fcn.00458f30
add esp, 0xc
lea ecx, [esp + 0x3c]
call fcn.00494cf0
add ebp, esi
cmp dword [esp + 0x14], edi
mov dword [esp + 0x74], esi
jne 0x45e103
cmp dword [esp + 0x18], edi
je 0x45e122
lea ecx, [esp + 0x14]
push ecx
mov ecx, dword [esp + 0x14]
lea edx, [esp + 0x40]
push edx
add ecx, 0x10
call fcn.0045db20
lea ecx, [esp + 0x3c]
call fcn.0045d460
mov eax, dword [esp + 0x78]
add ebx, 1
cmp ebx, eax
jae 0x45e215
sub eax, ebx
mov ebx, eax
shl eax, 0xe
add eax, esi
mov dword [esp + 0x74], eax
lea eax, [esp + 0x14]
push eax
lea ecx, [esp + 0x40]
push ecx
mov ecx, dword [esp + 0x18]
add ecx, 0x10
call fcn.0045db20
lea ecx, [esp + 0x1c]
mov esi, eax
call fcn.0045d310
mov edx, dword [esi + 0xc]
mov eax, dword [esi + 8]
push edx
push eax
lea ecx, [esp + 0x24]
call fcn.004db320
cmp dword [esp + 0x24], edi
mov esi, dword [esp + 0x1c]
jne 0x45e180
cmp dword [esp + 0x28], edi
je 0x45e187
push esi
call dword [0x100b0088]
lea ecx, [esp + 0x3c]
call fcn.0045d310
mov eax, dword [esp + 0x44]
cmp eax, edi
mov ecx, dword [esp + 0x48]
jne 0x45e1a0
cmp ecx, edi
je 0x45e1a7
push ecx
push eax
call fcn.00451110
mov ecx, dword [esi + 0x14]
mov edx, dword [esi + 0x10]
push ecx
push edx
lea ecx, [esp + 0x34]
mov dword [esp + 0x4c], edi
mov dword [esp + 0x50], edi
mov dword [esp + 0x44], edi
mov dword [esp + 0x34], edi
mov dword [esp + 0x3c], edi
mov dword [esp + 0x40], edi
call fcn.004db320
mov eax, dword [esp + 0x2c]
push 0x4000
push eax
push ebp
call fcn.00458f30
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x44]
add esp, 0xc
cmp eax, edi
jne 0x45e1f3
cmp ecx, edi
je 0x45e1fa
push ecx
push eax
call fcn.00451110
add ebp, 0x4000
sub ebx, 1
mov dword [esp + 0x34], edi
mov dword [esp + 0x38], edi
mov dword [esp + 0x2c], edi
jne 0x45e13e
mov eax, dword [esp + 0x70]
and eax, 0x3fff
mov ebx, eax
je 0x45e2d6
lea ecx, [esp + 0x14]
push ecx
mov ecx, dword [esp + 0x14]
lea edx, [esp + 0x40]
push edx
add ecx, 0x10
call fcn.0045db20
lea ecx, [esp + 0x1c]
mov esi, eax
call fcn.0045d310
mov eax, dword [esi + 0xc]
mov ecx, dword [esi + 8]
push eax
push ecx
lea ecx, [esp + 0x24]
call fcn.004db320
cmp dword [esp + 0x24], edi
mov esi, dword [esp + 0x1c]
jne 0x45e268
cmp dword [esp + 0x28], edi
je 0x45e26f
push esi
call dword [0x100b0088]
lea ecx, [esp + 0x3c]
call fcn.0045d310
mov eax, dword [esp + 0x44]
cmp eax, edi
mov ecx, dword [esp + 0x48]
jne 0x45e288
cmp ecx, edi
je 0x45e28f
push ecx
push eax
call fcn.00451110
mov edx, dword [esi + 0x14]
mov eax, dword [esi + 0x10]
push edx
push eax
lea ecx, [esp + 0x44]
mov dword [esp + 0x44], edi
mov dword [esp + 0x4c], edi
mov dword [esp + 0x50], edi
call fcn.004db320
mov ecx, dword [esp + 0x3c]
push ebx
push ecx
push ebp
call fcn.00458f30
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x54]
add esp, 0xc
cmp eax, edi
jne 0x45e2cb
cmp ecx, edi
je 0x45e2d2
push ecx
push eax
call fcn.00451110
add dword [esp + 0x74], ebx
lea ecx, [esp + 0x1c]
call fcn.0045d310
mov eax, dword [esp + 0x24]
cmp eax, edi
mov ecx, dword [esp + 0x28]
jne 0x45e2ef
cmp ecx, edi
je 0x45e2f6
push ecx
push eax
call fcn.00451110
lea ecx, [esp + 0x4c]
call fcn.0045f880
mov eax, dword [esp + 0x74]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x5c
ret 0xc