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

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x14
mov edx, dword [ebp + 8]
push ebx
mov ebx, ecx
mov dword [ebx], 0x4f8250
mov eax, dword [edx]
mov dword [ebx + 0x20], eax
mov eax, dword [edx + 4]
push esi
mov dword [ebx + 4], eax
mov eax, dword [edx + 8]
push edi
mov dword [ebx + 0x60], eax
mov eax, dword [edx + 0xc]
push 6
mov dword [ebx + 0x64], eax
lea edi, [ebx + 0x3c]
lea esi, [edx + 0x28]
pop ecx
rep movsd dword es:[edi], dword [esi]
xor esi, esi
cmp dword [edx + 0x40], esi
mov eax, 0x515c98
jne 0x451fba
mov eax, 0x515c18
mov dword [ebx + 0x34], eax
mov eax, dword [ebp + 0xc]
shr eax, 3
mov dword [ebp + 8], eax
mov dword [ebx + 0x78], eax
xor eax, eax
cmp dword [ebp + 0xc], esi
mov dword [ebx + 0x54], esi
setne al
mov dword [ebx + 0x58], esi
mov dword [ebp - 4], eax
mov dword [ebx + 0xc], eax
mov eax, dword [ebp + 0x10]
mov dword [ebx + 8], eax
mov eax, dword [edx + 0x4c]
mov dword [ebx + 0x18], eax
mov eax, dword [ebx + 4]
cmp eax, 0x29
je 0x451ffa
cmp eax, 0x28
je 0x451ffa
xor eax, eax
jmp 0x451ffd
xor eax, eax
inc eax
cmp dword [ebx + 0x18], esi
mov dword [ebx + 0x1c], eax
mov dword [ebx + 0x38], esi
mov eax, dword [edx + 0x48]
mov dword [ebx + 0x10], eax
mov dword [ebx + 0x14], esi
mov dword [ebx + 0x5c], esi
je 0x45206d
mov ecx, dword [edx + 0x4c]
fld dword [0x4f34bc]
mov eax, ecx
shr eax, 0x10
movzx eax, al
mov dword [ebp + 0xc], eax
mov eax, ecx
shr eax, 8
fild dword [ebp + 0xc]
movzx eax, al
fmul st(1)
mov dword [ebp + 0xc], eax
movzx eax, cl
fstp dword [ebp - 0x14]
fild dword [ebp + 0xc]
mov dword [ebp + 0xc], eax
shr ecx, 0x18
lea edi, [ebx + 0x24]
fmul st(1)
lea esi, [ebp - 0x14]
fstp dword [ebp - 0x10]
fild dword [ebp + 0xc]
mov dword [ebp + 0xc], ecx
fmul st(1)
fstp dword [ebp - 0xc]
fild dword [ebp + 0xc]
fmul st(1)
fstp dword [ebp - 8]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
fstp st(0)
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
xor esi, esi
cmp dword [ebp + 0x10], 2
jne 0x45207c
cmp dword [ebx + 4], 0x3d
je 0x452085
mov dword [ebx + 0x10], esi
cmp dword [ebp + 0x10], 3
jne 0x452085
mov dword [ebx + 0x10], esi
mov ecx, dword [ebx + 0x3c]
mov eax, dword [ebx + 0x44]
mov esi, dword [ebx + 0x40]
mov edi, dword [ebx + 0x48]
sub eax, ecx
mov dword [ebx + 0x68], eax
imul eax, dword [ebp + 8]
sub edi, esi
mov esi, dword [ebx + 0x4c]
mov dword [ebx + 0x6c], edi
mov edi, dword [ebx + 0x50]
mov dword [ebx + 0x74], eax
sub edi, esi
xor eax, eax
cmp dword [ebp - 4], eax
mov dword [ebx + 0x70], edi
je 0x4520e7
imul ecx, dword [ebp + 8]
mov edi, dword [ebx + 0x60]
imul edi, dword [ebx + 0x40]
add ecx, edi
mov edi, dword [ebx + 0x64]
imul edi, esi
add ecx, edi
add dword [ebx + 0x20], ecx
mov ecx, dword [ebx + 0x68]
mov dword [ebx + 0x44], ecx
mov ecx, dword [ebx + 0x6c]
mov dword [ebx + 0x48], ecx
mov ecx, dword [ebx + 0x70]
mov dword [ebx + 0x3c], eax
mov dword [ebx + 0x40], eax
mov dword [ebx + 0x4c], eax
mov dword [ebx + 0x50], ecx
cmp dword [edx + 0x44], eax
je 0x452134
mov esi, dword [ebx + 0x68]
inc esi
inc esi
mov eax, esi
shl eax, 4
push eax
call fcn.00432f36
mov edi, eax
test edi, edi
pop ecx
je 0x452113
push 0x441d02
push esi
push 0x10
push edi
call fcn.0044243c
jmp 0x452115
xor edi, edi
test edi, edi
mov dword [ebx + 0x5c], edi
je 0x452134
mov ecx, dword [ebx + 0x68]
inc ecx
inc ecx
shl ecx, 4
mov edx, ecx
shr ecx, 2
xor eax, eax
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
pop edi
pop esi
mov eax, ebx
pop ebx
leave
ret 0xc