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

Disassembly:
sub esp, 0xcc
mov ax, word [esp + 0xdc]
push ebx
push ebp
push esi
mov esi, ecx
push edi
mov byte [esi + 4], 0xa
mov word [esi + 0x10], ax
lea eax, [esi + 0xc4]
lea ecx, [esi + 0xc0]
push eax
lea edx, [esi + 0xbc]
push ecx
push edx
lea ecx, [esp + 0x60]
lea edx, [esp + 0x5c]
push ecx
lea eax, [esp + 0x5c]
push edx
lea ecx, [esp + 0x5c]
push eax
lea edx, [esp + 0x5c]
push ecx
lea eax, [esi + 0xb0]
push edx
lea ecx, [esi + 0xac]
push eax
lea edx, [esi + 0xa8]
push ecx
lea eax, [esp + 0x68]
push edx
lea ecx, [esp + 0x54]
push eax
lea edx, [esp + 0x54]
push ecx
lea eax, [esp + 0x54]
push edx
lea ecx, [esp + 0x54]
push eax
lea edx, [esp + 0x54]
push ecx
lea eax, [esi + 0x88]
push edx
lea ecx, [esi + 0x8c]
push eax
lea edx, [esi + 0x84]
push ecx
lea eax, [esp + 0x60]
push edx
lea ecx, [esp + 0x6e]
push eax
lea edx, [esp + 0x80]
push ecx
lea eax, [esp + 0x8a]
push edx
lea ecx, [esp + 0xb4]
push eax
lea edx, [esi + 0x68]
push ecx
lea eax, [esi + 0x64]
push edx
lea ecx, [esi + 0x62]
push eax
lea edx, [esi + 0x60]
push ecx
lea eax, [esi + 0x5e]
push edx
lea ecx, [esi + 0x5c]
push eax
lea edx, [esp + 0x88]
push ecx
lea eax, [esi + 0x58]
push edx
lea ecx, [esp + 0xb4]
push eax
lea edx, [esi + 0x54]
push ecx
lea edi, [esi + 0x3c]
lea ebx, [esi + 0x38]
lea ebp, [esi + 0x34]
push edx
lea eax, [esp + 0xe2]
lea ecx, [esp + 0xc2]
push eax
lea edx, [esi + 0x50]
push ecx
push edx
push edi
push ebx
lea eax, [esp + 0xea]
push ebp
lea ecx, [esi + 0x2c]
push eax
lea edx, [esi + 0x2a]
push ecx
lea eax, [esp + 0xdc]
push edx
lea ecx, [esp + 0xde]
push eax
lea edx, [esp + 0xfa]
push ecx
lea eax, [esp + 0xe2]
push edx
lea ecx, [esp + 0x10e]
push eax
lea edx, [esi + 0x16]
push ecx
lea eax, [esi + 0xe]
push edx
lea ecx, [esi + 0xc]
push eax
mov eax, dword [esp + 0x1ac]
lea edx, [esp + 0x130]
push ecx
push edx
push str._s__hd__hd__hd__hd__hd__hd__hd__hd__hd__f__hd__f__f__f__hd__hd__hd__hd__hd__hd__hd__hd__hd__hd__hd__f__f__hd__hd__hd__hd__hd__hd__f__f__hd__hd__hd__hd__hd__hd__d__d__d__hd__hd__hd__hd__hd__f__f__f
push eax
call fcn.00614dcf
add esp, 0xdc
lea ebp, [esi + 0x90]
lea ebx, [esi + 0x72]
lea edi, [esi + 0x78]
mov dword [esp + 0x5c], 3
mov edx, dword [esp + 0xe0]
lea ecx, [esp + 0x12]
push ecx
push edi
push ebx
push str._hd__f__hd
push edx
call fcn.00614dcf
mov al, byte [esp + 0x26]
add esp, 0x14
mov byte [ebp], al
mov eax, dword [esp + 0x5c]
add edi, 4
add ebx, 2
inc ebp
dec eax
mov dword [esp + 0x5c], eax
jne 0x47f1dc
mov ebp, dword [esp + 0xe0]
lea ecx, [esp + 0x60]
push ecx
push 0x670174
push ebp
call fcn.00614dcf
mov eax, dword [esp + 0x6c]
xor ebx, ebx
add esp, 0xc
cmp al, bl
mov byte [esi + 0x9b], al
jbe 0x47f2d4
and eax, 0xff
push 8
push eax
call fcn.006132aa
mov dword [esi + 0x9c], eax
mov al, byte [esi + 0x9b]
add esp, 8
xor edi, edi
cmp al, bl
jbe 0x47f2da
lea edx, [esp + 0x4e]
lea eax, [esp + 0x16]
push edx
lea ecx, [esp + 0x3e]
push eax
push ecx
push 0x670168
push ebp
call fcn.00614dcf
mov ax, word [esp + 0x4e]
add esp, 0x14
cmp ax, bx
jl 0x47f297
movsx edx, ax
mov eax, dword [esp + 0xe4]
mov ecx, dword [eax + edx*4]
jmp 0x47f299
xor ecx, ecx
mov edx, dword [esi + 0x9c]
movsx eax, di
shl eax, 3
inc edi
mov dword [eax + edx], ecx
mov ecx, dword [esi + 0x9c]
mov dl, byte [esp + 0x16]
mov byte [eax + ecx + 4], dl
mov ecx, dword [esi + 0x9c]
mov dl, byte [esp + 0x4e]
mov byte [eax + ecx + 5], dl
movzx ax, byte [esi + 0x9b]
cmp di, ax
jl 0x47f261
jmp 0x47f2da
mov dword [esi + 0x9c], ebx
lea ecx, [esi + 0xa4]
lea edx, [esp + 0x26]
push ecx
lea eax, [esp + 0x46]
push edx
lea ecx, [esp + 0x2a]
push eax
lea edx, [esp + 0x66]
push ecx
lea eax, [esp + 0x4c]
push edx
lea ecx, [esp + 0x4c]
push eax
lea edx, [esp + 0x56]
push ecx
lea eax, [esp + 0x36]
push edx
push eax
push str._hd__hd__hd__hd__hd__hd__hd__hd__u
push ebp
call fcn.00614dcf
mov ax, word [esp + 0x46]
mov ecx, dword [esp + 0x114]
add esp, 0x2c
cmp ax, bx
jl 0x47f330
movsx edx, ax
mov eax, dword [ecx + edx*4]
jmp 0x47f332
xor eax, eax
mov dword [esi + 0x40], eax
mov ax, word [esp + 0x3e]
cmp ax, bx
jl 0x47f347
movsx eax, ax
mov eax, dword [ecx + eax*4]
jmp 0x47f349
xor eax, eax
mov dword [esi + 0x48], eax
mov ax, word [esp + 0x1e]
cmp ax, bx
jl 0x47f35e
movsx edx, ax
mov eax, dword [ecx + edx*4]
jmp 0x47f360
xor eax, eax
mov dword [esi + 0x44], eax
mov ax, word [esp + 0x5a]
cmp ax, bx
jl 0x47f375
movsx eax, ax
mov eax, dword [ecx + eax*4]
jmp 0x47f377
xor eax, eax
mov cl, byte [esp + 0x22]
mov dl, byte [esp + 0x42]
mov dword [esi + 0x4c], eax
mov al, byte [esp + 0x26]
mov byte [esi + 0xa0], cl
mov byte [esi + 0xa1], dl
mov byte [esi + 0xa2], al
mov ax, word [esp + 0x52]
cmp ax, bx
jl 0x47f3b1
mov ecx, dword [esp + 0xe4]
movsx edx, ax
mov eax, dword [ecx + edx*4]
jmp 0x47f3ba
mov ecx, dword [esp + 0xe4]
xor eax, eax
mov dword [esi + 0x18], eax
mov ax, word [esp + 0x2a]
cmp ax, bx
jl 0x47f3cf
movsx eax, ax
mov eax, dword [ecx + eax*4]
jmp 0x47f3d1
xor eax, eax
mov dword [esi + 0x1c], eax
mov ax, word [esp + 0x46]
cmp ax, bx
jl 0x47f3e6
movsx edx, ax
mov eax, dword [ecx + edx*4]
jmp 0x47f3e8
xor eax, eax
mov dword [esi + 0x20], eax
mov ax, word [esp + 0x2e]
cmp ax, bx
jl 0x47f3fd
movsx eax, ax
mov eax, dword [ecx + eax*4]
jmp 0x47f3ff
xor eax, eax
mov cl, byte [esp + 0x58]
mov dl, byte [esp + 0x32]
mov dword [esi + 0x24], eax
mov al, byte [esp + 0x4a]
mov byte [esi + 0x6c], cl
mov cl, byte [esp + 0x36]
mov byte [esi + 0x6d], dl
mov dl, byte [esp + 0x56]
mov byte [esi + 0x30], al
mov al, byte [esp + 0x10]
mov byte [esi + 0x52], cl
mov cl, byte [esp + 0x14]
mov byte [esi + 0x5a], al
mov al, byte [esp + 0x1c]
fld dword [esi + 0xbc]
mov byte [esi + 0x53], dl
mov dl, byte [esp + 0x18]
mov byte [esi + 0x70], cl
mov cl, byte [esp + 0x20]
mov byte [esi + 0x94], al
mov al, byte [esp + 0x28]
fcomp dword [0x634594]
mov byte [esi + 0x93], dl
mov dl, byte [esp + 0x24]
mov byte [esi + 0x95], cl
mov byte [esi + 0x97], al
movzx cx, byte [esp + 0x2c]
mov al, byte [esp + 0x34]
mov byte [esi + 0x96], dl
mov dl, byte [esp + 0x30]
mov byte [esi + 0x56], al
mov al, byte [esp + 0x40]
mov word [esi + 0x6e], cx
mov cl, byte [esp + 0x38]
mov byte [esi + 0x28], dl
mov dl, byte [esp + 0x3c]
mov byte [esi + 0x98], al
mov al, byte [esp + 0x4c]
mov byte [esi + 0x99], cl
mov cl, byte [esp + 0x44]
mov byte [esi + 0x9a], dl
mov dl, byte [esp + 0x48]
mov byte [esi + 0xb7], al
fnstsw ax
mov byte [esi + 0xb5], cl
mov cl, byte [esp + 0x50]
mov byte [esi + 0xb6], dl
mov dl, byte [esp + 0x54]
test ah, 0x40
mov byte [esi + 0xb8], cl
mov byte [esi + 0xb9], dl
je 0x47f4e9
mov eax, dword [esi + 0x34]
mov dword [esi + 0xbc], eax
fld dword [esi + 0xc0]
fcomp dword [0x634594]
fnstsw ax
test ah, 0x40
je 0x47f505
mov ecx, dword [esi + 0x38]
mov dword [esi + 0xc0], ecx
fld dword [esi + 0xc4]
fcomp dword [0x634594]
fnstsw ax
test ah, 0x40
je 0x47f521
mov edx, dword [esi + 0x3c]
mov dword [esi + 0xc4], edx
mov ax, word [esi + 0x10]
lea edi, [esp + 0x64]
mov word [esi + 0x12], ax
mov word [esi + 0x14], ax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov byte [esi + 0xb4], bl
test cx, cx
mov byte [esi + 0x5b], bl
jle 0x47f55c
lea ecx, [esp + 0x64]
lea eax, [esi + 8]
push ecx
push eax
mov dword [eax], ebx
call fcn.004a0590
add esp, 8
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0xcc
ret 0x10