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

Disassembly:
mov ecx, dword [0xe11d80]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x56ef33
sub esp, 0x70
mov eax, dword [esp + 0x78]
test eax, eax
je 0x56eedc
mov eax, dword [eax + 8]
cmp eax, 0x62de383d
ja 0x56ea02
cmp eax, 0x43cfbb1f
ja 0x56e985
cmp eax, 0x2e74d42b
jne 0x56e926
mov eax, dword [esp + 0x78]
lea ecx, [0x8bf2c0]
cmp eax, ecx
je 0x56ea9a
jmp 0x56eedc
cmp eax, 0x338a7ec0
jne 0x56e944
mov eax, dword [esp + 0x78]
lea ecx, [0x8bf380]
cmp eax, ecx
je 0x56ecc8
jmp 0x56eedc
cmp eax, 0x43cfbb1f
jne 0x56eedc
mov eax, dword [esp + 0x78]
lea ecx, [0x8c6420]
cmp eax, ecx
jne 0x56eedc
mov eax, dword [esp + 0x74]
mov dword [esp], eax
mov eax, dword [esp + 0x7c]
mov dword [esp + 4], eax
call fcn.0056f150
movzx eax, byte [esp + 8]
mov byte [esp + 0x80], al
add esp, 0x70
ret
cmp eax, 0x49163278
jne 0x56e9a3
mov eax, dword [esp + 0x78]
lea ecx, [0x8bf640]
cmp eax, ecx
je 0x56ecc8
jmp 0x56eedc
cmp eax, 0x5051f1be
jne 0x56e9e0
mov eax, dword [esp + 0x78]
lea ecx, [0x959920]
cmp eax, ecx
jne 0x56eedc
mov eax, dword [esp + 0x74]
mov dword [esp], eax
mov eax, dword [esp + 0x7c]
mov dword [esp + 4], eax
call fcn.0056ef40
movzx eax, byte [esp + 8]
mov byte [esp + 0x80], al
add esp, 0x70
ret
cmp eax, 0x62de383d
jne 0x56eedc
mov eax, dword [esp + 0x78]
lea ecx, [0x8bf280]
cmp eax, ecx
je 0x56ea9a
jmp 0x56eedc
cmp eax, 0xba585d67
ja 0x56ea63
cmp eax, 0x6e78e923
jne 0x56ea27
mov eax, dword [esp + 0x78]
lea ecx, [0x8bf400]
cmp eax, ecx
je 0x56ecc8
jmp 0x56eedc
cmp eax, 0x889ce7f8
jne 0x56ea45
mov eax, dword [esp + 0x78]
lea ecx, [0x8bf780]
cmp eax, ecx
je 0x56ecc8
jmp 0x56eedc
cmp eax, 0xba585d67
jne 0x56eedc
mov eax, dword [esp + 0x78]
lea ecx, [0x8bf200]
cmp eax, ecx
je 0x56ea9a
jmp 0x56eedc
cmp eax, 0xc3230e0b
jne 0x56ea7d
mov eax, dword [esp + 0x78]
lea ecx, [0x8bf240]
cmp eax, ecx
je 0x56ea9a
jmp 0x56eedc
cmp eax, 0xd6631a7c
jne 0x56ecab
mov eax, dword [esp + 0x78]
lea ecx, [0x8bf300]
cmp eax, ecx
jne 0x56eedc
mov dword [esp + 0x48], 0
mov dword [esp + 0x4c], 0
mov eax, dword [esp + 0x74]
mov dword [esp], eax
lea eax, [esp + 0x48]
mov dword [esp + 4], eax
call fcn.0056f250
movzx eax, byte [esp + 8]
test al, al
je 0x56ec9f
mov eax, dword [esp + 0x78]
test eax, eax
je 0x56eb0c
mov dword [esp + 0x68], eax
mov ecx, dword [esp + 0x7c]
mov dword [esp + 0x6c], ecx
mov edx, dword [esp + 0x68]
test edx, edx
je 0x56eb04
movzx ebx, byte [edx + 0xf]
nop
mov ebp, ebx
and ebx, 0x1f
xchg ebp, eax
test al, 0x20
xchg ebp, eax
jne 0x56eafe
or ebx, 0x80
mov ebp, dword [esp + 0x6c]
jmp 0x56eb12
xor ebx, ebx
xor edx, edx
xor ebp, ebp
jmp 0x56eb12
xor ebx, ebx
xor edx, edx
xor ebp, ebp
mov dword [esp], edx
mov dword [esp + 4], ebp
mov dword [esp + 8], ebx
call fcn.00496a00
mov eax, dword [esp + 0x14]
and eax, 0x1f
lea ecx, [eax - 2]
cmp ecx, 4
ja 0x56eef4
mov eax, dword [esp + 0x48]
mov dword [esp + 0x1c], eax
mov edx, dword [esp + 0x4c]
mov dword [esp + 0x24], edx
mov ebx, dword [esp + 0xc]
mov ebx, dword [ebx]
shl ebx, 3
lea ecx, [ebx - 0x40]
neg ecx
mov dword [esp + 0x3c], ecx
mov ebx, eax
shl eax, cl
shl edx, cl
lea esi, [ecx - 0x20]
mov dword [esp + 0x38], esi
mov edi, ecx
mov ecx, esi
shl ebx, cl
mov dword [esp + 0x34], ebx
neg ecx
mov dword [esp + 0x30], ecx
mov ebp, dword [esp + 0x1c]
shr ebp, cl
shr edi, 5
cmp ecx, 0x20
sbb ecx, ecx
mov dword [esp + 0x2c], ecx
and ebp, ecx
mov ebx, dword [esp + 0x3c]
cmp ebx, 0x20
sbb ecx, ecx
sbb esi, esi
and eax, ecx
and edx, ecx
or edx, ebp
mov ebp, ecx
mov ecx, ebx
shr eax, cl
and eax, ebp
xchg esi, ebx
not ebx
xchg esi, ebx
or ecx, esi
cmp edi, 1
sbb ebx, ebx
xor ebx, 0xffffffff
mov ebp, dword [esp + 0x38]
cmp ebp, 0x20
sbb esi, esi
mov edi, dword [esp + 0x34]
and edi, esi
or edi, edx
mov dword [esp + 0x38], edi
mov edx, ecx
mov ecx, dword [esp + 0x30]
shl edi, cl
mov ecx, edx
mov edx, dword [esp + 0x38]
sar edx, cl
mov ecx, edx
mov edx, dword [esp + 0x2c]
and edi, edx
or eax, edi
xchg esi, ebx
not ebx
xchg esi, ebx
or esi, ebp
mov edx, ecx
mov ecx, esi
mov ebp, dword [esp + 0x38]
sar ebp, cl
and ebx, ebp
or ebx, eax
mov eax, dword [esp + 0x1c]
cmp eax, ebx
setne al
mov ebx, dword [esp + 0x24]
cmp ebx, edx
setne dl
or edx, eax
test dl, dl
jne 0x56ec9f
mov eax, dword [esp + 0x78]
test eax, eax
je 0x56ec51
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0x7c]
mov dword [esp + 0x64], eax
mov eax, dword [esp + 0x60]
test eax, eax
je 0x56ec49
movzx ecx, byte [eax + 0xf]
nop
mov edx, ecx
and ecx, 0x1f
test dl, 0x20
jne 0x56ec43
or ecx, 0x80
mov edx, dword [esp + 0x64]
jmp 0x56ec57
xor ecx, ecx
xor eax, eax
xor edx, edx
jmp 0x56ec57
xor ecx, ecx
xor eax, eax
xor edx, edx
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.00496a00
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x4c]
mov edx, dword [esp + 0xc]
mov ebx, dword [esp + 0x10]
mov ebp, dword [esp + 0x14]
mov dword [esp], edx
mov dword [esp + 4], ebx
mov dword [esp + 8], ebp
mov dword [esp + 0x10], ecx
mov dword [esp + 0xc], eax
call fcn.00498620
mov byte [esp + 0x80], 1
add esp, 0x70
ret
mov byte [esp + 0x80], 0
add esp, 0x70
ret
cmp eax, 0xf3b50de0
jne 0x56eedc
mov eax, dword [esp + 0x78]
lea ecx, [0x8bf3c0]
cmp eax, ecx
jne 0x56eedc
mov dword [esp + 0x40], 0
mov dword [esp + 0x44], 0
mov eax, dword [esp + 0x74]
mov dword [esp], eax
lea eax, [esp + 0x40]
mov dword [esp + 4], eax
call fcn.0056f410
movzx eax, byte [esp + 8]
test al, al
je 0x56ee92
mov eax, dword [esp + 0x78]
test eax, eax
je 0x56ed3a
mov dword [esp + 0x58], eax
mov ecx, dword [esp + 0x7c]
mov dword [esp + 0x5c], ecx
mov edx, dword [esp + 0x58]
test edx, edx
je 0x56ed32
movzx ebx, byte [edx + 0xf]
nop
mov ebp, ebx
and ebx, 0x1f
xchg ebp, eax
test al, 0x20
xchg ebp, eax
jne 0x56ed2c
or ebx, 0x80
mov ebp, dword [esp + 0x5c]
jmp 0x56ed40
xor ebx, ebx
xor edx, edx
xor ebp, ebp
jmp 0x56ed40
xor ebx, ebx
xor edx, edx
xor ebp, ebp
mov dword [esp], edx
mov dword [esp + 4], ebp
mov dword [esp + 8], ebx
call fcn.00496a00
mov eax, dword [esp + 0x14]
and eax, 0x1f
lea ecx, [eax - 7]
cmp ecx, 5
ja 0x56ee9e
mov eax, dword [esp + 0x40]
mov dword [esp + 0x18], eax
mov edx, dword [esp + 0x44]
mov dword [esp + 0x20], edx
mov ebx, dword [esp + 0xc]
mov ebx, dword [ebx]
shl ebx, 3
lea ecx, [ebx - 0x40]
neg ecx
shl edx, cl
mov ebp, eax
shl eax, cl
lea esi, [ecx - 0x20]
mov edi, ecx
mov ecx, esi
shl ebp, cl
neg ecx
mov dword [esp + 0x38], ecx
mov ebx, dword [esp + 0x18]
shr ebx, cl
cmp ecx, 0x20
sbb ecx, ecx
mov dword [esp + 0x34], ecx
and ebx, ecx
cmp esi, 0x20
sbb ecx, ecx
mov dword [esp + 0x30], ecx
and ebp, ecx
cmp edi, 0x20
sbb ecx, ecx
and eax, ecx
and edx, ecx
or edx, ebx
or ebp, edx
mov edx, ecx
mov ecx, esi
mov ebx, ebp
shr ebp, cl
mov ecx, edi
shr eax, cl
mov esi, ebx
shr ebx, cl
and ebx, edx
and eax, edx
mov edx, dword [esp + 0x30]
and ebp, edx
mov ecx, dword [esp + 0x38]
shl esi, cl
mov edx, dword [esp + 0x34]
and esi, edx
or eax, esi
or eax, ebp
mov edx, dword [esp + 0x18]
cmp edx, eax
setne al
mov edx, dword [esp + 0x20]
cmp edx, ebx
setne dl
or edx, eax
test dl, dl
jne 0x56ee92
mov eax, dword [esp + 0x78]
test eax, eax
je 0x56ee44
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0x7c]
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0x50]
test eax, eax
je 0x56ee3c
movzx ecx, byte [eax + 0xf]
nop
mov edx, ecx
and ecx, 0x1f
test dl, 0x20
jne 0x56ee36
or ecx, 0x80
mov edx, dword [esp + 0x54]
jmp 0x56ee4a
xor ecx, ecx
xor eax, eax
xor edx, edx
jmp 0x56ee4a
xor ecx, ecx
xor eax, eax
xor edx, edx
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.00496a00
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x44]
mov edx, dword [esp + 0xc]
mov ebx, dword [esp + 0x10]
mov ebp, dword [esp + 0x14]
mov dword [esp], edx
mov dword [esp + 4], ebx
mov dword [esp + 8], ebp
mov dword [esp + 0x10], ecx
mov dword [esp + 0xc], eax
call fcn.00498c00
mov byte [esp + 0x80], 1
add esp, 0x70
ret
mov byte [esp + 0x80], 0
add esp, 0x70
ret
mov dword [esp + 0x28], eax
lea eax, [0x901dc0]
mov dword [esp], eax
call fcn.0040c320
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1a
lea ecx, [0x976bd0]
mov dword [eax], ecx
mov ecx, dword [esp + 0x28]
mov dword [eax + 8], ecx
lea ecx, [0x8e98c0]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00438c00
lea eax, [0x8d9c60]
mov dword [esp], eax
lea eax, [0xa2cde8]
mov dword [esp + 4], eax
call fcn.00438c00
mov dword [esp + 0x28], eax
lea eax, [0x901dc0]
mov dword [esp], eax
call fcn.0040c320
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x19
lea ecx, [0x975da3]
mov dword [eax], ecx
mov ecx, dword [esp + 0x28]
mov dword [eax + 8], ecx
lea ecx, [0x8e98c0]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00438c00
nop
call fcn.00468280
jmp fcn.0056e8d0