Function at 0x41c797d0
Capabilities:
Enumerate pe sections

Disassembly:
push 0xffffffffffffffff
push 0x41c9bf28
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x38
mov eax, dword [esp + 0x48]
push ebx
mov dword [eax], 0
mov ebx, dword [ecx + 8]
push ebp
lea eax, [ebx*8 + 4]
lea ebp, [ebx*4]
mov dword [esp + 8], eax
mov eax, ebp
test eax, eax
push esi
mov dword [esp + 0x10], ecx
mov dword [esp + 0x28], ebx
jne 0x41c7981d
mov eax, 1
push eax
call fcn.41c671c0
mov esi, eax
add esp, 4
test esi, esi
mov dword [esp + 0x1c], esi
jne 0x41c79835
call fcn.41c43850
push edi
mov dword [esp + 0x30], esi
mov ecx, ebp
mov edx, ecx
shr ecx, 2
xor eax, eax
mov edi, esi
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
mov dword [esp + 0x50], 0
rep stosb byte es:[edi], al
mov dword [esp + 0x40], esi
mov dword [esp + 0x44], ebx
test ebp, ebp
mov byte [esp + 0x50], 1
jne 0x41c7986c
mov ebp, 1
push ebp
call fcn.41c671c0
add esp, 4
test eax, eax
mov dword [esp + 0x18], eax
jne 0x41c79882
call fcn.41c43850
mov dword [esp + 0x34], eax
xor ebp, ebp
test ebx, ebx
mov byte [esp + 0x50], 2
jle 0x41c798e9
sub eax, esi
mov edi, esi
mov dword [esp + 0x24], eax
lea esp, [esp]
mov eax, dword [esp + 0x14]
mov ecx, dword [eax + 4]
mov ecx, dword [ecx + ebp*4]
mov ax, word [ecx]
test ax, ax
jne 0x41c798ba
push edi
call fcn.41c76250
jmp 0x41c798d0
cmp ax, 4
jne 0x41c798c8
push edi
call fcn.41c78b60
jmp 0x41c798d0
mov dword [edi], 0
xor eax, eax
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x24]
add ecx, eax
mov dword [edx + edi], eax
inc ebp
add edi, 4
cmp ebp, ebx
mov dword [esp + 0x10], ecx
jl 0x41c798a0
mov edi, dword [esp + 0x10]
add edi, 3
shr edi, 2
shl edi, 2
test edi, edi
mov eax, edi
jne 0x41c79901
mov eax, 1
push eax
call fcn.41c671c0
mov edx, eax
add esp, 4
test edx, edx
jne 0x41c79915
call fcn.41c43850
mov ecx, edi
mov ebp, ecx
shr ecx, 2
xor eax, eax
mov edi, edx
rep stosd dword es:[edi], eax
mov ecx, ebp
and ecx, 3
rep stosb byte es:[edi], al
mov eax, dword [esp + 0x58]
mov dword [eax], edx
mov byte [edx], 0
mov byte [edx + 1], 0
lea eax, [ebx*4]
test eax, eax
mov byte [edx + 2], bh
mov byte [edx + 3], bl
lea edi, [edx + 4]
jne 0x41c7994f
mov eax, 1
push eax
call fcn.41c671c0
mov ebp, eax
add esp, 4
test ebp, ebp
mov dword [esp + 0x24], ebp
jne 0x41c79967
call fcn.41c43850
xor eax, eax
test ebx, ebx
jle 0x41c79979
lea ecx, [ecx]
mov dword [ebp + eax*4], eax
inc eax
cmp eax, ebx
jl 0x41c79970
mov ecx, dword [esp + 0x14]
push ecx
push 0x41c778f0
push 4
push ebx
push ebp
call fcn.41c7d3a0
xor ecx, ecx
add esp, 0x14
test ebx, ebx
lea edx, [ebx*8 + 4]
mov dword [esp + 0x1c], ecx
jle 0x41c79a5b
lea eax, [edi + 6]
jmp 0x41c799b0
mov edi, dword [esp + 0x28]
lea ecx, [ecx]
mov ebp, dword [ebp + ecx*4]
mov ecx, dword [esp + 0x14]
mov ecx, dword [ecx + 4]
mov ecx, dword [ecx + ebp*4]
mov bx, word [ecx + 4]
mov cx, word [ecx + 6]
mov word [esp + 0x3a], cx
mov cx, bx
shr cx, 8
mov byte [edi], cl
mov cl, bl
mov byte [eax - 5], cl
mov cx, word [esp + 0x3a]
shr cx, 8
mov byte [eax - 4], cl
mov cl, byte [esp + 0x3a]
mov byte [eax - 3], cl
mov ecx, edx
shr ecx, 0x18
mov byte [eax - 2], cl
mov ecx, edx
shr ecx, 0x10
mov byte [eax - 1], cl
add edi, 8
mov ecx, edx
shr ecx, 8
mov byte [eax], cl
mov ecx, dword [esp + 0x18]
mov byte [eax + 1], dl
mov ecx, dword [ecx + ebp*4]
mov esi, dword [esi + ebp*4]
mov dword [esp + 0x28], edi
mov edi, dword [esp + 0x58]
mov edi, dword [edi]
mov word [esp + 0x38], bx
mov ebx, ecx
shr ecx, 2
add edi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, ebx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x18]
mov ebx, dword [ecx + ebp*4]
mov ecx, dword [esp + 0x1c]
mov ebp, dword [esp + 0x24]
mov esi, dword [esp + 0x20]
add edx, ebx
mov ebx, dword [esp + 0x2c]
add eax, 8
inc ecx
cmp ecx, ebx
mov dword [esp + 0x1c], ecx
jl 0x41c799a9
push ebp
call fcn.41c67200
mov edx, dword [esp + 0x1c]
push edx
mov byte [esp + 0x58], 1
call fcn.41c67200
add esp, 8
xor edi, edi
test ebx, ebx
mov byte [esp + 0x50], 0
jle 0x41c79a98
mov edi, edi
mov eax, dword [esi + edi*4]
push eax
call fcn.41c67200
add esp, 4
mov dword [esi + edi*4], 0
inc edi
cmp edi, ebx
jl 0x41c79a80
push esi
mov dword [esp + 0x54], 0xffffffff
call fcn.41c67200
mov ecx, dword [esp + 0x4c]
mov eax, dword [esp + 0x14]
add esp, 4
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x44
ret 4