Function at 0x841590
Capabilities:
Enumerate pe sections

Disassembly:
sub esp, 0x1c
mov eax, dword [esp + 0x20]
push ebx
push ebp
push esi
mov ecx, dword [eax + 0x14]
mov esi, dword [eax + 0x24]
xor ebp, ebp
push edi
mov ecx, dword [ecx + 0xa8]
mov edi, dword [eax + 0x30]
mov dword [esp + 0x20], esi
mov dword [esp + 0x24], ebp
mov ebx, dword [ecx + 0x24]
mov ecx, dword [eax + 0x28]
mov dword [esp + 0x1c], ecx
mov ecx, dword [eax + 0x18]
mov edx, dword [ebx + 4]
and ecx, 0xc0000000
cmp ecx, 0x40000000
jne 0x8415f6
mov dword [ebx + 0x84], eax
mov dword [ebx + 0x8c], 1
mov ecx, dword [eax + 0x3c]
push eax
mov dword [ebx + 0x90], ecx
call fcn.00841538
jmp 0x8419cc
xor eax, eax
push 8
mov ah, byte [edi + 1]
pop ecx
mov al, byte [edi]
mov dword [esp + 0x28], eax
mov ax, word [edi + 2]
mov word [esp + 0x14], ax
mov ax, word [edi + 4]
mov word [esp + 0x10], ax
mov ax, word [edi + 6]
mov word [esp + 0x18], ax
lea edi, [ebx + 0x98]
xor eax, eax
rep stosd dword es:[edi], eax
movzx eax, word [esp + 0x28]
mov ecx, 0x123
cmp eax, ecx
jg 0x8417c9
je 0x84170b
mov edi, 0x80
sub eax, edi
je 0x8416ff
dec eax
je 0x8416f9
dec eax
je 0x8416f9
sub eax, 0x1e
je 0x8416ef
sub eax, 3
je 0x841683
sub eax, 0x5f
je 0x841678
sub eax, 0x1e
jne 0x841856
movzx eax, word [esp + 0x14]
dec eax
jmp 0x8418fa
movzx ebp, word [esp + 0x10]
lea eax, [edx + ebp*2 + 0xe]
push eax
call dword [0x17aa8]
mov bx, word [ebx + ebp*4 + 0x94]
push 4
movzx eax, ax
mov edx, eax
mov ecx, eax
sar edx, 2
shl bx, 4
and edx, 2
pop ebp
sar ecx, 1
or ebx, edx
mov dl, cl
and edx, 1
and ecx, 2
or ebx, edx
mov edx, eax
and edx, 0x100
mov word [esi + 2], bx
or edx, edi
mov edi, eax
sar edi, 5
shl edx, 1
and edi, 0x10
or edx, edi
mov edi, eax
sar edi, 0xa
and edi, ebp
and eax, 1
or edx, edi
or edx, ecx
or edx, eax
mov word [esi], dx
jmp 0x8419b4
and dword [esi], 0
push 4
jmp 0x841804
and word [esi], 0
jmp 0x841704
mov word [esi], 1
push 2
jmp 0x841804
movzx eax, word [esp + 0x14]
cmp eax, 0x11
jg 0x84179f
je 0x841783
dec eax
je 0x841769
dec eax
je 0x84174f
sub eax, 6
je 0x8419b2
sub eax, 8
jne 0x8419b4
movzx eax, word [esp + 0x10]
lea esi, [edx + eax*2 + 0xe]
push esi
call dword [0x17aa8]
and eax, 0xfff5
or al, 2
jmp 0x8419aa
movzx eax, word [esp + 0x10]
lea esi, [edx + eax*2 + 0xe]
push esi
call dword [0x17aa8]
and eax, 0xeff5
jmp 0x8419aa
movzx eax, word [esp + 0x10]
lea esi, [edx + eax*2 + 0xe]
push esi
call dword [0x17aa8]
and eax, 0xfff1
jmp 0x8419aa
movzx eax, word [esp + 0x10]
lea esi, [edx + eax*2 + 0xe]
push esi
call dword [0x17aa8]
and eax, 0xfff5
or al, 8
jmp 0x8419aa
sub eax, 0x12
je 0x8419b2
dec eax
je 0x8419b2
dec eax
jne 0x8419b4
movzx eax, word [esp + 0x10]
xor ebp, ebp
mov dword [ebx + eax*4 + 0x94], ebp
jmp 0x8419b4
sub eax, 0x323
je 0x8418e0
sub eax, 0x1dd
je 0x8418d0
sub eax, 0x180
je 0x841841
sub eax, 0x20
je 0x84180a
sub eax, 0x1e0
je 0x8417ff
sub eax, 0x80
je 0x8419b2
jmp 0x841856
mov byte [esi], 1
push 1
pop ebp
jmp 0x8419b4
mov al, byte [ebx + 0x94]
mov ecx, dword [esp + 0x18]
push 9
mov byte [0x17ce6], al
pop edx
cmp cx, dx
mov eax, edx
ja 0x841826
movzx eax, cx
mov ebp, dword [esp + 0x1c]
cmp ebp, eax
jb 0x841838
cmp cx, dx
mov ebp, edx
ja 0x841838
movzx ebp, cx
mov ecx, ebp
mov esi, 0x17ce4
jmp 0x84188d
movzx eax, word [esp + 0x14]
shr eax, 8
dec eax
je 0x8418a4
dec eax
je 0x841863
dec eax
jne 0x8419b4
mov dword [esp + 0x24], 0xffffffe0
jmp 0x8419b4
mov ecx, dword [esp + 0x18]
push 0x19
pop edx
cmp cx, dx
mov eax, edx
ja 0x841874
movzx eax, cx
mov ebp, dword [esp + 0x1c]
cmp ebp, eax
jb 0x841886
cmp cx, dx
mov ebp, edx
ja 0x841886
movzx ebp, cx
mov ecx, ebp
mov esi, 0x17cc8
mov edi, dword [esp + 0x20]
mov eax, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x8419b4
mov ecx, dword [esp + 0x18]
push 0x12
pop edx
cmp cx, dx
mov eax, edx
ja 0x8418b5
movzx eax, cx
mov ebp, dword [esp + 0x1c]
cmp ebp, eax
jb 0x8418c7
cmp cx, dx
mov ebp, edx
ja 0x8418c7
movzx ebp, cx
mov ecx, ebp
mov esi, 0x17cb4
jmp 0x84188d
movzx eax, word [esp + 0x14]
mov dword [ebx + 0x80], eax
jmp 0x8419b2
movzx eax, word [esp + 0x14]
dec eax
je 0x841993
dec eax
je 0x841979
dec eax
dec eax
je 0x841905
sub eax, 4
jne 0x8419b4
jmp 0x8419b2
movzx eax, word [esp + 0x10]
mov edi, dword [0x17aa8]
mov dword [esp + 0x28], eax
lea esi, [edx + eax*2 + 0xe]
push esi
call edi
mov ebp, dword [0x17aac]
and eax, 0xfdf5
or ah, 2
push eax
push esi
call ebp
push 0xa
call fcn.0083b5f0
push esi
mov eax, dword [esp + 0x2c]
mov dword [ebx + eax*4 + 0x94], 1
call edi
and eax, 0xfdf5
push eax
push esi
call ebp
push 0xa
call fcn.0083b624
push esi
call edi
and eax, 0xfff1
or al, 4
push eax
push esi
call ebp
push 0xa
call fcn.0083b5f0
push esi
call edi
movzx eax, ax
or al, 0xa
push eax
push esi
call ebp
jmp 0x8419b2
movzx eax, word [esp + 0x10]
lea esi, [edx + eax*2 + 0xe]
push esi
call dword [0x17aa8]
and eax, 0xeff5
or ah, 0x10
jmp 0x8419aa
movzx eax, word [esp + 0x10]
lea esi, [edx + eax*2 + 0xe]
push esi
call dword [0x17aa8]
and eax, 0xfff1
or al, 4
push eax
push esi
call dword [0x17aac]
xor ebp, ebp
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x24]
mov dword [eax + 0x1c], ecx
mov ecx, dword [eax + 0x4c]
test ecx, ecx
mov dword [eax + 0x2c], ebp
je 0x8419cc
push eax
call ecx
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1c
ret 4