Function at 0x100578d0
Capabilities:
Enumerate pe sections

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x38
mov eax, dword [0x100b700c]
xor eax, ebp
mov dword [ebp - 4], eax
mov dword [ebp - 0x30], 0
call fcn.10057780
cmp dword [0x100b7c90], 0
je 0x10057a9a
mov eax, dword [ebp + 8]
push eax
call fcn.10056240
add esp, 4
test eax, eax
je 0x10057a91
mov ecx, dword [ebp + 0xc]
push ecx
call fcn.10056240
add esp, 4
test eax, eax
je 0x10057a91
mov edx, dword [ebp + 8]
push edx
call fcn.10056e60
add esp, 4
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 0xffffffff
jne 0x10057a88
mov eax, dword [ebp + 8]
push eax
call fcn.10056140
add esp, 4
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], 0
je 0x10057a7f
mov ecx, dword [ebp + 8]
mov dword [ebp - 0x28], ecx
mov edx, dword [ebp + 0xc]
mov dword [ebp - 0x24], edx
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x20], eax
lea ecx, [ebp - 0x28]
push ecx
call fcn.10057d40
add esp, 4
test eax, eax
je 0x10057a64
call fcn.10056ea0
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 0
je 0x10057a5b
mov edx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x28]
mov dword [edx], eax
mov ecx, dword [ebp - 0x2c]
mov edx, dword [ebp - 0x24]
mov dword [ecx + 4], edx
mov eax, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x20]
mov dword [eax + 8], ecx
mov dl, byte [ebp - 0x1c]
and dl, 1
mov eax, dword [ebp - 0x2c]
mov cl, byte [eax + 0x14]
and cl, 0xfe
or cl, dl
mov edx, dword [ebp - 0x2c]
mov byte [edx + 0x14], cl
mov eax, dword [ebp - 0x2c]
mov cl, byte [eax + 0x14]
and cl, 0xfd
mov edx, dword [ebp - 0x2c]
mov byte [edx + 0x14], cl
mov eax, dword [ebp - 0x2c]
mov cl, byte [eax + 0x14]
and cl, 0xfb
mov edx, dword [ebp - 0x2c]
mov byte [edx + 0x14], cl
mov eax, dword [ebp - 0x18]
and eax, 0xf
mov ecx, dword [ebp - 0x2c]
mov edx, dword [ecx + 0x18]
and edx, 0xfffffff0
or edx, eax
mov eax, dword [ebp - 0x2c]
mov dword [eax + 0x18], edx
mov ecx, dword [ebp - 0x2c]
mov edx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x10]
mov dword [ecx + 0x1c], edx
mov dword [ecx + 0x20], eax
mov ecx, dword [ebp - 0x2c]
mov edx, dword [ebp - 0xc]
mov eax, dword [ebp - 8]
mov dword [ecx + 0x24], edx
mov dword [ecx + 0x28], eax
cmp dword [ebp - 0x1c], 0
je 0x10057a35
mov ecx, dword [ebp + 8]
sub ecx, 5
mov edx, dword [ebp - 0x2c]
add edx, 0xc
mov eax, dword [ecx]
mov dword [edx], eax
mov ax, word [ecx + 4]
mov word [edx + 4], ax
mov cl, byte [ecx + 6]
mov byte [edx + 6], cl
jmp 0x10057a48
mov edx, dword [ebp - 0x2c]
add edx, 0xc
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
mov dword [edx], ecx
mov al, byte [eax + 4]
mov byte [edx + 4], al
cmp dword [ebp + 0x10], 0
je 0x10057a59
mov ecx, dword [ebp + 0x10]
mov edx, dword [ebp - 0x2c]
mov eax, dword [edx + 8]
mov dword [ecx], eax
jmp 0x10057a62
mov dword [ebp - 0x30], 9
jmp 0x10057a6b
mov dword [ebp - 0x30], 8
cmp dword [ebp - 0x30], 0
je 0x10057a7d
mov ecx, dword [ebp - 0x34]
push ecx
call fcn.10056190
add esp, 4
jmp 0x10057a86
mov dword [ebp - 0x30], 9
jmp 0x10057a8f
mov dword [ebp - 0x30], 3
jmp 0x10057a98
mov dword [ebp - 0x30], 7
jmp 0x10057aa1
mov dword [ebp - 0x30], 2
call fcn.100577d0
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100584af
mov esp, ebp
pop ebp
ret 0xc