Function at 0x5b6560
Capabilities:
Enumerate pe sections
Resolve function by parsing pe exports

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x80]
cmp eax, dword [ecx + 8]
jbe 0x5b6fa7
sub esp, 0x100
mov eax, dword [esp + 0x104]
mov ecx, dword [eax]
mov dword [esp + 0x58], ecx
mov edx, dword [eax + 4]
mov ebx, dword [eax + 8]
mov ebp, dword [eax + 0xc]
mov esi, dword [eax + 0x10]
mov edi, dword [eax + 0x14]
mov ecx, dword [eax + 0x18]
mov dword [esp + 0x40], ecx
mov ecx, dword [eax + 0x1c]
mov dword [esp + 0x44], ecx
mov ecx, dword [eax + 0x20]
mov dword [esp + 0x38], ecx
mov ecx, dword [eax + 0x24]
mov dword [esp + 0x3c], ecx
mov dword [esp + 0xe4], eax
mov eax, dword [esp + 0x108]
mov dword [esp + 0xfc], eax
mov dword [esp + 0xdc], ecx
mov ecx, dword [esp + 0x10c]
mov dword [esp + 0xd0], ecx
mov dword [esp + 0xd4], edx
mov edx, dword [esp + 0x110]
mov dword [esp + 0xcc], edx
mov edx, dword [esp + 0xd4]
mov eax, dword [esp + 0xe4]
mov ecx, dword [esp + 0xdc]
jmp 0x5b68fc
mov dword [esp + 0x74], ebp
mov dword [esp + 0x70], ebx
mov eax, dword [esp + 0xb4]
mov dword [esp + 4], eax
mov eax, dword [esp + 0xb0]
mov dword [esp], eax
mov eax, dword [esp + 0xa8]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xac]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x94]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x90]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x88]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x8c]
mov dword [esp + 0x18], eax
call fcn.005b64a0
mov eax, dword [esp + 0x24]
mov dword [esp + 0xb4], eax
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0xc0]
add edx, ecx
mov dword [esp + 0xc0], edx
mov ecx, dword [esp + 0xc8]
adc ecx, eax
mov dword [esp + 0xc4], ecx
mov ebp, dword [esp + 0x2c]
mov dword [esp + 0xb0], ebp
mov esi, dword [esp + 0x28]
mov dword [esp + 0xac], esi
mov edi, dword [esp + 0x9c]
mov dword [esp + 4], edi
mov edi, dword [esp + 0x98]
mov dword [esp], edi
mov edi, dword [esp + 0xa0]
mov dword [esp + 0xc], edi
mov edi, dword [esp + 0xa4]
mov dword [esp + 8], edi
mov edi, dword [esp + 0x84]
mov dword [esp + 0x14], edi
mov edi, dword [esp + 0x80]
mov dword [esp + 0x10], edi
mov edi, dword [esp + 0x78]
mov dword [esp + 0x1c], edi
mov edi, dword [esp + 0x7c]
mov dword [esp + 0x18], edi
call fcn.005b64a0
mov ecx, dword [esp + 0x20]
mov ebx, dword [esp + 0x24]
mov esi, dword [esp + 0xac]
add ecx, esi
mov edx, dword [esp + 0xb0]
mov eax, ebx
adc ebx, edx
mov esi, dword [esp + 0xc8]
mov ebp, dword [esp + 0xb4]
mov edi, esi
and esi, ebp
or edi, ebp
mov ebp, dword [esp + 0xc4]
xchg ebp, ebx
not ebx
xchg ebp, ebx
and edi, ebp
or esi, edi
shr esi, 0x1f
add ecx, esi
adc ebx, 0
mov dword [esp + 0x6c], ebx
mov ebp, dword [esp + 0x28]
mov esi, dword [esp + 0x2c]
mov edi, dword [esp + 0x70]
add edi, ebp
mov ebp, dword [esp + 0x74]
adc esi, ebp
mov ebp, eax
and eax, edx
or edx, ebp
mov ebp, ebx
not ebx
and ebx, edx
or ebx, eax
shr ebx, 0x1f
add ebx, edi
mov dword [esp + 0x34], ebx
adc esi, 0
mov dword [esp + 0x68], esi
mov eax, ecx
and ecx, 0xfffffffc
mov dword [esp + 0x60], ecx
mov edx, dword [esp + 0xb8]
add edx, ecx
mov dword [esp + 0xc8], edx
mov edi, dword [esp + 0xbc]
adc ebp, edi
mov dword [esp + 0x64], ebp
mov edx, dword [esp + 0xc0]
add edx, ebx
mov ebx, dword [esp + 0xc4]
adc ebx, esi
mov ecx, dword [esp + 0x6c]
and ecx, edi
mov esi, dword [esp + 0x6c]
or edi, esi
xchg ebp, ebx
not ebx
xchg ebp, ebx
and edi, ebp
or ecx, edi
shr ecx, 0x1f
add ecx, edx
adc ebx, 0
mov dword [esp + 0x6c], ebx
and eax, 3
mov ebp, dword [esp + 0x68]
mov edx, dword [esp + 0xc4]
mov edi, ebp
and ebp, edx
or edx, edi
not ebx
and edx, ebx
or ebp, edx
shr ebp, 0x1f
add eax, ebp
mov dword [esp + 0x48], eax
mov edx, 0
adc edx, 0
mov dword [esp + 0xc4], edx
mov ebx, dword [esp + 0x60]
shr ebx, 2
mov ebp, esi
shl esi, 0x1e
or esi, ebx
shr ebp, 2
mov ebx, dword [esp + 0x34]
and ebx, 3
shl ebx, 0x1e
or ebx, ebp
mov ebp, dword [esp + 0xc8]
add esi, ebp
mov dword [esp + 0xc8], esi
mov ebp, dword [esp + 0x64]
adc ebp, ebx
mov esi, dword [esp + 0x34]
shr esi, 2
shl edi, 0x1e
or edi, esi
mov esi, dword [esp + 0x68]
shr esi, 2
add edi, ecx
mov ecx, dword [esp + 0x6c]
adc ecx, esi
mov edx, dword [esp + 0x64]
and edx, ebx
mov eax, dword [esp + 0x64]
or ebx, eax
mov eax, ebp
xchg ebp, ebx
not ebx
xchg ebp, ebx
and ebx, ebp
or ebx, edx
shr ebx, 0x1f
add ebx, edi
adc ecx, 0
mov edx, dword [esp + 0x6c]
mov ebp, edx
and edx, esi
or esi, ebp
mov ebp, ecx
not ecx
and esi, ecx
or esi, edx
shr esi, 0x1f
mov ecx, dword [esp + 0x48]
add esi, ecx
mov edi, dword [esp + 0xc4]
adc edi, 0
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esp + 0x3c]
mov edx, eax
mov eax, dword [esp + 0xc8]
mov dword [esp + 0x58], eax
mov eax, dword [esp + 0x104]
mov eax, dword [esp + 0xd0]
mov ecx, dword [esp + 0xcc]
mov dword [esp + 0xd0], ecx
mov dword [esp + 0xcc], eax
mov eax, dword [esp + 0x104]
mov ecx, dword [esp + 0x3c]
mov ecx, dword [esp + 0xd0]
test ecx, ecx
je 0x5b6f5a
mov dword [esp + 0x5c], edx
mov dword [esp + 0x48], esi
mov dword [esp + 0x4c], edi
cmp ecx, 0x10
jl 0x5b6ad5
mov eax, dword [esp + 0xfc]
movzx ecx, byte [eax]
movzx edi, byte [eax + 1]
mov dword [esp + 0xc8], edi
shl edi, 8
or ecx, edi
mov edi, dword [esp + 0xc8]
shr edi, 0x18
movzx esi, byte [eax + 2]
mov dword [esp + 0xc8], esi
shr esi, 0x10
or esi, edi
mov edi, dword [esp + 0xc8]
shl edi, 0x10
or edi, ecx
movzx ecx, byte [eax + 3]
mov dword [esp + 0xc8], ecx
shl ecx, 0x18
or ecx, edi
mov edi, dword [esp + 0xc8]
shr edi, 8
or edi, esi
movzx esi, byte [eax + 4]
or esi, edi
movzx edi, byte [eax + 5]
shl edi, 8
or edi, esi
movzx esi, byte [eax + 6]
shl esi, 0x10
or esi, edi
movzx edi, byte [eax + 7]
shl edi, 0x18
or edi, esi
mov esi, dword [esp + 0x58]
add ecx, esi
mov dword [esp + 0xc8], ecx
adc edx, edi
mov dword [esp + 0xc4], edx
movzx ecx, byte [eax + 8]
movzx edx, byte [eax + 9]
mov dword [esp + 0xc0], edx
shl edx, 8
or ecx, edx
mov edx, dword [esp + 0xc0]
shr edx, 0x18
movzx esi, byte [eax + 0xa]
mov dword [esp + 0xc0], esi
shr esi, 0x10
or esi, edx
mov edx, dword [esp + 0xc0]
shl edx, 0x10
or edx, ecx
movzx ecx, byte [eax + 0xb]
mov dword [esp + 0xc0], ecx
shr ecx, 8
or ecx, esi
mov esi, dword [esp + 0xc0]
shl esi, 0x18
or esi, edx
movzx edx, byte [eax + 0xc]
or edx, ecx
movzx ecx, byte [eax + 0xd]
shl ecx, 8
or ecx, edx
movzx edx, byte [eax + 0xe]
shl edx, 0x10
or edx, ecx
movzx ecx, byte [eax + 0xf]
shl ecx, 0x18
or ecx, edx
add esi, ebx
mov edx, ecx
adc ecx, ebp
mov ebx, dword [esp + 0x5c]
and ebx, edi
mov eax, dword [esp + 0x5c]
or eax, edi
mov edi, dword [esp + 0xc4]
xchg edi, ebx
not ebx
xchg edi, ebx
and eax, edi
or ebx, eax
shr ebx, 0x1f
add esi, ebx
adc ecx, 0
mov eax, edx
and edx, ebp
or eax, ebp
mov ebx, ecx
not ecx
and ecx, eax
or edx, ecx
shr edx, 0x1f
mov eax, dword [esp + 0x48]
add edx, eax
mov eax, dword [esp + 0x4c]
adc eax, 0
add edx, 1
adc eax, 0
nop
nop
nop
nop
mov ecx, dword [esp + 0xcc]
add ecx, 0xfffffff0
mov ebp, ecx
neg ecx
sar ecx, 0x1f
and ecx, 0x10
mov edi, dword [esp + 0xfc]
add ecx, edi
mov edi, dword [esp + 0xd0]
add edi, 0xfffffff0
nop
nop
mov dword [esp + 0xfc], ecx
mov ecx, dword [esp + 0xc8]
mov dword [esp + 0x50], esi
mov esi, edi
mov edi, edx
mov edx, dword [esp + 0xc4]
mov edx, ebx
mov ebx, ebp
mov ebp, edx
mov edx, dword [esp + 0xc4]
jmp 0x5b6d4a
mov dword [esp + 0x54], ebp
mov dword [esp + 0xec], 0
mov dword [esp + 0xf0], 0
mov dword [esp + 0xf4], 0
mov dword [esp + 0xf8], 0
mov eax, dword [esp + 0xfc]
lea edi, [esp + 0xec]
cmp eax, edi
je 0x5b6b42
mov dword [esp + 0x50], ebx
mov dword [esp], edi
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.00464c70
mov ecx, dword [esp + 0xd0]
mov edx, dword [esp + 0x5c]
mov ebx, dword [esp + 0x50]
mov ebp, dword [esp + 0x54]
mov esi, dword [esp + 0x48]
mov byte [esp + ecx + 0xec], 1
movzx ecx, byte [esp + 0xec]
mov eax, ebp
movzx ebp, byte [esp + 0xed]
mov edi, ebp
shl ebp, 8
or ecx, ebp
shr edi, 0x18
movzx ebp, byte [esp + 0xee]
mov dword [esp + 0xc8], ebp
shr ebp, 0x10
or ebp, edi
mov edi, ebx
mov ebx, dword [esp + 0xc8]
shl ebx, 0x10
or ecx, ebx
movzx ebx, byte [esp + 0xef]
mov dword [esp + 0xc8], ebx
shr ebx, 8
or ebx, ebp
mov ebp, dword [esp + 0xc8]
shl ebp, 0x18
or ecx, ebp
movzx ebp, byte [esp + 0xf0]
or ebp, ebx
movzx ebx, byte [esp + 0xf1]
shl ebx, 8
or ebx, ebp
movzx ebp, byte [esp + 0xf2]
shl ebp, 0x10
or ebp, ebx
movzx ebx, byte [esp + 0xf3]
shl ebx, 0x18
or ebx, ebp
mov dword [esp + 0xc8], ebx
mov ebp, dword [esp + 0x58]
add ecx, ebp
adc edx, ebx
movzx ebx, byte [esp + 0xf4]
movzx ebp, byte [esp + 0xf5]
mov dword [esp + 0xc0], ebp
shl ebp, 8
or ebx, ebp
mov dword [esp + 0xbc], ebx
mov ebp, dword [esp + 0xc0]
shr ebp, 0x18
movzx ebx, byte [esp + 0xf6]
mov dword [esp + 0xc0], ebx
shr ebx, 0x10
or ebx, ebp
mov dword [esp + 0xb8], ebx
mov ebp, dword [esp + 0xc0]
shl ebp, 0x10
mov ebx, dword [esp + 0xbc]
or ebp, ebx
mov dword [esp + 0xc0], ebp
movzx ebx, byte [esp + 0xf7]
mov dword [esp + 0xbc], ebx
shr ebx, 8
mov ebp, dword [esp + 0xb8]
or ebx, ebp
mov dword [esp + 0xb8], ebx
mov ebp, dword [esp + 0xbc]
shl ebp, 0x18
mov ebx, dword [esp + 0xc0]
or ebp, ebx
mov dword [esp + 0xc0], ebp
movzx ebx, byte [esp + 0xf8]
mov ebp, dword [esp + 0xb8]
or ebx, ebp
movzx ebp, byte [esp + 0xf9]
shl ebp, 8
or ebp, ebx
movzx ebx, byte [esp + 0xfa]
shl ebx, 0x10
or ebx, ebp
movzx ebp, byte [esp + 0xfb]
shl ebp, 0x18
or ebp, ebx
mov dword [esp + 0xbc], ebp
mov ebx, dword [esp + 0xc0]
add ebx, edi
mov dword [esp + 0xc0], ebx
mov edi, eax
adc eax, ebp
mov ebp, dword [esp + 0x5c]
mov ebx, dword [esp + 0xc8]
and ebp, ebx
mov dword [esp + 0xc8], ebp
mov ebp, dword [esp + 0x5c]
or ebp, ebx
mov ebx, edx
not edx
and edx, ebp
mov ebp, dword [esp + 0xc8]
or ebp, edx
shr ebp, 0x1f
mov edx, ebx
mov ebx, dword [esp + 0xc0]
add ebx, ebp
mov dword [esp + 0x50], ebx
adc eax, 0
mov ebp, dword [esp + 0xbc]
and edi, ebp
mov ebx, dword [esp + 0x54]
or ebx, ebp
mov ebp, eax
not eax
and eax, ebx
or edi, eax
shr edi, 0x1f
add edi, esi
mov eax, dword [esp + 0x4c]
adc eax, 0
nop
xor ebx, ebx
xor esi, esi
xor ebx, ebx
mov dword [esp + 0xfc], ebx
xor ebx, ebx
mov dword [esp + 0xd0], ebx
mov dword [esp + 0xcc], esi
mov dword [esp + 0x48], edi
mov dword [esp + 0x4c], eax
mov dword [esp + 0x54], ebp
mov dword [esp + 0x58], ecx
mov dword [esp + 0x5c], edx
mov dword [esp + 4], edx
mov dword [esp], ecx
mov ebx, dword [esp + 0x44]
mov dword [esp + 0xc], ebx
mov esi, dword [esp + 0x40]
mov dword [esp + 8], esi
call fcn.005b6430
mov eax, dword [esp + 0x1c]
mov dword [esp + 0xc8], eax
mov ecx, dword [esp + 0x18]
mov dword [esp + 0xc0], ecx
mov edx, dword [esp + 0x14]
mov dword [esp + 0xbc], edx
mov ebx, dword [esp + 0x10]
mov dword [esp + 0xb8], ebx
mov ebp, dword [esp + 0x54]
mov dword [esp + 4], ebp
mov esi, dword [esp + 0x50]
mov dword [esp], esi
mov edi, dword [esp + 0x44]
mov dword [esp + 0xc], edi
mov edx, dword [esp + 0x40]
mov dword [esp + 8], edx
call fcn.005b6430
mov eax, dword [esp + 0x14]
mov dword [esp + 0xb4], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xb0], ecx
mov edx, dword [esp + 0x18]
mov dword [esp + 0xac], edx
mov ebx, dword [esp + 0x1c]
mov dword [esp + 0xa8], ebx
mov ebp, dword [esp + 0x4c]
mov dword [esp + 4], ebp
mov esi, dword [esp + 0x48]
mov dword [esp], esi
mov edi, dword [esp + 0x44]
mov dword [esp + 0xc], edi
mov edi, dword [esp + 0x40]
mov dword [esp + 8], edi
call fcn.005b6430
mov eax, dword [esp + 0x18]
mov dword [esp + 0xa4], eax
test eax, eax
setne cl
mov byte [esp + 0x33], cl
mov edx, dword [esp + 0x1c]
mov dword [esp + 0xa0], edx
test edx, edx
setne bl
mov byte [esp + 0x32], bl
mov ebp, dword [esp + 0x14]
mov dword [esp + 0x9c], ebp
mov esi, dword [esp + 0x10]
mov dword [esp + 0x98], esi
mov edi, dword [esp + 0x5c]
mov dword [esp + 4], edi
mov edi, dword [esp + 0x58]
mov dword [esp], edi
mov edi, dword [esp + 0x3c]
mov dword [esp + 0xc], edi
mov eax, dword [esp + 0x38]
mov dword [esp + 8], eax
call fcn.005b6430
mov eax, dword [esp + 0x14]
mov dword [esp + 0x94], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x90], ecx
mov edx, dword [esp + 0x18]
mov dword [esp + 0x8c], edx
mov ebx, dword [esp + 0x1c]
mov dword [esp + 0x88], ebx
mov ebp, dword [esp + 0x54]
mov dword [esp + 4], ebp
mov ebp, dword [esp + 0x50]
mov dword [esp], ebp
mov ebp, dword [esp + 0x3c]
mov dword [esp + 0xc], ebp
mov esi, dword [esp + 0x38]
mov dword [esp + 8], esi
call fcn.005b6430
mov eax, dword [esp + 0x14]
mov dword [esp + 0x84], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x80], ecx
mov edx, dword [esp + 0x18]
mov dword [esp + 0x7c], edx
mov ebx, dword [esp + 0x1c]
mov dword [esp + 0x78], ebx
mov ebp, dword [esp + 0x4c]
mov dword [esp + 4], ebp
mov ebp, dword [esp + 0x48]
mov dword [esp], ebp
mov ebp, dword [esp + 0x3c]
mov dword [esp + 0xc], ebp
mov esi, dword [esp + 0x38]
mov dword [esp + 8], esi
call fcn.005b6430
movzx eax, byte [esp + 0x32]
movzx ecx, byte [esp + 0x33]
or eax, ecx
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x10]
mov ebp, dword [esp + 0x14]
test al, al
jne 0x5b6f8e
test edx, edx
setne al
test ecx, ecx
setne cl
or ecx, eax
test cl, cl
je 0x5b6611
jmp 0x5b6f76
mov ecx, dword [esp + 0x58]
mov dword [eax], ecx
mov dword [eax + 4], edx
mov dword [eax + 8], ebx
mov dword [eax + 0xc], ebp
mov dword [eax + 0x10], esi
mov dword [eax + 0x14], edi
add esp, 0x100
ret
lea eax, [0x698ba0]
mov dword [esp], eax
lea eax, [0x73bbd8]
mov dword [esp + 4], eax
call fcn.00436320
lea eax, [0x698ba0]
mov dword [esp], eax
lea eax, [0x73bbd8]
mov dword [esp + 4], eax
call fcn.00436320
nop
call fcn.00462ed0
jmp fcn.005b6560