Function at 0x4a7ad0
Capabilities:
Enumerate pe sections

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x4a7f7f
sub esp, 0x50
mov edx, dword [esp + 0x60]
test edx, edx
je 0x4a7f39
mov eax, dword [esp + 0x64]
mov ebx, dword [esp + 0x54]
movzx ebp, byte [ebx + 5]
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x4a7f32
mov ebp, dword [ebx + 0x14]
cmp ebp, eax
jge 0x4a7f32
mov esi, ebp
shl ebp, 1
test ebp, ebp
jle 0x4a7f15
mov eax, edx
movzx edx, byte [ebx + 9]
test dl, dl
je 0x4a7efd
movzx edx, byte [ebx + 8]
test dl, dl
je 0x4a7ef4
mov edx, esi
shl esi, 2
lea ebp, [esi + edx - 1]
mov dword [esp + 0x40], edx
mov dword [esp + 0x24], ebp
movzx esi, byte [ebx + 4]
xchg esi, eax
test al, al
xchg esi, eax
je 0x4a7eed
mov esi, dword [ebx + 0x10]
cmp esi, ebp
jle 0x4a7ee6
mov ecx, ebp
movzx ebp, byte [ebx + 6]
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x4a7ec3
mov ebp, dword [ebx]
mov esi, dword [ebp + 8]
mov edi, edx
mov edx, dword [ebp + 4]
mov ebp, dword [ebp]
movzx ebx, byte [ebx + 8]
test bl, bl
je 0x4a7bc4
mov ebx, dword [esp + 0x70]
cmp ebx, 0x10
jbe 0x4a7f72
mov dword [esp + 0x2c], edx
lea ebx, [edx + 2]
mov edx, dword [esp + 0x6c]
movzx edx, byte [edx + 0x10]
cmp ebx, esi
ja 0x4a7e78
mov dword [esp + 0x3c], ebx
mov ebx, dword [esp + 0x2c]
mov byte [ebp + ebx], 0x30
mov byte [ebp + ebx + 1], dl
mov edx, dword [esp + 0x3c]
mov ebx, dword [esp + 0x6c]
mov dword [esp + 0x44], eax
xor eax, eax
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x44]
jmp 0x4a7c09
movzx ecx, byte [esp + 0x23]
mov eax, dword [esp + 0x4c]
mov byte [eax + edx], cl
mov byte [eax + edx + 1], bl
mov ecx, dword [esp + 0x28]
inc ecx
mov edx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x58]
mov eax, dword [esp + 0x60]
mov ebx, edx
mov dword [esp + 0x28], ecx
mov edx, ebp
mov ebp, dword [esp + 0x4c]
mov ecx, dword [esp + 0x24]
mov ebx, dword [esp + 0x28]
cmp ebx, edi
jge 0x4a7e2c
mov dword [esp + 0x4c], ebp
mov ebp, dword [esp + 0x54]
movzx ebp, byte [ebp + 9]
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x4a7e28
test ebx, ebx
jle 0x4a7e1d
lea ebp, [edx + 1]
cmp ebp, esi
ja 0x4a7dcb
mov ebx, dword [esp + 0x4c]
mov byte [ebx + edx], 0x20
mov edx, dword [esp + 0x54]
movzx edx, byte [edx + 8]
test dl, dl
je 0x4a7dc2
mov edx, dword [esp + 0x70]
cmp edx, 0x10
jbe 0x4a7f66
mov dword [esp + 0x38], ebp
lea edx, [ebp + 2]
mov ebp, dword [esp + 0x6c]
movzx ebp, byte [ebp + 0x10]
cmp edx, esi
ja 0x4a7d73
test eax, eax
mov dword [esp + 0x2c], edx
mov edx, dword [esp + 0x38]
mov byte [ebx + edx], 0x30
xchg ebp, eax
mov byte [ebx + edx + 1], al
xchg ebp, eax
mov edx, dword [esp + 0x2c]
mov dword [esp + 0x4c], ebx
je 0x4a7d50
mov ebp, dword [esp + 0x28]
mov ebx, dword [esp + 0x64]
cmp ebp, ebx
jae 0x4a7f5d
movzx ebx, byte [eax + ebp]
mov byte [esp + 0x21], bl
shr bl, 4
movzx ebx, bl
mov ebp, dword [esp + 0x70]
cmp ebx, ebp
jae 0x4a7f4b
mov dword [esp + 0x30], esi
mov esi, dword [esp + 0x6c]
movzx ebx, byte [esi + ebx]
mov byte [esp + 0x23], bl
movzx ebx, byte [esp + 0x21]
and ebx, 0xf
cmp ebx, ebp
jae 0x4a7f42
lea ebp, [edx + 2]
movzx ebx, byte [esi + ebx]
mov esi, dword [esp + 0x30]
cmp ebp, esi
jbe 0x4a7bd8
mov byte [esp + 0x22], bl
mov dword [esp + 0x2c], edx
lea eax, [0x6692a0]
mov dword [esp], eax
mov ecx, dword [esp + 0x4c]
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], ebp
call fcn.0043bd10
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov esi, dword [esp + 0x1c]
lea ebp, [ecx + 2]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x2c]
movzx ebx, byte [esp + 0x22]
mov edi, dword [esp + 0x40]
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x60]
jmp 0x4a7bd8
mov ebp, dword [esp + 0x28]
mov ebx, dword [esp + 0x5c]
cmp ebp, ebx
jae 0x4a7f54
mov ecx, dword [esp + 0x58]
movzx ecx, byte [ecx + ebp]
mov ebx, ecx
mov ecx, dword [esp + 0x24]
jmp 0x4a7cb0
xchg ebp, eax
mov byte [esp + 0x23], al
xchg ebp, eax
lea eax, [0x6692a0]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov ecx, dword [esp + 0x38]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], edx
call fcn.0043bd10
mov ebx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov esi, dword [esp + 0x1c]
lea edx, [eax + 2]
mov eax, dword [esp + 0x60]
test eax, eax
mov ecx, dword [esp + 0x24]
movzx ebp, byte [esp + 0x23]
mov edi, dword [esp + 0x40]
jmp 0x4a7c7c
test eax, eax
mov edx, ebp
jmp 0x4a7c92
mov dword [esp + 0x34], edx
lea eax, [0x6692a0]
mov dword [esp], eax
mov ecx, dword [esp + 0x4c]
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], ebp
call fcn.0043bd10
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov esi, dword [esp + 0x1c]
lea ebp, [ecx + 1]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x34]
mov ebx, dword [esp + 0x28]
mov edi, dword [esp + 0x40]
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x60]
jmp 0x4a7c3e
test eax, eax
mov ebx, dword [esp + 0x4c]
jmp 0x4a7c92
test eax, eax
jmp 0x4a7e1f
mov ebx, dword [esp + 0x54]
mov edi, dword [ebx]
mov dword [edi + 4], edx
mov dword [edi + 8], esi
mov edx, dword [0x98ef80]
test edx, edx
jne 0x4a7e6f
mov dword [edi], ebp
movzx eax, byte [ebx + 4]
test al, al
je 0x4a7e5b
mov eax, dword [ebx + 0x10]
cmp eax, ecx
jle 0x4a7e5b
movzx edx, byte [ebx + 6]
test dl, dl
jne 0x4a7e5f
add esp, 0x50
ret
mov dword [esp], ebx
sub eax, ecx
mov dword [esp + 4], eax
call fcn.004a6710
jmp 0x4a7e5b
mov eax, ebp
call fcn.004502f0
jmp 0x4a7e44
mov byte [esp + 0x23], dl
lea eax, [0x6692a0]
mov dword [esp], eax
mov dword [esp + 4], ebp
mov ecx, dword [esp + 0x2c]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], ebx
call fcn.0043bd10
mov ebp, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov esi, dword [esp + 0x1c]
lea ebx, [eax + 2]
mov eax, dword [esp + 0x60]
mov ecx, dword [esp + 0x24]
movzx edx, byte [esp + 0x23]
mov edi, dword [esp + 0x40]
jmp 0x4a7baf
mov dword [esp], ebx
sub esi, ecx
mov dword [esp + 4], esi
call fcn.004a6710
mov eax, dword [esp + 0x60]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x40]
mov ebx, dword [esp + 0x54]
jmp 0x4a7b76
mov ecx, ebp
jmp 0x4a7b76
mov ecx, ebp
jmp 0x4a7b76
mov edx, esi
mov esi, ebp
jmp 0x4a7b41
movzx edx, byte [ebx + 8]
test dl, dl
je 0x4a7f11
lea edx, [ebp + 2]
mov ebp, edx
mov edx, esi
jmp 0x4a7b45
mov edx, ebp
jmp 0x4a7f08
movzx eax, byte [ebx + 4]
test al, al
jne 0x4a7f21
add esp, 0x50
ret
mov eax, dword [ebx + 0x10]
mov dword [esp], ebx
mov dword [esp + 4], eax
call fcn.004a6710
jmp 0x4a7f1d
mov ebp, eax
jmp 0x4a7b16
mov eax, dword [esp + 0x5c]
jmp 0x4a7af9
mov eax, ebx
mov ecx, ebp
call fcn.00450370
mov eax, ebx
mov ecx, ebp
call fcn.00450370
mov eax, ebp
mov ecx, ebx
call fcn.00450370
mov eax, ebp
mov ecx, ebx
call fcn.00450370
mov eax, 0x10
mov ecx, edx
call fcn.00450370
mov eax, 0x10
mov ecx, ebx
call fcn.00450370
nop
call fcn.0044eab0
jmp fcn.004a7ad0