Function at 0x805c90
Capabilities:
Enumerate pe sections

Disassembly:
push ebp
push edi
push esi
push ebx
mov ebx, ecx
sub esp, 0x5c
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x74]
mov dword [esp + 0x20], edx
mov ebp, dword [esp + 0x70]
mov edi, eax
mov dword [esp + 0x24], eax
mov eax, dword [0x1006044]
mov dword [esp + 0x4c], eax
xor eax, eax
test edi, edi
je 0x805cc4
mov dword [edi], 0
test ebx, ebx
je 0x805e70
test ebp, ebp
je 0x805e70
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
lea esi, [ebx + 0x2e]
mov eax, dword [eax + 0x48]
mov dword [ebp], ecx
mov eax, dword [eax + 0x10]
mov eax, dword [eax + ecx*4]
mov dword [ebp + 0xc], 0
mov dword [ebp + 8], eax
movzx eax, word [ebx + 4]
mov word [ebp + 0x10], ax
movzx eax, word [ebx + 6]
mov word [ebp + 0x12], ax
movzx eax, word [ebx + 8]
mov word [ebp + 0x14], ax
movzx eax, word [ebx + 0xa]
mov word [ebp + 0x16], ax
movzx edx, word [ebx + 0xe]
movzx eax, word [ebx + 0xc]
call fcn.008058a0
xor edx, edx
lea ecx, [ebp + 0x50]
mov dword [ebp + 0x450], eax
mov eax, dword [ebx + 0x10]
mov dword [esp + 0x34], edx
mov dword [ebp + 0x18], eax
mov eax, dword [ebx + 0x14]
mov dword [ebp + 0x24], edx
xor edx, edx
mov dword [ebp + 0x20], eax
mov dword [esp + 0x30], eax
mov eax, dword [ebx + 0x18]
mov dword [ebp + 0x2c], edx
mov dword [ebp + 0x28], eax
mov dword [esp + 0x28], eax
movzx eax, word [ebx + 0x24]
mov dword [esp + 0x2c], edx
xor edx, edx
mov word [ebp + 0x30], ax
mov eax, dword [ebx + 0x26]
mov dword [esp + 0x3c], edx
mov dword [ebp + 0x34], eax
mov eax, dword [ebx + 0x2a]
mov dword [ebp + 0x3c], edx
mov edx, 0x1ff
mov dword [esp + 0x38], eax
mov dword [ebp + 0x38], eax
movzx eax, word [ebx + 0x1c]
cmp eax, edx
cmova eax, edx
cmp eax, 4
jae 0x805eb8
test eax, eax
jne 0x805ee0
mov byte [ebp + eax + 0x50], 0
movzx eax, word [ebx + 0x20]
mov edx, 0x1ff
lea ecx, [ebp + 0x250]
cmp eax, edx
cmova eax, edx
mov dword [ebp + 0x40], eax
movzx esi, word [ebx + 0x1c]
movzx edx, word [ebx + 0x1e]
lea esi, [esi + edx + 0x2e]
add esi, ebx
cmp eax, 4
jae 0x805e88
test eax, eax
jne 0x805f00
mov edi, dword [esp + 0x20]
mov esi, dword [esp + 0x1c]
mov byte [ebp + eax + 0x250], 0
mov dword [esp + 4], edi
mov dword [esp], esi
call fcn.00809580
mov dword [ebp + 0x44], eax
mov dword [esp + 4], edi
mov dword [esp], esi
call fcn.00809600
mov dword [ebp + 0x48], eax
mov dword [esp + 4], edi
mov dword [esp], esi
call fcn.00809660
mov edx, dword [esp + 0x28]
mov esi, dword [esp + 0x30]
mov edi, dword [esp + 0x34]
mov ecx, dword [esp + 0x2c]
mov dword [ebp + 0x4c], eax
cmp esi, edx
mov eax, edi
sbb eax, ecx
mov eax, edx
mov edx, ecx
cmovae edx, edi
cmovae eax, esi
mov esi, dword [esp + 0x38]
mov edi, dword [esp + 0x3c]
cmp eax, esi
mov ecx, edx
sbb ecx, edi
cmovb eax, esi
cmovb edx, edi
not eax
or eax, edx
je 0x805f20
mov eax, 1
mov edx, dword [esp + 0x4c]
sub edx, dword [0x1006044]
jne 0x80600f
add esp, 0x5c
pop ebx
pop esi
pop edi
pop ebp
ret
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x805e7f
mov dword [eax + 0x1c], 0x18
xor eax, eax
jmp 0x805e52
mov edx, dword [esi]
lea edi, [ebp + 0x254]
and edi, 0xfffffffc
mov dword [ebp + 0x250], edx
mov edx, dword [esi + eax - 4]
mov dword [ecx + eax - 4], edx
sub ecx, edi
sub esi, ecx
add ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
jmp 0x805dd2
mov edx, dword [ebx + 0x2e]
lea edi, [ebp + 0x54]
and edi, 0xfffffffc
mov dword [ebp + 0x50], edx
mov edx, dword [esi + eax - 4]
mov dword [ecx + eax - 4], edx
sub ecx, edi
sub esi, ecx
add ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
jmp 0x805d97
movzx edx, byte [ebx + 0x2e]
mov byte [ebp + 0x50], dl
test al, 2
je 0x805d97
movzx edx, word [esi + eax - 2]
mov word [ecx + eax - 2], dx
jmp 0x805d97
movzx edx, byte [esi]
mov byte [ebp + 0x250], dl
test al, 2
je 0x805dd2
movzx edx, word [esi + eax - 2]
mov word [ecx + eax - 2], dx
jmp 0x805dd2
movzx eax, word [ebx + 0x1e]
test eax, eax
je 0x805e4d
movzx edx, word [ebx + 0x1c]
mov edi, 0xfffffffc
lea edx, [ebx + edx + 0x2e]
jmp 0x805f62
movzx ecx, word [edx + 2]
movzx esi, word [edx]
lea ebx, [ecx + 4]
cmp eax, ebx
jb 0x805f67
cmp si, 1
je 0x805f80
add edx, ebx
mov ebx, edi
sub ebx, ecx
add eax, ebx
je 0x805e4d
cmp eax, 3
ja 0x805f40
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x1c], 9
xor eax, eax
jmp 0x805e52
mov eax, dword [esp + 0x24]
test eax, eax
je 0x805f8e
mov dword [eax], 1
mov ebx, dword [esp + 0x28]
mov esi, dword [esp + 0x2c]
mov eax, ebx
lea ebx, [edx + 4]
not eax
or eax, esi
je 0x805fda
mov esi, dword [esp + 0x30]
mov edi, dword [esp + 0x34]
mov eax, esi
not eax
or eax, edi
je 0x805ff3
mov esi, dword [esp + 0x38]
mov edi, dword [esp + 0x3c]
mov eax, esi
not eax
or eax, edi
jne 0x805e4d
cmp ecx, 7
jbe 0x805f67
mov eax, dword [ebx]
mov edx, dword [ebx + 4]
mov dword [ebp + 0x38], eax
mov dword [ebp + 0x3c], edx
jmp 0x805e4d
cmp ecx, 7
jbe 0x805f67
mov esi, dword [edx + 4]
mov edi, dword [edx + 8]
lea ebx, [edx + 0xc]
sub ecx, 8
mov dword [ebp + 0x28], esi
mov dword [ebp + 0x2c], edi
jmp 0x805fa1
cmp ecx, 7
jbe 0x805f67
mov eax, dword [ebx]
mov edx, dword [ebx + 4]
sub ecx, 8
add ebx, 8
mov dword [ebp + 0x20], eax
mov dword [ebp + 0x24], edx
jmp 0x805fb1
call fcn.00401690
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
push ebx
sub esp, 0x18
mov ebx, dword [0x1006044]
mov dword [esp + 0xc], ebx
xor ebx, ebx
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x2c]
mov edx, dword [esp + 0x30]
mov ebx, dword [esp + 0xc]
sub ebx, dword [0x1006044]
jne 0x806065
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x28], edx
mov dword [esp + 0x24], 1
mov dword [esp + 0x20], eax
add esp, 0x18
pop ebx
jmp fcn.007de078
call fcn.00401690
nop
nop
nop
nop
nop
nop
push ebp
push edi
push esi
push ebx
sub esp, 0x3c
mov eax, dword [esp + 0x5c]
mov ebx, dword [esp + 0x50]
mov esi, dword [esp + 0x54]
mov edi, dword [esp + 0x58]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x60]
mov dword [esp + 0x1c], eax
mov eax, dword [0x1006044]
mov dword [esp + 0x2c], eax
mov eax, dword [ebx + 0x48]
mov eax, dword [eax + 0x3c]
mov dword [esp], eax
call dword [0x100bba0]
mov ecx, dword [ebx + 0x48]
add esi, dword [ecx + 0x40]
adc edi, dword [ecx + 0x44]
test edi, edi
js 0x806120
xor edx, edi
xor eax, esi
mov ebp, dword [ecx + 0x3c]
or eax, edx
je 0x8060e3
mov dword [esp + 0xc], 0
mov dword [esp + 4], esi
mov dword [esp + 8], edi
mov dword [esp], ebp
call dword [0x100bb9c]
test eax, eax
jne 0x806120
mov ecx, dword [ebx + 0x48]
mov eax, dword [esp + 0x2c]
sub eax, dword [0x1006044]
jne 0x80613d
mov eax, dword [ecx + 0x3c]
mov dword [esp + 0x54], 1
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x58], eax
mov eax, dword [esp + 0x18]
mov dword [esp + 0x50], eax
add esp, 0x3c
pop ebx
pop esi
pop edi
pop ebp
jmp fcn.007de078
mov dword [ebx + 0x1c], 0x16
mov eax, dword [esp + 0x2c]
sub eax, dword [0x1006044]
jne 0x80613d
add esp, 0x3c
xor eax, eax
pop ebx
pop esi
pop edi
pop ebp
ret
call fcn.00401690
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
sub esp, 0x1c
mov edx, dword [0x1006044]
mov dword [esp + 0xc], edx
xor edx, edx
mov eax, dword [esp + 0x20]
test eax, eax
je 0x806188
mov eax, dword [eax + 0x48]
test eax, eax
je 0x806188
mov edx, dword [eax + 0x44]
mov eax, dword [eax + 0x40]
mov ecx, dword [esp + 0xc]
sub ecx, dword [0x1006044]
jne 0x80618e
add esp, 0x1c
ret
xor eax, eax
xor edx, edx
jmp 0x806174
call fcn.00401690
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
sub esp, 0x1c
mov edx, dword [0x1006044]
mov dword [esp + 0xc], edx
xor edx, edx
mov eax, dword [esp + 0x20]
test eax, eax
je 0x8061d0
mov edx, dword [eax + 4]
mov eax, dword [eax]
mov ecx, dword [esp + 0xc]
sub ecx, dword [0x1006044]
jne 0x8061d6
add esp, 0x1c
ret
xor eax, eax
xor edx, edx
jmp 0x8061bc
call fcn.00401690
nop
nop
nop
nop
nop
sub esp, 0x1c
mov edx, dword [0x1006044]
mov dword [esp + 0xc], edx
xor edx, edx
mov eax, dword [esp + 0x20]
test eax, eax
je 0x806218
mov eax, dword [eax + 0x48]
test eax, eax
je 0x806218
mov eax, dword [eax + 4]
mov edx, dword [esp + 0xc]
sub edx, dword [0x1006044]
jne 0x80621c
add esp, 0x1c
ret
xor eax, eax
jmp 0x806201
call fcn.00401690
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
sub esp, 0x1c
mov edx, dword [0x1006044]
mov dword [esp + 0xc], edx
xor edx, edx
mov eax, dword [esp + 0x20]
test eax, eax
je 0x806268
mov eax, dword [eax + 0x48]
test eax, eax
je 0x806251
mov eax, dword [eax + 0x3c]
mov edx, dword [esp + 0xc]
sub edx, dword [0x1006044]
jne 0x80626c
add esp, 0x1c
ret
xor eax, eax
jmp 0x806251
call fcn.00401690
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
sub esp, 0x1c
mov edx, dword [0x1006044]
mov dword [esp + 0xc], edx
xor edx, edx
mov eax, dword [esp + 0x20]
mov edx, 0xe9ebb3
cmp eax, 0x20
ja 0x8062a4
mov edx, dword [eax*4 + 0xff0460]
mov eax, dword [esp + 0xc]
sub eax, dword [0x1006044]
jne 0x8062b6
mov eax, edx
add esp, 0x1c
ret
call fcn.00401690
nop
nop
nop
nop
nop