Function at 0x5ad050
Capabilities:
Enumerate pe sections

Disassembly:
sub esp, 0x40
lea eax, [esp]
push ebx
push ebp
mov ebp, dword [esp + 0x4c]
push esi
push edi
push eax
push 0
push 1
push ebp
call fcn.005aa540
add esp, 0x10
test eax, eax
je 0x5ad63c
mov eax, dword [esp + 0x10]
cmp eax, 0x31000
jb 0x5ad619
cmp eax, 0x33002
ja 0x5ad619
lea ecx, [esp + 0x34]
push 0x1c
push ecx
push ebp
call fcn.005a3ad0
add esp, 0xc
cmp eax, 0x1c
jne 0x5ad63c
lea edx, [esp + 0x34]
push eax
push edx
call fcn.005aa650
lea eax, [esp + 0x4c]
push 0xc
push eax
call fcn.005aa660
mov ecx, dword [esp + 0x44]
mov edx, dword [esp + 0x48]
mov eax, dword [esp + 0x4c]
push ecx
push edx
push eax
call fcn.005acd10
mov esi, eax
add esp, 0x1c
test esi, esi
je 0x5ad63c
mov edx, dword [esp + 0x44]
lea ecx, [esi + 0x54]
mov dword [esi + 0x54], edx
mov eax, dword [esp + 0x48]
mov dword [ecx + 4], eax
mov edx, dword [esp + 0x4c]
mov dword [ecx + 8], edx
mov eax, dword [esp + 0x40]
cmp eax, 1
jle 0x5ad114
dec eax
push eax
push esi
call fcn.005ac9a0
add esp, 8
test eax, eax
jl 0x5ad1be
test dword [esi + 8], 0x1000000
jne 0x5ad2d9
mov eax, dword [esi + 0x14]
test eax, eax
je 0x5ad2d9
test byte [esp + 0x34], 8
je 0x5ad150
lea edi, [eax*4]
mov eax, dword [esi + 0x30]
push edi
push eax
push ebp
call fcn.005a3ad0
add esp, 0xc
cmp eax, edi
jne 0x5ad496
mov ecx, dword [esi + 0x1c]
test ecx, ecx
jle 0x5ad190
mov eax, dword [esi + 0x14]
xor edi, edi
shl eax, 3
test ecx, ecx
mov dword [esp + 0x54], eax
jle 0x5ad190
lea ebx, [esi + 0x34]
jmp 0x5ad170
mov eax, dword [esp + 0x54]
mov ecx, dword [ebx]
push eax
push ecx
push ebp
call fcn.005aa740
add esp, 0xc
test eax, eax
je 0x5ad23e
mov eax, dword [esi + 0x1c]
inc edi
add ebx, 4
cmp edi, eax
jl 0x5ad16c
mov eax, dword [esi + 0x10]
test eax, eax
mov dword [esp + 0x54], eax
je 0x5ad2d9
mov edi, dword [esi + 0x2c]
mov edx, eax
lea ebx, [edx*8]
push ebx
push edi
push ebp
call fcn.005a3ad0
add esp, 0xc
cmp eax, ebx
je 0x5ad2a1
dec word [esi + 0xe]
cmp word [esi + 0xe], 0
jg 0x5ad63c
mov eax, dword [esi + 0x64]
test eax, eax
je 0x5ad1dd
push eax
call fcn.005c3080
add esp, 4
inc word [esi + 0xe]
push 0xfff
push esi
call fcn.005acc30
push esi
push 0x619274
call fcn.005c3850
mov eax, dword [esi + 0x68]
add esp, 0x10
test eax, eax
je 0x5ad217
push eax
mov eax, dword [0x661228]
call dword [eax + 0x134]
add esp, 4
mov dword [esi + 0x68], 0
lea ecx, [esi + 0x20]
push ecx
call fcn.005c8b10
dec word [esi + 0xe]
mov edx, dword [0x661228]
push esi
call dword [edx + 0x134]
add esp, 8
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x40
ret
dec word [esi + 0xe]
cmp word [esi + 0xe], 0
jg 0x5ad63c
mov eax, dword [esi + 0x64]
test eax, eax
je 0x5ad25d
push eax
call fcn.005c3080
add esp, 4
inc word [esi + 0xe]
push 0xfff
push esi
call fcn.005acc30
push esi
push 0x619274
call fcn.005c3850
mov eax, dword [esi + 0x68]
add esp, 0x10
test eax, eax
je 0x5ad298
mov edx, dword [0x661228]
push eax
call dword [edx + 0x134]
add esp, 4
mov dword [esi + 0x68], 0
lea eax, [esi + 0x20]
push eax
jmp 0x5ad473
push ebx
push edi
call fcn.005aa650
mov eax, dword [esp + 0x5c]
add esp, 8
test eax, eax
je 0x5ad2d9
mov ecx, eax
mov ax, word [edi]
mov dx, word [edi + 2]
mov word [edi], dx
mov dx, word [edi + 6]
mov word [edi + 2], ax
mov ax, word [edi + 4]
mov word [edi + 4], dx
mov word [edi + 6], ax
add edi, 8
dec ecx
jne 0x5ad2b5
mov eax, dword [esi + 0x18]
xor ebx, ebx
cmp eax, ebx
mov dword [esp + 0x54], ebx
jle 0x5ad3c7
mov edi, dword [esi + 0x68]
lea eax, [esp + 0x1c]
push 0x18
push eax
push ebp
add edi, ebx
call fcn.005a3ad0
add esp, 0xc
cmp eax, 0x18
jne 0x5ad496
lea ecx, [esp + 0x1c]
push 0xc
push ecx
call fcn.005aa660
lea edx, [esp + 0x30]
push 4
push edx
call fcn.005aa660
lea eax, [esp + 0x2c]
push 0x18
push eax
call fcn.005aa650
mov edx, dword [esp + 0x34]
lea ecx, [edi + 4]
add esp, 0x18
mov dword [ecx], edx
mov eax, dword [esp + 0x20]
mov dword [ecx + 4], eax
mov edx, dword [esp + 0x24]
mov dword [ecx + 8], edx
mov eax, dword [esp + 0x28]
mov dword [ecx + 0xc], eax
mov eax, dword [esp + 0x2c]
test eax, eax
je 0x5ad389
mov eax, dword [esp + 0x30]
test eax, eax
mov eax, dword [esi + 0x14]
je 0x5ad36d
mov edx, dword [edi + 0x14]
lea ecx, [eax + eax*2]
shl ecx, 3
push ecx
push edx
jmp 0x5ad39f
mov ecx, dword [edi + 0x14]
lea eax, [eax + eax*2]
shl eax, 2
push eax
push ecx
push ebp
call fcn.005aa740
add esp, 0xc
test eax, eax
je 0x5ad496
mov eax, dword [esp + 0x30]
test eax, eax
je 0x5ad3b0
mov eax, dword [esi + 0x14]
lea edx, [eax + eax*2]
mov eax, dword [edi + 0x18]
shl edx, 2
push edx
push eax
push ebp
call fcn.005aa740
add esp, 0xc
test eax, eax
je 0x5ad496
mov eax, dword [esp + 0x54]
mov ecx, dword [esi + 0x18]
inc eax
add ebx, 0x1c
cmp eax, ecx
mov dword [esp + 0x54], eax
jl 0x5ad2ea
lea ecx, [esp + 0x10]
push ecx
push 0
push 8
push ebp
call fcn.005aa540
add esp, 0x10
test eax, eax
je 0x5ad63c
mov eax, dword [esp + 0x10]
cmp eax, 0x31000
jb 0x5ad579
cmp eax, 0x33002
ja 0x5ad579
lea edx, [esp + 0x44]
push edx
call fcn.005adb50
lea edi, [esi + 0x20]
push edi
push ebp
call fcn.005c8c80
add esp, 0xc
test eax, eax
jne 0x5ad516
dec word [esi + 0xe]
cmp word [esi + 0xe], ax
jg 0x5ad63c
mov eax, dword [esi + 0x64]
test eax, eax
je 0x5ad438
push eax
call fcn.005c3080
add esp, 4
inc word [esi + 0xe]
push 0xfff
push esi
call fcn.005acc30
push esi
push 0x619274
call fcn.005c3850
mov eax, dword [esi + 0x68]
add esp, 0x10
test eax, eax
je 0x5ad472
push eax
mov eax, dword [0x661228]
call dword [eax + 0x134]
add esp, 4
mov dword [esi + 0x68], 0
push edi
call fcn.005c8b10
dec word [esi + 0xe]
mov ecx, dword [0x661228]
push esi
call dword [ecx + 0x134]
add esp, 8
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x40
ret
dec word [esi + 0xe]
cmp word [esi + 0xe], 0
jg 0x5ad63c
mov eax, dword [esi + 0x64]
test eax, eax
je 0x5ad4b5
push eax
call fcn.005c3080
add esp, 4
inc word [esi + 0xe]
push 0xfff
push esi
call fcn.005acc30
push esi
push 0x619274
call fcn.005c3850
mov eax, dword [esi + 0x68]
add esp, 0x10
test eax, eax
je 0x5ad4f0
mov ecx, dword [0x661228]
push eax
call dword [ecx + 0x134]
add esp, 4
mov dword [esi + 0x68], 0
lea edx, [esi + 0x20]
push edx
call fcn.005c8b10
dec word [esi + 0xe]
mov eax, dword [0x661228]
push esi
call dword [eax + 0x134]
add esp, 8
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x40
ret
push 0
call fcn.005adb50
push esi
push ebp
push 0x619274
call fcn.005c3a20
add esp, 0x10
test eax, eax
je 0x5ad53d
push esi
call fcn.005acc60
add esp, 4
test eax, eax
jne 0x5ad56f
dec word [esi + 0xe]
cmp word [esi + 0xe], 0
jg 0x5ad63c
mov eax, dword [esi + 0x64]
test eax, eax
je 0x5ad55c
push eax
call fcn.005c3080
add esp, 4
push esi
call fcn.005ad650
add esp, 4
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x40
ret
mov eax, esi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x40
ret
dec word [esi + 0xe]
cmp word [esi + 0xe], 0
jg 0x5ad5ec
mov eax, dword [esi + 0x64]
test eax, eax
je 0x5ad594
push eax
call fcn.005c3080
add esp, 4
inc word [esi + 0xe]
push 0xfff
push esi
call fcn.005acc30
push esi
push 0x619274
call fcn.005c3850
mov eax, dword [esi + 0x68]
add esp, 0x10
test eax, eax
je 0x5ad5cf
mov edx, dword [0x661228]
push eax
call dword [edx + 0x134]
add esp, 4
mov dword [esi + 0x68], 0
lea eax, [esi + 0x20]
push eax
call fcn.005c8b10
dec word [esi + 0xe]
mov ecx, dword [0x661228]
push esi
call dword [ecx + 0x134]
add esp, 8
push 0x80000004
mov dword [esp + 0x18], 2
call fcn.005c3970
lea edx, [esp + 0x18]
mov dword [esp + 0x1c], eax
push edx
call fcn.005c3910
add esp, 8
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x40
ret
push 0x80000004
mov dword [esp + 0x18], 2
call fcn.005c3970
mov dword [esp + 0x1c], eax
lea eax, [esp + 0x18]
push eax
call fcn.005c3910
add esp, 8
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x40
ret