Function at 0x41ba00
Capabilities:
Enumerate pe sections

Disassembly:
sub esp, 0x414
push ebx
push ebp
push esi
push edi
xor ebx, ebx
mov ecx, 0x2e
xor eax, eax
lea edi, [esp + 0x269]
mov byte [esp + 0x268], bl
mov byte [esp + 0x13], al
rep stosd dword es:[edi], eax
mov ecx, 0x3f
lea edi, [esp + 0x69]
mov byte [esp + 0x68], al
mov dword [esp + 0x18], ebx
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov eax, dword [esp + 0x42c]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x14], ebx
mov dword [esp + 0x38], ebx
lea ecx, [eax + 0x14]
mov dword [esp + 0x30], ebx
mov word [esp + 0x3c], bx
mov dword [esp + 0x3e], ebx
mov edx, dword [ecx]
mov dword [esp + 0x21], ebx
mov dword [esp + 0x44], edx
mov edx, dword [ecx + 4]
mov dword [esp + 0x48], edx
mov edx, dword [ecx + 8]
mov dword [esp + 0x4c], edx
mov edx, dword [ecx + 0xc]
mov dword [esp + 0x50], edx
mov cl, byte [ecx + 0x10]
mov byte [esp + 0x54], cl
mov ecx, dword [eax + 0x25]
cmp ecx, ebx
jne 0x41ba9d
pop edi
pop esi
pop ebp
mov eax, 0x15
pop ebx
add esp, 0x414
ret
mov ebp, dword [esp + 0x428]
lea edx, [esp + 0x18]
push edx
lea eax, [esp + 0x17]
push 1
push eax
push ebx
push ebx
push 0x25
push ebp
call fcn.00416e20
test eax, eax
je 0x41bace
pop edi
pop esi
pop ebp
mov eax, 0xe0002312
pop ebx
add esp, 0x414
ret
mov al, byte [esp + 0x13]
test al, al
je 0x41bb03
cmp al, 1
je 0x41baea
pop edi
pop esi
pop ebp
mov eax, 0xe0002308
pop ebx
add esp, 0x414
ret
cmp dword [ebp + 4], 0x20005
jae 0x41bb1c
pop edi
pop esi
pop ebp
mov eax, 0xe0002308
pop ebx
add esp, 0x414
ret
cmp dword [ebp + 4], 0x20300
jae 0x41bb1c
pop edi
pop esi
pop ebp
mov eax, 0xe0002308
pop ebx
add esp, 0x414
ret
cmp byte [esp + 0x44], 0x12
jne 0x41bb89
lea ecx, [esp + 0x60]
push ecx
push ebp
call fcn.0041b8a0
add esp, 8
test eax, eax
je 0x41bb45
pop edi
pop esi
pop ebp
mov eax, 0xe0002314
pop ebx
add esp, 0x414
ret
mov ecx, 2
lea edi, [esp + 0x60]
lea esi, [esp + 0x47]
xor edx, edx
repe cmpsd dword [esi], dword es:[edi]
je 0x41bb68
pop edi
pop esi
pop ebp
mov eax, 0x13
pop ebx
add esp, 0x414
ret
mov al, byte [esp + 0x13]
test al, al
jne 0x41bb89
cmp dword [ebp + 4], 0x20302
jae 0x41bbf3
pop edi
pop esi
pop ebp
mov eax, 0xe0002308
pop ebx
add esp, 0x414
ret
cmp al, 1
jne 0x41bbef
lea eax, [esp + 0x18]
lea ecx, [esp + 0x168]
push eax
push 0x100
push ecx
lea edx, [esp + 0x2d]
push 4
push edx
push 0x2e
push ebp
call fcn.00416e20
test eax, eax
je 0x41bbc2
pop edi
pop esi
pop ebp
mov eax, 0xe0002313
pop ebx
add esp, 0x414
ret
mov ecx, dword [esp + 0x18]
mov al, byte [esp + 0x168]
dec ecx
lea esi, [esp + 0x169]
mov edx, ecx
lea edi, [esp + 0x25]
shr ecx, 2
mov byte [esp + 0x20], al
mov al, byte [esp + 0x13]
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
test al, al
jne 0x41bc5b
lea eax, [esp + 0x18]
lea ecx, [esp + 0x168]
push eax
push 0x100
push ecx
lea edx, [esp + 0x274]
push 1
push edx
push 0x43e2f0
push ebp
mov byte [esp + 0x284], 0x84
call fcn.00418960
cmp eax, ebx
jne 0x41c2dd
lea eax, [esp + 0x324]
lea ecx, [esp + 0x168]
push eax
push ecx
call fcn.0041b930
add esp, 8
test ax, ax
je 0x41bd43
pop edi
pop esi
pop ebp
mov eax, 0xe0002316
pop ebx
add esp, 0x414
ret
mov edx, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
mov eax, dword [esp + 0x20]
mov dword [esp + 0x6c], edx
mov dl, byte [esp + 0x2c]
mov dword [esp + 0x70], ecx
lea ecx, [esp + 0x75]
mov byte [esp + 0x74], dl
push 1
push ecx
lea edx, [esp + 0x2d]
lea ecx, [esp + 0x29]
push edx
push ecx
push eax
mov dword [esp + 0x7c], eax
mov byte [esp + 0x89], 0x84
call fcn.0041b330
add esp, 0x14
lea edx, [esp + 0x18]
lea eax, [esp + 0x168]
lea ecx, [esp + 0x68]
push edx
push 0x100
push eax
push 0xe
push ecx
push 0x43e2f0
push ebp
call fcn.00418960
mov esi, eax
cmp esi, ebx
je 0x41bcea
lea edx, [esp + 0x18]
lea eax, [esp + 0x20]
push edx
push ebx
push ebx
push 0xd
push eax
push 0x2f
push ebp
call fcn.00416e20
mov eax, esi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x414
ret
mov ecx, dword [esp + 0x168]
mov edx, dword [esp + 0x16c]
mov dword [esp + 0x25], ecx
lea eax, [esp + 0x324]
lea ecx, [esp + 0x170]
push eax
push ecx
mov dword [esp + 0x31], edx
call fcn.0041b930
add esp, 8
test ax, ax
je 0x41bd43
lea edx, [esp + 0x18]
lea eax, [esp + 0x20]
push edx
push ebx
push ebx
push 0xd
push eax
push 0x2f
push ebp
call fcn.00416e20
pop edi
pop esi
pop ebp
mov eax, 0xe0002316
pop ebx
add esp, 0x414
ret
mov edx, dword [esp + 0x328]
mov eax, dword [esp + 0x32c]
mov ecx, dword [esp + 0x324]
mov dword [esp + 0x48], edx
mov dl, byte [esp + 0x32f]
mov dword [esp + 0x4c], eax
mov byte [esp + 0x1c], dl
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x44], ecx
mov cx, word [esp + 0x330]
cmp eax, ebx
mov word [esp + 0x50], cx
je 0x41bdc7
lea eax, [eax + eax*2]
shl eax, 1
push eax
call fcn.0040a1dc
add esp, 4
cmp eax, ebx
mov dword [esp + 0x14], eax
jne 0x41bdc7
cmp byte [esp + 0x13], 1
jne 0x41bdb7
lea ecx, [esp + 0x18]
lea edx, [esp + 0x20]
push ecx
push ebx
push ebx
push 0xd
push edx
push 0x2f
push ebp
call fcn.00416e20
pop edi
pop esi
pop ebp
mov eax, 0xe0002319
pop ebx
add esp, 0x414
ret
mov ecx, 0x40
xor eax, eax
lea edi, [esp + 0x324]
xor bl, bl
rep stosd dword es:[edi], eax
mov eax, dword [esp + 0x1c]
mov byte [esp + 0x34], bl
test eax, eax
jbe 0x41bf82
mov ebp, dword [esp + 0x34]
mov edi, dword [esp + 0x14]
mov al, byte [esp + 0x13]
test al, al
jne 0x41be69
lea eax, [esp + 0x18]
lea ecx, [esp + 0x168]
push eax
mov eax, dword [esp + 0x42c]
push 0x100
push ecx
lea edx, [esp + 0x274]
push 0xb9
push edx
push 0x43e2f0
push eax
mov byte [esp + 0x284], 0x86
mov byte [esp + 0x2b5], bl
call fcn.00418960
mov esi, eax
test esi, esi
jne 0x41c02a
lea ecx, [esp + 0x324]
lea edx, [esp + 0x168]
push ecx
push edx
call fcn.0041b930
add esp, 8
test ax, ax
jne 0x41c040
jmp 0x41bf37
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x20]
mov edx, dword [esp + 0x28]
mov dword [esp + 0x6c], ecx
mov cl, byte [esp + 0x2c]
lea esi, [esp + 0x268]
mov byte [esp + 0x74], cl
mov ecx, 0x2e
lea edi, [esp + 0x75]
mov dword [esp + 0x68], eax
mov dword [esp + 0x70], edx
mov byte [esp + 0x268], 0x86
mov byte [esp + 0x299], bl
lea edx, [esp + 0x75]
rep movsd dword es:[edi], dword [esi]
push 0xb9
push edx
lea ecx, [esp + 0x2d]
lea edx, [esp + 0x29]
push ecx
push edx
push eax
movsb byte es:[edi], byte [esi]
call fcn.0041b330
add esp, 0x14
lea eax, [esp + 0x18]
lea ecx, [esp + 0x168]
lea edx, [esp + 0x68]
push eax
mov eax, dword [esp + 0x42c]
push 0x100
push ecx
push 0xc6
push edx
push 0x43e2f0
push eax
call fcn.00418960
mov esi, eax
test esi, esi
jne 0x41c059
mov ecx, dword [esp + 0x168]
mov edx, dword [esp + 0x16c]
mov dword [esp + 0x25], ecx
lea eax, [esp + 0x324]
lea ecx, [esp + 0x170]
push eax
push ecx
mov dword [esp + 0x31], edx
call fcn.0041b930
add esp, 8
test ax, ax
jne 0x41c092
mov edi, dword [esp + 0x14]
mov eax, ebp
mov ecx, dword [esp + 0x324]
and eax, 0xff
inc bl
lea edx, [eax + eax*2]
mov byte [esp + 0x34], bl
mov ebp, dword [esp + 0x34]
lea eax, [edi + edx*2]
mov dword [edi + edx*2], ecx
mov dx, word [esp + 0x328]
mov ecx, dword [esp + 0x1c]
mov word [eax + 4], dx
mov eax, ebp
and eax, 0xff
cmp eax, ecx
jb 0x41bdf1
mov ebp, dword [esp + 0x428]
cmp byte [esp + 0x13], 1
jne 0x41bfa1
lea eax, [esp + 0x18]
lea ecx, [esp + 0x20]
push eax
push 0
push 0
push 0xd
push ecx
push 0x2f
push ebp
call fcn.00416e20
mov edx, dword [esp + 0x42c]
mov eax, dword [edx + 0x25]
test eax, eax
jle 0x41bfe8
mov esi, edx
mov edi, eax
mov bl, byte [esi + 0x16]
add esi, 0x29
cmp bl, 1
jne 0x41bfe2
mov eax, dword [esp + 0x1c]
xor ecx, ecx
test eax, eax
jle 0x41bfde
mov dl, byte [esi]
mov eax, dword [esp + 0x14]
cmp byte [eax], dl
je 0x41bfe2
mov ebp, dword [esp + 0x1c]
inc ecx
add eax, 6
cmp ecx, ebp
jl 0x41bfce
inc dword [esp + 0x30]
add esi, 0x1d
dec edi
jne 0x41bfb9
mov eax, dword [esp + 0x4d]
mov ecx, dword [esp + 0x4f]
and eax, 0xff
and ecx, 0xff
sub eax, ecx
mov ecx, dword [esp + 0x30]
cmp ecx, eax
jle 0x41c0ce
mov eax, dword [esp + 0x14]
test eax, eax
je 0x41c01a
push eax
call fcn.0040a080
add esp, 4
pop edi
pop esi
pop ebp
mov eax, 0x11
pop ebx
add esp, 0x414
ret
push edi
call fcn.0040a080
add esp, 4
mov eax, esi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x414
ret
push edi
call fcn.0040a080
add esp, 4
mov eax, 0xe0002316
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x414
ret
mov ecx, dword [esp + 0x14]
push ecx
call fcn.0040a080
mov ecx, dword [esp + 0x42c]
add esp, 4
lea edx, [esp + 0x18]
lea eax, [esp + 0x20]
push edx
push 0
push 0
push 0xd
push eax
push 0x2f
push ecx
call fcn.00416e20
mov eax, esi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x414
ret
mov edx, dword [esp + 0x14]
push edx
call fcn.0040a080
mov edx, dword [esp + 0x42c]
add esp, 4
lea eax, [esp + 0x18]
lea ecx, [esp + 0x20]
push eax
push 0
push 0
push 0xd
push ecx
push 0x2f
push edx
call fcn.00416e20
pop edi
pop esi
pop ebp
mov eax, 0xe0002316
pop ebx
add esp, 0x414
ret
mov edx, dword [esp + 0x434]
mov eax, dword [esp + 0x42c]
mov dword [esp + 0x30], 0
mov dword [edx], 0
mov ecx, dword [eax + 0x25]
test ecx, ecx
jle 0x41c2ca
mov edi, eax
lea ebp, [edi + 0x29]
cmp byte [edi + 0x16], 2
jne 0x41c126
mov esi, dword [esp + 0x1c]
xor ecx, ecx
test esi, esi
jle 0x41c205
mov dl, byte [ebp]
mov eax, dword [esp + 0x14]
cmp byte [eax], dl
je 0x41c126
inc ecx
add eax, 6
cmp ecx, esi
jl 0x41c115
jmp 0x41c205
mov eax, dword [ebp + 0x19]
test eax, eax
je 0x41c228
mov esi, dword [ebp + 0x15]
xor ebx, ebx
add esi, edi
test eax, eax
jle 0x41c205
mov eax, dword [esp + 0x428]
lea ecx, [esp + 0x3c]
lea edx, [esp + 0x38]
push ecx
push edx
push esi
push eax
call fcn.0041c2f0
mov edi, eax
add esp, 0x10
test edi, edi
jne 0x41c249
mov eax, dword [esi + 6]
test eax, eax
je 0x41c267
cmp dword [esp + 0x38], 9
jne 0x41c1e3
mov al, byte [esp + 0x3e]
cmp al, 0xb
je 0x41c288
cmp al, 6
jne 0x41c193
cmp byte [esi + 0xe], 2
jne 0x41c288
jmp 0x41c1c2
cmp al, 7
jne 0x41c1a3
cmp byte [esi + 0xe], 3
jne 0x41c288
jmp 0x41c1c2
cmp al, 8
jne 0x41c1b4
mov al, byte [esi + 0xe]
test al, al
jne 0x41c288
jmp 0x41c1c2
cmp al, 9
jne 0x41c1c2
cmp byte [esi + 0xe], 1
jne 0x41c288
mov eax, dword [esp + 0x40]
xor ecx, ecx
mov cx, word [esi + 0xc]
xor edx, edx
mov dx, word [esi + 0xa]
and eax, 0xffff
add ecx, edx
cmp ecx, eax
ja 0x41c2a9
jmp 0x41c1ef
lea ecx, [eax + 0xe]
mov eax, dword [esp + 0x434]
add dword [eax], ecx
mov eax, dword [ebp + 0x19]
inc ebx
add esi, 0xf
cmp ebx, eax
jl 0x41c140
mov edi, dword [esp + 0x42c]
mov eax, dword [esp + 0x30]
mov ecx, dword [edi + 0x25]
inc eax
add ebp, 0x1d
cmp eax, ecx
mov dword [esp + 0x30], eax
jge 0x41c2ca
mov edi, dword [esp + 0x42c]
jmp 0x41c0fa
mov eax, dword [esp + 0x14]
test eax, eax
je 0x41c239
push eax
call fcn.0040a080
add esp, 4
pop edi
pop esi
pop ebp
mov eax, 0x16
pop ebx
add esp, 0x414
ret
mov eax, dword [esp + 0x14]
test eax, eax
je 0x41c25a
push eax
call fcn.0040a080
add esp, 4
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x414
ret
mov eax, dword [esp + 0x14]
test eax, eax
je 0x41c278
push eax
call fcn.0040a080
add esp, 4
pop edi
pop esi
pop ebp
mov eax, 0x17
pop ebx
add esp, 0x414
ret
mov eax, dword [esp + 0x14]
test eax, eax
je 0x41c299
push eax
call fcn.0040a080
add esp, 4
pop edi
pop esi
pop ebp
mov eax, 0x14
pop ebx
add esp, 0x414
ret
mov eax, dword [esp + 0x14]
test eax, eax
je 0x41c2ba
push eax
call fcn.0040a080
add esp, 4
pop edi
pop esi
pop ebp
mov eax, 0x10
pop ebx
add esp, 0x414
ret
mov eax, dword [esp + 0x14]
test eax, eax
je 0x41c2db
push eax
call fcn.0040a080
add esp, 4
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x414
ret