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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x55f717
sub esp, 0x50
nop
mov eax, dword [esp + 0x58]
cmp eax, 4
jge 0x55f689
xor eax, eax
xor ecx, ecx
xor edx, edx
xor ebx, ebx
xor ebp, ebp
xor esi, esi
xor edi, edi
test cl, cl
je 0x55f65d
test edx, edx
je 0x55f62b
mov byte [esp + 0x2f], cl
mov dword [esp + 0x40], ebx
mov dword [esp + 0x30], esi
mov dword [esp + 0x34], edi
nop
mov ecx, dword [0x723a00]
mov ebx, dword [0x7239fc]
mov esi, dword [str._BDFACE]
mov dword [esp], ebp
mov dword [esp + 4], edx
mov dword [esp + 8], eax
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], ebx
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], 0
mov dword [esp + 0x1c], 0xffffffff
call fcn.004b4440
mov eax, dword [esp + 0x24]
mov dword [esp + 0x38], eax
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x44], ecx
lea edx, [0x597b60]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], eax
call fcn.00438f10
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x38]
test ecx, ecx
jle 0x55f625
mov dword [esp + 0x4c], eax
mov edx, dword [esp + 0x44]
xor ebx, ebx
jmp 0x55f591
mov ebp, dword [esp + 0x48]
add ebp, 0xc
mov edx, ebp
mov ebx, eax
mov dword [esp + 0x48], edx
mov dword [esp + 0x3c], ebx
mov eax, dword [edx]
mov ecx, dword [edx + 4]
mov ebp, dword [edx + 8]
mov dword [esp], 0
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ebp
call fcn.0043c470
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x4c]
lea edx, [ecx + eax*8 + 4]
mov ebx, dword [esp + 0x10]
mov ebp, dword [esp + 0x14]
mov dword [edx], ebp
mov edx, dword [0x738420]
lea edi, [ecx + eax*8]
test edx, edx
jne 0x55f618
mov dword [edi], ebx
inc eax
mov edx, dword [esp + 0x38]
cmp eax, edx
jl 0x55f586
mov dword [esp + 0x60], ecx
mov dword [esp + 0x64], edx
mov dword [esp + 0x68], edx
mov eax, dword [esp + 0x40]
mov dword [esp + 0x6c], eax
mov eax, dword [esp + 0x30]
mov dword [esp + 0x70], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 0x74], eax
movzx eax, byte [esp + 0x2f]
mov byte [esp + 0x78], al
add esp, 0x50
ret
mov edx, eax
mov eax, ebx
call fcn.0044cea0
mov eax, edx
jmp 0x55f5de
mov edx, ecx
mov ecx, eax
jmp 0x55f5e7
mov eax, dword [0x723a10]
mov edx, dword [0x723a0c]
mov ebp, dword [0x723a08]
mov dword [esp + 0x60], ebp
mov dword [esp + 0x64], edx
mov dword [esp + 0x68], eax
mov dword [esp + 0x6c], ebx
mov dword [esp + 0x70], esi
mov dword [esp + 0x74], edi
mov byte [esp + 0x78], cl
add esp, 0x50
ret
mov dword [esp + 0x60], 0
mov dword [esp + 0x64], 0
mov dword [esp + 0x68], 0
mov dword [esp + 0x6c], ebx
mov dword [esp + 0x70], esi
mov dword [esp + 0x74], edi
mov byte [esp + 0x78], cl
add esp, 0x50
ret
nop
mov ecx, dword [esp + 0x5c]
add ecx, 0xfffffffc
mov edx, ecx
neg ecx
sar ecx, 0x1f
and ecx, 4
mov ebx, dword [esp + 0x54]
add ecx, ebx
add eax, 0xfffffffc
movzx ebp, byte [ebx + 2]
movzx esi, byte [ebx + 3]
shl ebp, 8
or esi, ebp
movzx ebp, byte [ebx + 1]
shl ebp, 0x10
or ebp, esi
movzx ebx, byte [ebx]
shl ebx, 0x18
or ebx, ebp
cmp eax, ebx
jae 0x55f6d9
xor eax, eax
xor ecx, ecx
xor edx, edx
xor ebx, ebx
xor ebp, ebp
xor esi, esi
xor edi, edi
jmp 0x55f4e5
test ebx, ebx
jl 0x55f710
mov edi, edx
sub edi, ebx
mov ebp, edi
xchg edi, ebx
neg ebx
xchg edi, ebx
sar edi, 0x1f
and edi, ebx
lea esi, [edi + ecx]
sub eax, ebx
mov edi, ebp
mov ebp, ecx
mov ecx, 1
mov ecx, eax
mov eax, edx
mov edx, ebx
mov ebx, esi
mov esi, ecx
mov ecx, 1
jmp 0x55f4e5
call fcn.00427100
ud2
call fcn.0044b750
jmp fcn.0055f4b0