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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x55ff32
sub esp, 0x6c
mov eax, dword [esp + 0x74]
cmp eax, 4
jge 0x55feb3
xor eax, eax
xor ecx, ecx
xor edx, edx
xor ebx, ebx
xor ebp, ebp
xor esi, esi
xor edi, edi
test al, al
je 0x55fe8a
mov dword [esp + 0x48], ebp
mov dword [esp + 0x44], esi
mov dword [esp + 0x58], ecx
mov dword [esp], edi
mov dword [esp + 4], ebx
mov dword [esp + 8], edx
mov eax, dword [esp + 0x7c]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x80]
mov dword [esp + 0x10], eax
call fcn.00571c70
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x2c]
mov ebx, dword [esp + 0x1c]
mov ebp, dword [esp + 0x20]
mov esi, dword [esp + 0x24]
mov edi, dword [esp + 0x18]
mov dword [esp + 0x64], edi
mov edi, dword [esp + 0x14]
test eax, eax
jne 0x55fe6d
mov dword [esp + 0x54], ebx
mov dword [esp + 0x60], edi
mov dword [esp + 0x3c], esi
mov dword [esp + 0x30], ebp
lea eax, [0x5c43c0]
mov dword [esp], eax
call fcn.0040b910
mov eax, dword [esp + 4]
mov dword [esp + 0x68], eax
mov ecx, dword [esp + 0x54]
mov dword [esp], ecx
mov ecx, dword [esp + 0x30]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x3c]
mov dword [esp + 8], ecx
lea ecx, [0x598c80]
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], eax
call fcn.005767b0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
test eax, eax
jne 0x55fe50
lea eax, [0x5c49e0]
mov dword [esp], eax
call fcn.0040b910
mov edi, dword [esp + 4]
mov eax, dword [esp + 0x44]
mov dword [edi + 4], eax
mov eax, dword [esp + 0x48]
mov dword [edi + 8], eax
mov eax, dword [0x71e9f0]
test eax, eax
jne 0x55fe42
mov ecx, dword [esp + 0x58]
mov dword [edi], ecx
mov ecx, dword [esp + 0x60]
mov dword [edi + 0xc], ecx
mov ecx, dword [0x71e9f0]
test ecx, ecx
jne 0x55fe29
mov ecx, dword [esp + 0x64]
mov dword [edi + 0x10], ecx
mov ecx, dword [esp + 0x68]
mov edx, dword [ecx]
mov ebx, dword [ecx + 4]
mov dword [edi + 0x14], edx
mov dword [edi + 0x18], ebx
mov edx, dword [ecx + 8]
mov dword [edi + 0x1c], edx
mov eax, dword [ecx + 0xc]
mov edx, dword [ecx + 0x10]
mov dword [edi + 0x24], edx
mov edx, dword [0x71e9f0]
test edx, edx
jne 0x55fe16
mov dword [edi + 0x20], eax
mov dword [esp + 0x5c], edi
mov eax, dword [ecx + 0x20]
mov edx, dword [ecx + 0x24]
mov dword [edi + 0x34], eax
mov dword [edi + 0x38], edx
mov eax, dword [ecx + 0x28]
mov edx, dword [ecx + 0x2c]
mov dword [edi + 0x3c], eax
mov dword [edi + 0x40], edx
mov eax, dword [ecx + 0x14]
mov edx, dword [ecx + 0x18]
mov ebx, dword [ecx + 0x1c]
jmp 0x55fa15
mov ebx, dword [esp + 0x38]
mov ebp, dword [esp + 0x50]
mov edx, dword [esp + 0x34]
mov ecx, dword [esp + 0x68]
mov edi, eax
mov eax, ebp
test edx, edx
jle 0x55fbc0
cmp edx, 4
jge 0x55fb35
xor eax, eax
xor edx, edx
xor ebx, ebx
xor ebp, ebp
xor esi, esi
xor eax, eax
mov dword [esp + 0x50], eax
xor eax, eax
test al, al
je 0x55fb0c
mov dword [esp + 0x38], ebx
mov dword [esp + 0x34], ebp
mov dword [esp], 0
mov dword [esp + 4], esi
mov dword [esp + 8], edx
call fcn.00448840
mov eax, dword [esp + 0x5c]
mov ecx, dword [eax + 0x2c]
mov edx, dword [esp + 0xc]
mov ebx, dword [eax + 0x28]
mov ebp, dword [eax + 0x30]
mov esi, dword [esp + 0x10]
lea edi, [ecx + 1]
cmp ebp, edi
jb 0x55faa9
lea ebp, [ecx + 1]
mov dword [eax + 0x2c], ebp
lea ebp, [ebx + ecx*8 + 4]
mov dword [ebp], esi
mov ebp, dword [0x71e9f0]
lea edi, [ebx + ecx*8]
test ebp, ebp
jne 0x55fa99
mov dword [edi], edx
jmp 0x55fa01
mov ecx, eax
mov eax, edx
call fcn.0045e220
mov eax, ecx
jmp 0x55fa01
mov dword [esp + 0x4c], esi
mov dword [esp + 0x64], edx
lea eax, [0x5a5ba0]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], edi
call fcn.00445360
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x5c]
mov dword [ebx + 0x30], edx
mov edx, dword [0x71e9f0]
test edx, edx
jne 0x55fb02
mov dword [ebx + 0x28], eax
mov edx, dword [esp + 0x64]
mov esi, dword [esp + 0x4c]
mov ebx, eax
mov eax, dword [esp + 0x5c]
jmp 0x55fa78
lea edi, [ebx + 0x28]
call fcn.0045e220
jmp 0x55faef
mov eax, dword [0x701330]
mov ecx, dword [0x701334]
mov dword [esp + 0x84], 0
mov dword [esp + 0x88], eax
mov dword [esp + 0x8c], ecx
add esp, 0x6c
ret
nop
lea ebp, [ebx - 4]
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and ebp, 4
add ebp, eax
lea esi, [edx - 4]
movzx ecx, byte [eax + 3]
movzx edi, byte [eax + 2]
shl edi, 8
or edi, ecx
movzx ecx, byte [eax + 1]
shl ecx, 0x10
or ecx, edi
movzx eax, byte [eax]
shl eax, 0x18
or eax, ecx
cmp eax, esi
jbe 0x55fb8d
mov ecx, dword [esp + 0x68]
mov edi, dword [esp + 0x5c]
xor eax, eax
xor edx, edx
xor ebx, ebx
xor ebp, ebp
xor esi, esi
xor ecx, ecx
mov dword [esp + 0x50], ecx
mov ecx, dword [esp + 0x68]
jmp 0x55fa38
sub edx, eax
sub ebx, eax
add ebx, 0xfffffffc
mov ecx, ebx
neg ebx
sar ebx, 0x1f
and ebx, eax
add ebx, ebp
add edx, 0xfffffffc
mov edi, dword [esp + 0x5c]
mov esi, ebp
mov dword [esp + 0x50], ebx
mov ebx, ecx
mov ebp, edx
mov ecx, dword [esp + 0x68]
mov edx, eax
mov eax, 1
jmp 0x55fa38
mov eax, dword [ecx + 0x30]
mov edx, dword [ecx + 0x34]
mov ebx, dword [ecx + 0x38]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
call fcn.0055f350
mov eax, dword [0x71e9f0]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x10]
mov ebp, dword [esp + 0x14]
test eax, eax
jne 0x55fe01
mov eax, dword [esp + 0x5c]
mov dword [eax + 0x44], ecx
test edx, edx
jne 0x55fde4
mov eax, dword [esp + 0x68]
mov ecx, dword [eax + 0x3c]
mov edx, dword [eax + 0x40]
mov ebx, dword [eax + 0x44]
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
call fcn.0055f350
mov eax, dword [0x71e9f0]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x10]
mov ebp, dword [esp + 0x14]
test eax, eax
jne 0x55fdd1
mov esi, dword [esp + 0x5c]
mov dword [esi + 0x48], ecx
test edx, edx
jne 0x55fdb4
mov ecx, dword [esp + 0x68]
mov eax, dword [ecx + 0x48]
mov edx, dword [ecx + 0x4c]
mov ebx, dword [ecx + 0x50]
mov dword [esi + 0x50], edx
mov dword [esi + 0x54], ebx
mov edx, dword [0x71e9f0]
test edx, edx
jne 0x55fda7
mov dword [esi + 0x4c], eax
mov eax, dword [ecx + 0x54]
mov edx, dword [ecx + 0x58]
mov ebx, dword [ecx + 0x5c]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
call fcn.005721a0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x10]
mov ebp, dword [esp + 0xc]
test eax, eax
jne 0x55fd8a
mov ecx, dword [esp + 0x5c]
mov dword [ecx + 0x58], ebp
mov edx, dword [0x71e9f0]
test edx, edx
jne 0x55fd7b
mov dword [ecx + 0x5c], ebx
mov eax, dword [esp + 0x68]
mov ecx, dword [eax + 0x60]
mov edx, dword [eax + 0x64]
mov eax, dword [eax + 0x68]
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call fcn.005607e0
mov eax, dword [0x71e9f0]
mov ecx, dword [esp + 0xc]
movzx edx, byte [esp + 0x1c]
mov ebx, dword [esp + 0x14]
test eax, eax
jne 0x55fd69
mov eax, dword [esp + 0x5c]
mov dword [eax + 0x60], ecx
test dl, dl
je 0x55fd04
test ebx, ebx
jle 0x55fd48
lea eax, [0x5abc80]
mov dword [esp], eax
call fcn.0040b910
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1a
lea ecx, [0x5d6af8]
mov dword [eax], ecx
mov dword [esp + 0x84], 0
lea ecx, [0x61098c]
mov dword [esp + 0x88], ecx
mov dword [esp + 0x8c], eax
add esp, 0x6c
ret
mov dword [esp + 0x84], eax
mov dword [esp + 0x88], 0
mov dword [esp + 0x8c], 0
add esp, 0x6c
ret
mov ebp, dword [esp + 0x5c]
lea edi, [ebp + 0x60]
mov eax, ecx
call fcn.0045e220
mov eax, ebp
jmp 0x55fcfc
lea edi, [ecx + 0x5c]
mov eax, ebx
call fcn.0045e220
jmp 0x55fcc1
mov dword [esp + 0x84], 0
mov dword [esp + 0x88], ecx
mov dword [esp + 0x8c], edx
add esp, 0x6c
ret
lea edi, [esi + 0x4c]
call fcn.0045e220
jmp 0x55fc74
mov dword [esp + 0x84], 0
mov dword [esp + 0x88], ebx
mov dword [esp + 0x8c], ebp
add esp, 0x6c
ret
mov esi, dword [esp + 0x5c]
lea edi, [esi + 0x48]
mov eax, ecx
call fcn.0045e220
jmp 0x55fc48
mov dword [esp + 0x84], 0
mov dword [esp + 0x88], ebx
mov dword [esp + 0x8c], ebp
add esp, 0x6c
ret
mov esi, dword [esp + 0x5c]
lea edi, [esi + 0x44]
mov eax, ecx
call fcn.0045e220
mov eax, esi
jmp 0x55fbfe
lea edx, [edi + 0x20]
mov ebx, edi
mov edi, edx
call fcn.0045e220
mov edi, ebx
jmp 0x55f9da
lea ecx, [edi + 0x10]
mov eax, edi
mov edi, ecx
mov edx, eax
mov eax, dword [esp + 0x64]
call fcn.0045e220
mov edi, edx
jmp 0x55f9ab
mov eax, dword [esp + 0x58]
call fcn.0045e220
jmp 0x55f98f
mov dword [esp + 0x84], 0
mov dword [esp + 0x88], ecx
mov dword [esp + 0x8c], edx
add esp, 0x6c
ret
mov dword [esp + 0x84], 0
mov dword [esp + 0x88], ecx
mov dword [esp + 0x8c], edx
add esp, 0x6c
ret
mov eax, dword [0x701330]
mov ecx, dword [0x701334]
mov dword [esp + 0x84], 0
mov dword [esp + 0x88], eax
mov dword [esp + 0x8c], ecx
add esp, 0x6c
ret
nop
mov ecx, dword [esp + 0x78]
lea edx, [ecx - 4]
mov dword [esp + 0x40], edx
neg edx
sar edx, 0x1f
and edx, 4
mov ebp, dword [esp + 0x70]
add edx, ebp
lea esi, [eax - 4]
movzx edi, byte [ebp + 3]
movzx ebx, byte [ebp + 2]
shl ebx, 8
or edi, ebx
movzx ebx, byte [ebp + 1]
shl ebx, 0x10
or ebx, edi
movzx ebp, byte [ebp]
shl ebp, 0x18
or ebp, ebx
cmp ebp, esi
jbe 0x55ff06
xor eax, eax
xor ecx, ecx
xor edx, edx
xor ebx, ebx
xor ebp, ebp
xor esi, esi
xor edi, edi
jmp 0x55f894
sub ecx, ebp
sub eax, ebp
add ecx, 0xfffffffc
mov ebx, ecx
neg ecx
sar ecx, 0x1f
and ecx, ebp
lea edi, [edx + ecx]
add eax, 0xfffffffc
mov ecx, edx
mov edx, ebx
mov ebx, eax
mov esi, ebp
mov eax, 1
mov ebp, dword [esp + 0x40]
jmp 0x55f894
call fcn.0045ccc0
jmp fcn.0055f860