Function at 0x4e1fe8
Capabilities:
Enumerate pe sections

Disassembly:
sub esp, 0x120
push ebx
push ebp
push esi
mov esi, ecx
push edi
mov ecx, 0x21f1c78
call fcn.005312a0
mov al, byte [esi + 0x530]
xor edx, edx
test al, al
mov dword [esp + 0x18], edx
mov dword [esp + 0x20], edx
je 0x4e21ff
mov ebp, dword [0x21e69b8]
mov ecx, dword [0x21e69b4]
xor edi, edi
lea esp, [esp]
test ecx, ecx
jne 0x4e2028
xor eax, eax
jmp 0x4e202f
mov eax, ebp
sub eax, ecx
sar eax, 2
cmp edx, eax
jge 0x4e243d
test ecx, ecx
jne 0x4e203f
xor eax, eax
jmp 0x4e2046
mov eax, ebp
sub eax, ecx
sar eax, 2
cmp edx, eax
jge 0x4e21f5
lea eax, [ecx + edx*4]
mov dword [0x21e69c0], eax
mov ebx, dword [eax]
test ebx, ebx
mov dword [esp + 0x1c], ebx
je 0x4e21f5
inc dword [esp + 0x18]
movzx eax, byte [esi + 0x530]
fild dword [esp + 0x18]
mov dword [esp + 0x28], eax
imul eax, eax, 0xf50
fcomp dword [eax + esi + 0x1438]
fnstsw ax
test ah, 5
jnp 0x4e21f5
mov eax, dword [esi + 4]
mov ecx, dword [0x706454]
lea edx, [eax + 0x25]
cmp ecx, edx
mov byte [esp + 0x10], 0x82
mov byte [esp + 0x24], 0x80
mov byte [esp + 0x14], 0x78
jl 0x4e20e3
lea edx, [eax + 0x12e]
cmp ecx, edx
jg 0x4e20e3
mov ecx, dword [esi + 8]
mov edx, dword [0x706458]
add ecx, edi
lea ebp, [ecx + 0x70]
cmp edx, ebp
jl 0x4e20e3
add ecx, 0x84
cmp edx, ecx
jg 0x4e20e3
mov byte [esp + 0x10], 0xaa
mov byte [esp + 0x24], 0xaa
mov byte [esp + 0x14], 0xaa
mov edx, dword [esp + 0x28]
mov ecx, dword [esi + edx*4 + 0x534]
cmp ecx, dword [ebx]
jne 0x4e2101
mov byte [esp + 0x10], 0xff
mov byte [esp + 0x24], 0xff
mov byte [esp + 0x14], 0xff
mov edx, dword [esp + 0x18]
mov ebp, dword [esp + 0x14]
mov ebx, dword [esp + 0x24]
mov ecx, dword [esp + 0x10]
push edx
mov edx, dword [esi + 8]
push 0x6ac9c4
push 0
push ebp
push ebx
push ecx
lea ecx, [edx + edi + 0x70]
push ecx
add eax, 0x2a
push eax
push 0x21f1c78
call fcn.005312c0
mov edx, dword [esp + 0x40]
movzx eax, word [edx + 4]
mov ecx, dword [esp + 0x34]
mov edx, dword [esi + 8]
push eax
push 0x6aed9c
push 0
push ebp
push ebx
push ecx
mov ecx, dword [esi + 4]
lea eax, [edx + edi + 0x70]
push eax
add ecx, 0x4f
push ecx
push 0x21f1c78
call fcn.005312c0
mov edx, dword [esp + 0x64]
mov eax, dword [esp + 0x58]
mov ecx, dword [esi + 8]
add esp, 0x48
add edx, 7
push edx
push 0x6a9d2c
push 0
push ebp
push ebx
push eax
mov eax, dword [esi + 4]
lea edx, [ecx + edi + 0x70]
push edx
add eax, 0x70
push eax
push 0x21f1c78
call fcn.005312c0
mov ecx, dword [esp + 0x40]
xor edx, edx
mov dl, byte [ecx + 6]
lea eax, [esp + 0x50]
push edx
push eax
call fcn.004e0740
mov ecx, dword [esp + 0x3c]
mov edx, dword [esi + 8]
push eax
push 0x6a9d2c
push 0
push ebp
push ebx
push ecx
mov ecx, dword [esi + 4]
lea eax, [edx + edi + 0x70]
push eax
add ecx, 0xf7
push ecx
push 0x21f1c78
call fcn.005312c0
add edi, 0x17
add esp, 0x50
cmp edi, 0x142
jg 0x4e243d
mov ebp, dword [0x21e69b8]
mov ecx, dword [0x21e69b4]
mov edx, dword [esp + 0x20]
inc edx
mov dword [esp + 0x20], edx
jmp 0x4e2020
mov ecx, dword [0x21e699c]
xor ebp, ebp
test ecx, ecx
jne 0x4e220f
xor eax, eax
jmp 0x4e2219
mov eax, dword [0x21e69a0]
sub eax, ecx
sar eax, 2
cmp edx, eax
jge 0x4e243d
test ecx, ecx
jne 0x4e2229
xor eax, eax
jmp 0x4e2233
mov eax, dword [0x21e69a0]
sub eax, ecx
sar eax, 2
cmp edx, eax
jge 0x4e2433
lea eax, [ecx + edx*4]
mov dword [0x21e69a8], eax
mov edi, dword [eax]
test edi, edi
je 0x4e2433
mov eax, dword [esp + 0x18]
movzx ebx, byte [esi + 0x530]
inc eax
mov dword [esp + 0x18], eax
mov eax, ebx
imul eax, eax, 0xf50
fild dword [esp + 0x18]
fcomp dword [eax + esi + 0x1438]
fnstsw ax
test ah, 5
jnp 0x4e2433
mov eax, dword [esi + 4]
mov ecx, dword [0x706454]
lea edx, [eax + 0x25]
cmp ecx, edx
mov byte [esp + 0x14], 0x82
mov byte [esp + 0x10], 0x80
mov byte [esp + 0x1c], 0x78
jl 0x4e22d3
lea edx, [eax + 0x12e]
cmp ecx, edx
jg 0x4e22d3
mov ecx, dword [esi + 8]
add ecx, ebp
lea edx, [ecx + 0x70]
cmp dword [0x706458], edx
jl 0x4e22d3
mov edx, dword [0x706458]
add ecx, 0x84
cmp edx, ecx
jg 0x4e22d3
mov byte [esp + 0x14], 0xaa
mov byte [esp + 0x10], 0xaa
mov byte [esp + 0x1c], 0xaa
mov ecx, dword [esi + ebx*4 + 0x534]
cmp ecx, dword [edi]
jne 0x4e22ed
mov byte [esp + 0x14], 0xff
mov byte [esp + 0x10], 0xff
mov byte [esp + 0x1c], 0xff
movzx edx, word [edi + 6]
mov ebx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x10]
push edx
mov edx, dword [esp + 0x18]
push 0x6aed9c
push 0
push ebx
push ecx
mov ecx, dword [esi + 8]
push edx
lea edx, [ecx + ebp + 0x70]
push edx
add eax, 0x28
push eax
push 0x21f1c78
call fcn.005312c0
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x38]
lea eax, [edi + 9]
push eax
mov eax, dword [esi + 8]
push 0x6a9d2c
push 0
push ebx
push ecx
push edx
mov edx, dword [esi + 4]
lea ecx, [eax + ebp + 0x70]
push ecx
add edx, 0x43
push edx
push 0x21f1c78
call fcn.005312c0
xor eax, eax
mov al, byte [edi + 8]
add esp, 0x48
lea ecx, [esp + 0x2c]
push eax
push ecx
call fcn.004e0740
mov edx, dword [esp + 0x18]
mov ecx, dword [esi + 8]
push eax
mov eax, dword [esp + 0x20]
push 0x6a9d2c
push 0
push ebx
push edx
push eax
mov eax, dword [esi + 4]
lea edx, [ecx + ebp + 0x70]
push edx
add eax, 0xbd
push eax
push 0x21f1c78
call fcn.005312c0
movzx ecx, byte [edi + 4]
mov edx, dword [esp + 0x3c]
mov eax, dword [esp + 0x40]
push ecx
mov ecx, dword [esi + 8]
push 0x6a8770
push 0
push ebx
push edx
push eax
mov eax, dword [esi + 4]
lea edx, [ecx + ebp + 0x70]
push edx
add eax, 0x103
push eax
push 0x21f1c78
call fcn.005312c0
mov al, byte [edi + 0x1e]
add esp, 0x50
cmp al, 1
jne 0x4e23da
push 0x6aed98
push 0
push 0
push 0xff
jmp 0x4e23fb
cmp al, 3
jne 0x4e23f0
push 0x6aed98
push 0
push 0
push 0xff
push 0
jmp 0x4e2400
push 0x6aed94
push 0
push 0
push 0
push 0xff
mov ecx, dword [esi + 8]
mov eax, dword [esi + 4]
lea edx, [ecx + ebp + 0x70]
push edx
add eax, 0x11c
push eax
push 0x21f1c78
call fcn.005312c0
add ebp, 0x17
add esp, 0x20
cmp ebp, 0x142
jg 0x4e243d
mov ecx, dword [0x21e699c]
mov edx, dword [esp + 0x20]
inc edx
mov dword [esp + 0x20], edx
jmp 0x4e2207
mov ecx, 0x21f1c78
call fcn.005312b0
mov eax, dword [0x84716c]
test eax, eax
je 0x4e24b4
mov ecx, dword [eax + 0x2c4]
test ecx, ecx
je 0x4e24b4
mov ecx, 0x21f1c78
call fcn.005312a0
push 0x13e0
call fcn.0041b230
mov ecx, dword [0x84716c]
mov edx, dword [ecx + 0x2c4]
mov ecx, dword [esi + 4]
push eax
mov eax, dword [esi + 8]
push edx
push str._s__s
push 0
push 0x1b
push 0xd3
push 0x99
add eax, 0x34
push eax
add ecx, 0x45
push ecx
push 0x21f1c78
call fcn.005312c0
add esp, 0x2c
mov ecx, 0x21f1c78
call fcn.005312b0
movzx ecx, byte [esi + 0x530]
mov edx, dword [esi + 8]
imul ecx, ecx, 0xf50
mov eax, dword [esi + 4]
push edx
push eax
lea ecx, [ecx + esi + 0x53c]
call fcn.0051b160
movzx ecx, byte [esi + 0x530]
mov edx, dword [esi + 8]
imul ecx, ecx, 0x4d4
mov eax, dword [esi + 4]
push edx
push eax
lea ecx, [ecx + esi + 0x23e0]
call fcn.00517c10
mov al, byte [esi + 0x530]
test al, al
je 0x4e256a
mov edx, dword [esi + 8]
mov eax, dword [esi + 4]
push edx
push eax
lea ecx, [esi + 0x5dd0]
call fcn.00517c10
mov ecx, dword [esi + 8]
mov edx, dword [esi + 4]
push ecx
push edx
lea ecx, [esi + 0x62a4]
call fcn.00517c10
mov eax, dword [esi + 8]
mov ecx, dword [esi + 4]
push eax
push ecx
lea ecx, [esi + 0x6778]
call fcn.00517c10
mov edx, dword [esi + 8]
mov eax, dword [esi + 4]
push edx
push eax
lea ecx, [esi + 0x3c04]
call fcn.00517c10
mov ecx, dword [esi + 8]
mov edx, dword [esi + 4]
push ecx
push edx
lea ecx, [esi + 0x40d8]
call fcn.00517c10
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x120
ret
mov eax, dword [esi + 8]
mov ecx, dword [esi + 4]
push eax
push ecx
lea ecx, [esi + 0x45ac]
call fcn.00517c10
mov edx, dword [esi + 8]
mov eax, dword [esi + 4]
push edx
push eax
lea ecx, [esi + 0x4a80]
call fcn.00517c10
mov ecx, dword [esi + 8]
mov edx, dword [esi + 4]
push ecx
push edx
lea ecx, [esi + 0x4f54]
call fcn.00517c10
mov eax, dword [esi + 8]
mov ecx, dword [esi + 4]
push eax
push ecx
lea ecx, [esi + 0x5428]
call fcn.00517c10
mov edx, dword [esi + 8]
mov eax, dword [esi + 4]
push edx
push eax
lea ecx, [esi + 0x58fc]
call fcn.00517c10
mov ecx, dword [esi + 8]
mov edx, dword [esi + 4]
push ecx
push edx
lea ecx, [esi + 0x2d88]
call fcn.00517c10
mov eax, dword [esi + 8]
mov ecx, dword [esi + 4]
push eax
push ecx
lea ecx, [esi + 0x325c]
call fcn.00517c10
mov edx, dword [esi + 8]
mov eax, dword [esi + 4]
push edx
push eax
lea ecx, [esi + 0x3730]
call fcn.00517c10
mov ecx, dword [esi + 8]
mov edx, dword [esi + 4]
push ecx
push edx
lea ecx, [esi + 0x937c]
call fcn.00517c10
mov al, byte [esi + 0x8ea4]
test al, al
je 0x4e264b
mov eax, dword [esi + 8]
mov ecx, dword [esi + 4]
add ecx, 0x14a
push eax
push ecx
lea ecx, [esi + 0x8e84]
call fcn.00538c10
mov edx, dword [esi + 8]
mov eax, dword [esi + 4]
push edx
push eax
lea ecx, [esi + 0x8ea8]
call fcn.00517c10
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x120
ret