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

Disassembly:
sub esp, 0x5c
mov ecx, dword [esp + 0x60]
push ebx
push ebp
push esi
push edi
xor edi, edi
mov eax, 0x2710
mov dword [esp + 0x10], 1
mov dword [esp + 0x18], edi
mov dword [esp + 0x1c], edi
mov dword [esp + 0x20], edi
mov dword [esp + 0x24], edi
mov dword [esp + 0x28], edi
mov dword [esp + 0x2c], edi
mov dword [esp + 0x30], eax
mov dword [esp + 0x34], edi
mov dword [esp + 0x38], edi
mov dword [esp + 0x3c], edi
mov dword [esp + 0x40], edi
mov dword [esp + 0x44], edi
mov dword [esp + 0x48], edi
mov dword [esp + 0x4c], eax
mov dword [esp + 0x50], edi
mov dword [esp + 0x54], edi
mov dword [esp + 0x58], edi
mov dword [esp + 0x5c], edi
mov dword [esp + 0x60], edi
mov dword [esp + 0x64], edi
mov dword [esp + 0x68], eax
call fcn.0054a8e0
test eax, eax
mov dword [esp + 0x14], eax
je 0x47fa6d
push edi
mov ecx, eax
call fcn.00547260
mov esi, eax
test esi, esi
je 0x47fa6d
mov ebx, dword [esp + 0x74]
mov ecx, dword [esi]
call fcn.00549f70
mov ecx, dword [esp + 0x70]
push eax
call fcn.0054ade0
mov ecx, dword [esi]
mov ebp, eax
call fcn.0054a0f0
test eax, eax
je 0x47fa57
test ebp, ebp
je 0x47fa57
mov ecx, dword [ebp]
call fcn.0054a940
test eax, eax
je 0x47fa57
mov ecx, dword [esi]
lea edx, [esp + 0x34]
push edx
mov eax, dword [ecx]
call dword [eax + 0x34]
fld qword [esp + 0x78]
fld qword [esp + 0x34]
fsub st(1)
fstp qword [esp + 0x34]
fld qword [esp + 0x3c]
fsub st(1)
fstp qword [esp + 0x3c]
fld qword [esp + 0x50]
fadd st(1)
fstp qword [esp + 0x50]
fld qword [esp + 0x58]
fadd st(1)
fstp qword [esp + 0x58]
fstp st(0)
fld qword [ebx]
fcomp qword [esp + 0x34]
fnstsw ax
test ah, 1
jne 0x47fa2b
fld qword [ebx]
fcomp qword [esp + 0x50]
fnstsw ax
test ah, 0x41
je 0x47fa2b
fld qword [ebx + 8]
fcomp qword [esp + 0x3c]
fnstsw ax
test ah, 1
jne 0x47fa2b
fld qword [ebx + 8]
fcomp qword [esp + 0x58]
fnstsw ax
test ah, 0x41
je 0x47fa2b
mov al, byte [esp + 0x80]
test al, 1
je 0x47f91d
lea edx, [esp + 0x18]
mov dword [esp + 0x10], 1
mov ecx, dword [esi]
push edx
lea edx, [esp + 0x14]
mov eax, dword [ecx]
push edx
lea edx, [esp + 0x80]
push edx
push ebx
call dword [eax + 0x24]
test edi, edi
mov ebp, eax
jne 0x47f90f
mov ecx, dword [esi]
call fcn.00549ff0
test eax, eax
jne 0x47f90f
cmp dword [esp + 0x10], 1
jne 0x47f90f
mov edi, 1
push edi
jmp 0x47fa50
cmp ebp, 1
je 0x47fa79
jmp 0x47fa57
test al, 2
je 0x47f96f
lea edx, [esp + 0x18]
mov dword [esp + 0x10], 1
mov ecx, dword [esi]
push edx
lea edx, [esp + 0x14]
mov eax, dword [ecx]
push edx
lea edx, [esp + 0x80]
push edx
push ebx
call dword [eax + 0x24]
test edi, edi
jne 0x47fa57
cmp dword [esp + 0x10], 1
jne 0x47fa57
mov ecx, dword [esi]
mov edi, 1
call fcn.00549ff0
xor ecx, ecx
test eax, eax
sete cl
push ecx
jmp 0x47fa50
test al, 4
je 0x47f9f9
mov ecx, dword [esi]
call fcn.00549f80
cmp eax, 6
je 0x47fa57
mov ecx, dword [esi]
call fcn.00549f80
cmp eax, 9
je 0x47fa57
mov ecx, dword [esi]
call fcn.00549f80
cmp eax, 3
je 0x47fa57
mov ecx, dword [esi]
call fcn.00549f80
cmp eax, 0xa
je 0x47fa57
mov ecx, dword [esi]
call fcn.00549f80
cmp eax, 0xe
je 0x47fa57
lea eax, [esp + 0x18]
mov ebp, 1
push eax
lea eax, [esp + 0x14]
mov dword [esp + 0x14], ebp
mov ecx, dword [esi]
push eax
lea eax, [esp + 0x80]
mov edx, dword [ecx]
push eax
push ebx
call dword [edx + 0x24]
test edi, edi
jne 0x47fa4e
cmp dword [esp + 0x10], ebp
jne 0x47fa4e
mov edi, ebp
push ebp
jmp 0x47fa50
lea eax, [esp + 0x18]
mov ebp, 1
push eax
lea eax, [esp + 0x14]
mov dword [esp + 0x14], ebp
mov ecx, dword [esi]
push eax
lea eax, [esp + 0x80]
mov edx, dword [ecx]
push eax
push ebx
call dword [edx + 0x24]
test edi, edi
jne 0x47fa4e
cmp dword [esp + 0x10], ebp
jne 0x47fa4e
mov edi, ebp
push ebp
jmp 0x47fa50
mov ecx, dword [esi]
call fcn.00549ff0
test eax, eax
je 0x47fa57
mov eax, dword [esp + 0x80]
mov ecx, eax
and ecx, 1
cmp cl, 1
je 0x47fa57
and eax, 2
cmp al, 2
je 0x47fa57
push 0
mov ecx, dword [esi]
call fcn.0054a000
mov ecx, dword [esp + 0x14]
push 0
push esi
call fcn.00547400
mov esi, eax
test esi, esi
jne 0x47f805
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x5c
ret 0x14
mov eax, dword [esi]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x5c
ret 0x14