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

Disassembly:
sub esp, 0x58
mov eax, dword [esp + 0x5c]
cdq
idiv dword [0x6978cc]
push ebx
push ebp
push esi
push edi
mov dword [0x8488f4], 1
mov dword [0x8472c8], edx
call fcn.00455420
call fcn.0045eda0
push 1
call fcn.0046b290
call fcn.00533160
mov ecx, dword [0x6978d8]
mov eax, dword [0x6978d4]
mov edx, dword [0x6978dc]
xor esi, esi
mov dword [esp + 0x30], ecx
mov ecx, dword [0x8472cc]
mov dword [esp + 0x2c], eax
mov eax, dword [0x6978e0]
push ecx
mov dword [esp + 0x38], edx
mov dword [esp + 0x3c], eax
mov dword [0x8472b0], esi
mov dword [0x8472b4], esi
mov dword [0x8472b8], esi
mov dword [0x8472bc], esi
mov dword [0x8472c0], esi
mov dword [0x8472c4], esi
call fcn.00529280
mov edx, dword [0x8472cc]
push edx
mov dword [esp + 0x28], eax
call fcn.00529510
mov edi, eax
push edi
mov dword [esp + 0x24], edi
call fcn.004b5a50
add esp, 0x10
cmp dword [0x6978cc], esi
mov dword [esp + 0x18], eax
mov ebp, 0x83e280
mov ebx, 0x83f940
jle 0x45f198
mov dword [esp + 0x10], esi
jmp 0x45f063
mov edi, dword [esp + 0x14]
mov eax, dword [0x69647c]
mov ecx, dword [esp + 0x10]
add ecx, eax
mov eax, dword [0x8472cc]
lea edx, [esp + 0x28]
push edx
add eax, esi
push eax
push esi
mov dword [esp + 0x78], ecx
call fcn.00416640
mov ecx, dword [esp + 0x78]
push esi
push 0
push 0
mov byte [ecx + 0x1a0], 0
call fcn.00417990
add esp, 0x18
cmp edi, 0x31
jne 0x45f0a9
mov eax, 0x1ea
jmp 0x45f0b3
mov eax, dword [esp + 0x18]
lea edx, [edi + edi*4]
lea eax, [eax + edx*2]
push eax
push esi
call fcn.00415980
push 0x40490fdb
push esi
call fcn.00415ac0
push ebx
push ebp
push esi
push 0
call fcn.0046b6e0
mov dword [esi*4 + 0x8472b0], eax
mov dword [eax + 8], ebp
mov ecx, dword [ebx + 0x80]
mov edx, dword [esi*4 + 0x8472b0]
add esp, 0x20
neg ecx
sbb ecx, ecx
and ecx, ebx
mov dword [edx + 0xc4], ecx
mov ecx, dword [esp + 0x1c]
cmp ecx, 0x2c
jge 0x45f10c
mov eax, esi
cdq
sub eax, edx
lea ecx, [ecx + ecx*2]
sar eax, 1
add ecx, eax
jmp 0x45f10f
add ecx, 0x58
mov edx, dword [esp + 0x6c]
lea eax, [ecx + ecx*8]
mov ecx, dword [0x8c0e48]
shl eax, 4
add eax, ecx
mov dword [ebp + 0x74], eax
movsx ecx, byte [edx + 0x1a6]
lea edi, [ecx + ecx*8]
mov edx, dword [edi*8 + 0x8476f8]
lea edi, [edi*8 + 0x8476e8]
mov dword [edi + 0x18], eax
lea eax, [esp + 0x24]
push eax
mov eax, dword [esp + 0x70]
lea ecx, [esp + 0x24]
push ecx
mov ecx, dword [ebp + 0x84]
push edx
add eax, 0x80
push eax
push ecx
call fcn.0046a070
mov dx, word [esp + 0x34]
mov ax, word [esp + 0x38]
add dword [esp + 0x24], 0x230
add esi, 1
add esp, 0x14
add ebp, 0x88
add ebx, 0x88
cmp esi, dword [0x6978cc]
mov word [edi + 0x1e], dx
mov word [edi + 0x1c], ax
jl 0x45f05f
movss xmm0, dword [0x64f6fc]
movss xmm1, dword [0x64f6f8]
movss dword [esp + 0x48], xmm0
movss xmm0, dword [0x64f6f4]
movss dword [esp + 0x4c], xmm0
movss xmm0, dword [0x64f6f0]
movss dword [esp + 0x50], xmm0
movss xmm0, dword [0x649444]
movss dword [esp + 0x54], xmm0
movss xmm0, dword [0x64f6ec]
movss dword [esp + 0x58], xmm0
movss xmm0, dword [0x64e48c]
movss dword [esp + 0x5c], xmm0
movss xmm0, dword [0x64f6e8]
movss dword [esp + 0x38], xmm1
movss xmm1, dword [0x64f6e4]
lea ecx, [esp + 0x38]
movss dword [esp + 0x60], xmm0
xorps xmm0, xmm0
movss dword [esp + 0x3c], xmm1
movss xmm1, dword [0x64f6e0]
push ecx
movss dword [esp + 0x68], xmm0
movss dword [esp + 0x44], xmm1
movss dword [esp + 0x48], xmm0
call fcn.004c3090
lea edx, [esp + 0x4c]
push edx
push 0
call fcn.004c3020
lea eax, [esp + 0x64]
push eax
push 0
call fcn.004c2f90
push 0xa1c2dc
push 1
call fcn.004c3020
push 0xa1c2dc
push 1
call fcn.004c2f90
push 0xa1c2dc
push 2
call fcn.004c3020
push 0xa1c2dc
push 2
call fcn.004c2f90
call fcn.004af200
call fcn.0052a960
xorps xmm0, xmm0
movss dword [esp + 0x8c], xmm0
movss xmm0, dword [0x64f6dc]
movss dword [esp + 0x90], xmm0
movss xmm0, dword [0x649708]
movss dword [esp + 0x94], xmm0
movss xmm0, dword [0x649444]
lea ecx, [esp + 0x8c]
movss dword [esp + 0x98], xmm0
movss xmm0, dword [esp + 0x60]
subss xmm0, dword [0x64971c]
push ecx
push 0
movss dword [esp + 0x68], xmm0
call fcn.0052ad10
lea edx, [esp + 0x64]
push edx
push 0
call fcn.0052ad80
add esp, 0x44
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x58
ret