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

Disassembly:
mov ecx, dword [0x85d3cc]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0x118]
cmp eax, dword [ecx + 8]
jbe 0x5a9bf0
sub esp, 0x198
lea edi, [esp + 0x1a4]
xor eax, eax
call fcn.00468240
nop
lea edi, [esp + 0x50]
call fcn.00468278
mov ecx, dword [esp + 0x19c]
mov dword [esp], ecx
lea ecx, [esp + 0x50]
mov dword [esp + 4], ecx
call fcn.005a96f0
mov ecx, dword [esp + 0xc]
cmp ecx, 0x1f
jbe 0x5a9be5
mov edx, dword [esp + 8]
cmp byte [edx + 0x1f], 0x7f
ja 0x5a9bcd
mov ebx, dword [esp + 0x1a0]
cmp ebx, 2
jb 0x5a9bb5
cmp ebx, 8
ja 0x5a9b9d
mov dword [esp + 0x14], ecx
mov ebp, dword [esp + 0x10]
mov dword [esp + 0x18], ebp
lea edi, [esp + 0x98]
xor eax, eax
call fcn.00468240
lea edi, [esp + 0x70]
call fcn.00468276
mov ecx, dword [esp + 0x14]
xor eax, eax
jmp 0x5a98a3
mov dword [esp + 0x2c], eax
lea ebp, [esp + eax*8 + 0x70]
lea edi, [esp + eax*8 + 0x74]
movzx ebx, byte [edx + esi]
movzx ecx, byte [edx + esi + 1]
mov dword [esp + 0x4c], ecx
shl ecx, 8
or ebx, ecx
mov ecx, dword [esp + 0x4c]
shr ecx, 0x18
movzx eax, byte [edx + esi + 2]
mov dword [esp + 0x4c], eax
shr eax, 0x10
or eax, ecx
mov ecx, dword [esp + 0x4c]
shl ecx, 0x10
or ecx, ebx
movzx ebx, byte [edx + esi + 3]
mov dword [esp + 0x4c], ebx
shr ebx, 8
or ebx, eax
mov eax, dword [esp + 0x4c]
shl eax, 0x18
or eax, ecx
movzx ecx, byte [edx + esi + 4]
or ecx, ebx
movzx ebx, byte [edx + esi + 5]
shl ebx, 8
or ecx, ebx
movzx ebx, byte [edx + esi + 6]
shl ebx, 0x10
or ebx, ecx
movzx ecx, byte [edx + esi + 7]
mov dword [ebp], eax
shl ecx, 0x18
or ecx, ebx
mov dword [edi], ecx
mov eax, dword [esp + 0x2c]
inc eax
mov ebp, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov ebx, dword [esp + 0x1a0]
cmp eax, 4
jge 0x5a98d4
mov esi, eax
shl esi, 3
cmp ecx, esi
jb 0x5a9b96
mov edi, ecx
sub edi, esi
sub ebp, esi
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and esi, ebp
cmp edi, 7
ja 0x5a9812
jmp 0x5a9b8a
mov ecx, ebx
mov edx, 1
shl edx, cl
lea ebp, [ecx - 0x20]
mov ecx, ebp
mov eax, edx
mov edx, 1
shl edx, cl
neg ecx
mov esi, ebx
mov ebx, 1
shr ebx, cl
cmp ebp, 0x20
sbb ebp, ebp
and ebp, edx
cmp ecx, 0x20
sbb edx, edx
and ebx, edx
or ebx, ebp
mov dword [esp + 0x4c], ebx
cmp esi, 0x20
sbb edx, edx
and eax, edx
mov dword [esp + 0x20], eax
mov edx, eax
add eax, 0xffffffff
mov dword [esp + 0x1c], eax
mov ebp, ebx
adc ebx, 0xffffffff
mov dword [esp + 0x48], ebx
xor ecx, ecx
xor edi, edi
xor ecx, ecx
mov dword [esp + 0x34], ecx
xor ecx, ecx
jmp 0x5a994e
mov edx, ebp
mov ebp, dword [esp + 0x4c]
mov edi, ecx
mov dword [esp + 0x34], esi
mov esi, dword [esp + 0x1a0]
mov ecx, ebx
mov ebx, dword [esp + 0x48]
cmp ecx, 0x100
jae 0x5a9b4e
mov dword [esp + 0x24], ecx
and ecx, 0x3f
mov dword [esp + 0x28], ecx
add esi, 0xffffffc0
xchg esi, ebx
neg ebx
xchg esi, ebx
mov edx, dword [esp + 0x24]
shr edx, 6
cmp esi, ecx
jbe 0x5a99da
cmp edx, 5
jae 0x5a9b7e
lea edx, [esp + edx*8 + 0x70]
mov esi, dword [edx + 4]
mov dword [esp + 0x44], esi
mov edx, dword [edx]
shr edx, cl
shr esi, cl
lea ebp, [ecx - 0x20]
mov dword [esp + 0x40], ebp
mov ecx, ebp
mov ebx, dword [esp + 0x44]
shr ebx, cl
mov dword [esp + 0x3c], ebx
neg ecx
mov ebx, dword [esp + 0x44]
shl ebx, cl
mov ebp, dword [esp + 0x28]
cmp ebp, 0x20
sbb ebp, ebp
and edx, ebp
and esi, ebp
cmp ecx, 0x20
sbb ebp, ebp
and ebx, ebp
or ebx, edx
mov edx, dword [esp + 0x40]
cmp edx, 0x20
sbb edx, edx
mov ebp, dword [esp + 0x3c]
and ebp, edx
or ebp, ebx
jmp 0x5a9aa2
cmp edx, 5
jae 0x5a9b72
mov dword [esp + 0x30], edi
lea esi, [esp + edx*8 + 0x70]
mov ebp, dword [esi + 4]
mov dword [esp + 0x44], ebp
mov esi, dword [esi]
shr ebp, cl
mov dword [esp + 0x40], ebp
shr esi, cl
lea edi, [ecx - 0x20]
mov ecx, edi
mov ebx, dword [esp + 0x44]
shr ebx, cl
neg ecx
mov ebp, dword [esp + 0x44]
shl ebp, cl
lea eax, [edx + 1]
cmp edi, 0x20
sbb edi, edi
and ebx, edi
cmp ecx, 0x20
sbb ecx, ecx
and ebp, ecx
mov ecx, edx
mov edx, dword [esp + 0x28]
cmp edx, 0x20
sbb edi, edi
and esi, edi
or ebp, esi
mov esi, edx
mov edx, dword [esp + 0x40]
and edx, edi
or ebx, ebp
cmp eax, 5
jae 0x5a9b68
mov dword [esp + 0x44], edx
lea eax, [esp + ecx*8 + 0x78]
mov ebp, dword [eax]
mov dword [esp + 0x40], ebp
mov eax, dword [eax + 4]
lea ecx, [esi - 0x40]
neg ecx
mov dword [esp + 0x38], ecx
shl eax, cl
mov esi, ebp
shl ebp, cl
lea edi, [ecx - 0x20]
mov ecx, edi
shl esi, cl
neg ecx
mov edx, dword [esp + 0x40]
shr edx, cl
cmp edi, 0x20
sbb edi, edi
and esi, edi
mov edi, edx
mov edx, dword [esp + 0x38]
cmp edx, 0x20
sbb edx, edx
and eax, edx
and ebp, edx
or ebp, ebx
cmp ecx, 0x20
sbb edx, edx
and edi, edx
or edi, eax
or esi, edi
mov edx, dword [esp + 0x44]
or esi, edx
mov eax, dword [esp + 0x1c]
mov edi, dword [esp + 0x30]
mov edx, dword [esp + 0x48]
and esi, edx
and ebp, eax
add ebp, edi
mov ebx, dword [esp + 0x34]
adc esi, ebx
test ebp, 1
sete cl
and ecx, 1
test cl, cl
je 0x5a9ae3
mov ebp, dword [esp + 0x24]
inc ebp
mov edx, dword [esp + 0x1a0]
mov ebx, ebp
mov ecx, edi
mov esi, dword [esp + 0x34]
mov ebp, dword [esp + 0x20]
mov edi, dword [esp + 0x48]
jmp 0x5a9935
mov ebx, dword [esp + 0x4c]
mov ecx, ebx
shr ebx, 1
mov edi, edx
mov edx, dword [esp + 0x20]
shr edx, 1
shl ecx, 0x1f
or ecx, edx
cmp ebx, esi
seta dl
sete bl
cmp ebp, ecx
setb cl
and ebx, ecx
or edx, ebx
test dl, dl
je 0x5a9b24
mov edx, dword [esp + 0x24]
xchg ebp, eax
mov byte [esp + edx + 0x98], al
xchg ebp, eax
mov ebx, edx
xor ecx, ecx
mov edx, dword [esp + 0x20]
jmp 0x5a9b3c
mov edx, dword [esp + 0x20]
sub ebp, edx
mov ebx, dword [esp + 0x24]
xchg ebp, eax
mov byte [esp + ebx + 0x98], al
xchg ebp, eax
mov ecx, 1
mov ebp, edx
mov edx, dword [esp + 0x1a0]
add ebx, edx
xor esi, esi
jmp 0x5a9935
lea edi, [esp + 0x1a4]
lea esi, [esp + 0x98]
call fcn.00468510
add esp, 0x198
ret
mov ecx, 5
call fcn.004680a0
mov eax, edx
mov ecx, 5
call fcn.004680a0
mov eax, edx
mov ecx, 5
call fcn.004680a0
mov eax, 7
mov ecx, edi
call fcn.00468090
mov eax, esi
call fcn.004680f0
lea eax, [0x661ce0]
mov dword [esp], eax
lea eax, [0x6f19c8]
mov dword [esp + 4], eax
call fcn.00437e60
lea eax, [0x661ce0]
mov dword [esp], eax
lea eax, [0x6f19c0]
mov dword [esp + 4], eax
call fcn.00437e60
lea eax, [0x661ce0]
mov dword [esp], eax
lea eax, [0x6f19b8]
mov dword [esp + 4], eax
call fcn.00437e60
mov eax, 0x1f
call fcn.00468090
nop
call fcn.00466c30
jmp fcn.005a9760