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

Disassembly:
jmp 0x518320
push ecx
mov eax, dword [esp + 8]
push esi
push eax
mov ecx, 0x7b1b98
call fcn.0040d2ba
mov esi, eax
test esi, esi
je 0x518600
push edi
push 0x50
push 0
push 0x7e7d44
call fcn.006061b0
mov edx, dword [esi]
mov eax, dword [edx + 0x78]
add esp, 0xc
mov ecx, esi
call eax
movzx ecx, ax
push ecx
mov ecx, 0x7b1b98
call fcn.004010eb
mov esi, eax
movzx edx, word [esi + 0xc6]
push edx
mov ecx, 0x7c4f78
call fcn.0040c3f1
mov edi, eax
movzx eax, word [esi + 0xc8]
fnstcw word [esp + 0x10]
imul eax, eax, 0x68
mov ecx, dword [eax + edi + 8]
mov dword [0x7e7d44], ecx
movzx edx, word [esi + 0xc8]
imul edx, edx, 0x68
mov eax, dword [edx + edi + 0xc]
mov dword [0x7e7d48], eax
movzx ecx, word [esi + 0xc8]
movzx eax, word [esp + 0x10]
imul ecx, ecx, 0x68
fld dword [ecx + edi + 0x20]
or eax, 0xc00
mov dword [esp + 8], eax
fldcw word [esp + 8]
fistp dword [esp + 8]
movzx edx, word [esp + 8]
mov word [0x7e7d50], dx
movzx eax, word [esi + 0xc8]
fldcw word [esp + 0x10]
imul eax, eax, 0x68
mov ecx, dword [eax + edi + 0x10]
mov dword [0x7e7d4c], ecx
movzx edx, word [esi + 0xc8]
imul edx, edx, 0x68
movzx eax, word [edx + edi + 0x18]
mov word [0x7e7d52], ax
movzx ecx, word [esi + 0xc8]
imul ecx, ecx, 0x68
movzx edx, word [ecx + edi + 0x1a]
mov word [0x7e7d54], dx
movzx eax, word [esi + 0xc8]
imul eax, eax, 0x68
mov cx, word [eax + edi + 0x1c]
mov word [0x7e7d56], cx
movzx edx, word [esi + 0xc8]
imul edx, edx, 0x68
movzx eax, word [edx + edi + 0x1e]
mov word [0x7e7d58], ax
movzx ecx, word [esi + 0xc8]
imul ecx, ecx, 0x68
fld dword [ecx + edi + 0x14]
fstp dword [0x7e7d5c]
movzx edx, word [esi + 0xc8]
imul edx, edx, 0x68
mov eax, dword [edx + edi - 0xc]
fild dword [edx + edi - 0xc]
test eax, eax
jns 0x518473
fadd dword [0x6405a4]
push ecx
fstp dword [0x7e7d60]
movzx ecx, word [esi + 0xc8]
fld1
imul ecx, ecx, 0x68
fstp dword [esp]
lea edx, [ecx + edi + 0x24]
push edx
mov ecx, 0x7e7d64
call fcn.0040d9b8
movzx eax, word [esi + 0xc8]
fld1
imul eax, eax, 0x68
push ecx
lea ecx, [eax + edi + 0x3c]
fstp dword [esp]
push ecx
mov ecx, 0x7e7d7c
call fcn.0040d9b8
mov edi, 0x215
lea esp, [esp]
push edi
push 7
mov ecx, 0x7b1b98
call fcn.0040a961
mov esi, eax
test esi, esi
je 0x5185e5
mov edx, dword [esi]
mov eax, dword [edx + 0x74]
mov ecx, esi
call eax
push eax
mov ecx, 0x7e7d28
call fcn.0040c19e
test eax, eax
je 0x5185e5
cmp dword [eax + 0xc], 0
je 0x5185e5
mov edx, dword [esi]
mov eax, dword [edx + 0x78]
mov ecx, esi
call eax
movzx ecx, ax
push ecx
mov ecx, 0x7b1b98
call fcn.004010eb
mov esi, eax
test esi, esi
je 0x5185e5
mov edx, dword [esi + 0x64]
add dword [0x7e7d44], edx
movzx eax, word [esi + 0x6c]
add dword [0x7e7d48], eax
movzx ecx, word [esi + 0xc4]
add word [0x7e7d50], cx
movzx edx, word [esi + 0xa8]
add dword [0x7e7d4c], edx
movzx eax, word [esi + 0xa0]
add word [0x7e7d52], ax
movzx ecx, word [esi + 0xa2]
add word [0x7e7d54], cx
mov dx, word [esi + 0xa4]
add word [0x7e7d56], dx
movzx eax, word [esi + 0xa6]
add word [0x7e7d58], ax
movzx ecx, word [esi + 0xce]
mov dword [esp + 0x10], ecx
push ecx
lea eax, [esi + 0xac]
fild dword [esp + 0x14]
mov ecx, 0x7e7d64
fadd dword [0x7e7d5c]
fstp dword [0x7e7d5c]
movzx edx, word [esi + 0xcc]
mov dword [esp + 0x14], edx
fild dword [esp + 0x14]
fadd dword [0x7e7d60]
fstp dword [0x7e7d60]
fld1
fstp dword [esp]
push eax
call fcn.0040d9b8
fld1
push ecx
fstp dword [esp]
add esi, 0x70
push esi
mov ecx, 0x7e7d7c
call fcn.0040d9b8
inc edi
mov ecx, 0x21c
cmp di, cx
jb 0x5184c0
mov ecx, dword [0x7a01e8]
call fcn.0040c8ba
pop edi
pop esi
pop ecx
ret 4