Function at 0x1010e260
Capabilities:
Enumerate pe sections

Disassembly:
sub esp, 0x1c
fldz
push ebx
mov ebx, dword [esp + 0x24]
fld dword [esp + 0x38]
mov eax, dword [ebx + 8]
fucom st(1)
mov edx, dword [ebx + 0xc]
push ebp
mov ebp, dword [esp + 0x2c]
push esi
push edi
lea edi, [eax + eax*2]
sub eax, ebp
sub eax, dword [esp + 0x38]
mov ecx, edx
sub ecx, dword [esp + 0x3c]
mov esi, eax
fnstsw ax
sub ecx, dword [esp + 0x40]
fstp st(1)
test ah, 0x44
mov dword [esp + 0x28], edx
mov dword [esp + 0x14], esi
mov dword [esp + 0x24], ecx
jnp 0x1010e7d4
cmp esi, 1
jle 0x1010e7d4
cmp ecx, 1
jle 0x1010e7d4
fmul qword [0x101e94b8]
sub esp, 8
fstp dword [esp + 0x28]
fld dword [esp + 0x28]
fstp qword [esp]
call fcn.10189f50
fstp dword [esp + 0x28]
add esp, 8
fld dword [esp + 0x20]
fstp dword [esp + 0x20]
fld dword [esp + 0x20]
fistp dword [esp + 0x18]
fld dword [esp + 0x44]
sub esp, 8
fld1
fsubrp st(1)
fmul qword [0x101e97e8]
fmul qword [0x101e94b8]
fstp qword [esp]
call fcn.10189f50
fstp dword [esp + 0x28]
add esp, 8
fld dword [esp + 0x20]
fistp dword [esp + 0x44]
mov edx, dword [esp + 0x3c]
test edx, edx
mov esi, dword [esp + 0x44]
mov eax, dword [esp + 0x18]
jle 0x1010e446
lea ecx, [ebp + ebp*2]
mov dword [esp + 0x18], ecx
mov ecx, edi
neg ecx
mov dword [esp + 0x28], ecx
mov ecx, edi
imul ecx, edx
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x20], edx
mov edx, dword [esp + 0x18]
add ecx, edx
add ecx, dword [ebx + 0x14]
movzx edx, byte [ecx]
imul edx, eax
add edx, esi
shr edx, 0x10
mov ebp, ecx
sub ebp, edi
mov byte [ebp], dl
movzx edx, byte [ecx + 1]
imul edx, eax
add edx, esi
shr edx, 0x10
mov byte [ebp + 1], dl
movzx edx, byte [ecx + 2]
imul edx, eax
add edx, esi
shr edx, 0x10
mov byte [ebp + 2], dl
mov edx, dword [esp + 0x14]
add edx, 0xfffffffe
add ebp, 3
test edx, edx
mov dword [esp + 0x44], edx
jle 0x1010e3f7
movzx edx, byte [ecx]
movzx ebx, byte [ecx + 6]
add ebx, edx
imul ebx, eax
lea edx, [esi + esi]
add ebx, edx
shr ebx, 0x11
mov byte [ebp], bl
movzx edx, byte [ecx + 1]
movzx ebx, byte [ecx + 7]
add ebx, edx
imul ebx, eax
lea edx, [esi + esi]
add ebx, edx
shr ebx, 0x11
mov byte [ebp + 1], bl
movzx edx, byte [ecx + 2]
movzx ebx, byte [ecx + 8]
add ebx, edx
imul ebx, eax
lea edx, [esi + esi]
add ebx, edx
mov edx, dword [esp + 0x44]
shr ebx, 0x11
sub edx, 1
mov byte [ebp + 2], bl
add ebp, 3
add ecx, 3
test edx, edx
mov dword [esp + 0x44], edx
jg 0x1010e397
mov ebx, dword [esp + 0x30]
movzx edx, byte [ecx + 3]
add ecx, 3
imul edx, eax
add edx, esi
shr edx, 0x10
mov byte [ebp], dl
movzx edx, byte [ecx + 1]
imul edx, eax
add edx, esi
shr edx, 0x10
mov byte [ebp + 1], dl
movzx ecx, byte [ecx + 2]
imul ecx, eax
add ecx, esi
shr ecx, 0x10
mov byte [ebp + 2], cl
mov ecx, dword [esp + 0x1c]
add ecx, dword [esp + 0x28]
sub dword [esp + 0x20], 1
mov dword [esp + 0x1c], ecx
jne 0x1010e34c
mov ebp, dword [esp + 0x34]
mov edx, dword [esp + 0x3c]
cmp dword [esp + 0x40], 0
jle 0x1010e569
lea ecx, [ebp + ebp*2]
mov dword [esp + 0x18], ecx
mov ecx, dword [esp + 0x24]
lea ecx, [ecx + edx - 1]
mov edx, dword [esp + 0x40]
imul ecx, edi
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x40], edx
mov edx, dword [esp + 0x18]
add ecx, edx
add ecx, dword [ebx + 0x14]
movzx edx, byte [ecx]
imul edx, eax
add edx, esi
shr edx, 0x10
mov byte [ecx + edi], dl
movzx edx, byte [ecx + 1]
lea ebp, [ecx + edi]
imul edx, eax
add edx, esi
shr edx, 0x10
mov byte [ebp + 1], dl
movzx edx, byte [ecx + 2]
imul edx, eax
add edx, esi
shr edx, 0x10
mov byte [ebp + 2], dl
mov edx, dword [esp + 0x14]
add edx, 0xfffffffe
add ebp, 3
test edx, edx
mov dword [esp + 0x44], edx
jle 0x1010e520
lea ebx, [ebx]
movzx edx, byte [ecx]
movzx ebx, byte [ecx + 6]
add ebx, edx
imul ebx, eax
lea edx, [esi + esi]
add ebx, edx
shr ebx, 0x11
mov byte [ebp], bl
movzx edx, byte [ecx + 1]
movzx ebx, byte [ecx + 7]
add ebx, edx
imul ebx, eax
lea edx, [esi + esi]
add ebx, edx
shr ebx, 0x11
mov byte [ebp + 1], bl
movzx edx, byte [ecx + 2]
movzx ebx, byte [ecx + 8]
add ebx, edx
imul ebx, eax
lea edx, [esi + esi]
add ebx, edx
mov edx, dword [esp + 0x44]
shr ebx, 0x11
sub edx, 1
mov byte [ebp + 2], bl
add ebp, 3
add ecx, 3
test edx, edx
mov dword [esp + 0x44], edx
jg 0x1010e4c0
mov ebx, dword [esp + 0x30]
movzx edx, byte [ecx + 3]
add ecx, 3
imul edx, eax
add edx, esi
shr edx, 0x10
mov byte [ebp], dl
movzx edx, byte [ecx + 1]
imul edx, eax
add edx, esi
shr edx, 0x10
mov byte [ebp + 1], dl
movzx ecx, byte [ecx + 2]
imul ecx, eax
add ecx, esi
shr ecx, 0x10
mov byte [ebp + 2], cl
mov ecx, dword [esp + 0x3c]
add ecx, edi
sub dword [esp + 0x40], 1
mov dword [esp + 0x3c], ecx
jne 0x1010e470
mov ebp, dword [esp + 0x34]
test ebp, ebp
jle 0x1010e694
lea edx, [ebp + ebp*2]
mov dword [esp + 0x40], edx
mov dword [esp + 0x20], ebp
lea ecx, [ecx]
mov ecx, dword [ebx + 0x14]
add ecx, dword [esp + 0x40]
movzx edx, byte [ecx]
imul edx, eax
add edx, esi
shr edx, 0x10
mov byte [ecx - 3], dl
movzx edx, byte [ecx + 1]
lea ebp, [ecx - 3]
imul edx, eax
add edx, esi
shr edx, 0x10
mov byte [ebp + 1], dl
movzx edx, byte [ecx + 2]
imul edx, eax
add edx, esi
shr edx, 0x10
mov byte [ebp + 2], dl
mov edx, dword [ebx + 0xc]
sub edx, 2
add ebp, edi
test edx, edx
mov dword [esp + 0x44], edx
jle 0x1010e651
lea edx, [edi + edi]
lea ebx, [edx + ecx + 1]
mov dword [esp + 0x3c], ebx
mov ebx, 1
sub ebx, edx
mov dword [esp + 0x28], ebx
mov edx, dword [esp + 0x3c]
movzx ebx, byte [edx - 1]
movzx edx, byte [ecx]
add ebx, edx
imul ebx, eax
lea edx, [esi + esi]
add ebx, edx
mov edx, dword [esp + 0x3c]
shr ebx, 0x11
mov byte [ebp], bl
movzx edx, byte [edx]
movzx ebx, byte [ecx + 1]
add ebx, edx
imul ebx, eax
lea edx, [esi + esi]
add ebx, edx
mov edx, dword [esp + 0x3c]
shr ebx, 0x11
mov byte [ebp + 1], bl
mov ebx, dword [esp + 0x28]
movzx ebx, byte [edx + ebx]
movzx edx, byte [edx + 1]
add dword [esp + 0x3c], edi
add ebx, edx
imul ebx, eax
lea edx, [esi + esi]
add ebx, edx
mov edx, dword [esp + 0x44]
shr ebx, 0x11
sub edx, 1
mov byte [ebp + 2], bl
add ebp, edi
add ecx, edi
test edx, edx
mov dword [esp + 0x44], edx
jg 0x1010e5e0
mov ebx, dword [esp + 0x30]
movzx edx, byte [ecx + edi]
add ecx, edi
imul edx, eax
add edx, esi
shr edx, 0x10
mov byte [ebp], dl
movzx edx, byte [ecx + 1]
imul edx, eax
sub dword [esp + 0x40], 3
add edx, esi
shr edx, 0x10
mov byte [ebp + 1], dl
movzx ecx, byte [ecx + 2]
imul ecx, eax
add ecx, esi
shr ecx, 0x10
sub dword [esp + 0x20], 1
mov byte [ebp + 2], cl
jne 0x1010e580
mov ebp, dword [esp + 0x34]
mov ecx, dword [esp + 0x38]
test ecx, ecx
jle 0x1010e868
mov edx, dword [esp + 0x14]
add ebp, edx
lea ebp, [ebp + ebp*2]
mov dword [esp + 0x3c], ebp
mov dword [esp + 0x40], ecx
mov ecx, dword [ebx + 0x14]
movzx edx, byte [ecx + ebp - 3]
imul edx, eax
lea ebp, [ecx + ebp - 3]
add edx, esi
shr edx, 0x10
mov byte [ebp + 3], dl
movzx edx, byte [ebp + 1]
lea ecx, [ebp + 3]
imul edx, eax
add edx, esi
shr edx, 0x10
mov byte [ecx + 1], dl
movzx edx, byte [ebp + 2]
imul edx, eax
add edx, esi
shr edx, 0x10
mov byte [ecx + 2], dl
mov edx, dword [ebx + 0xc]
sub edx, 2
add ecx, edi
test edx, edx
mov dword [esp + 0x44], edx
jle 0x1010e785
lea edx, [edi + edi]
lea ebx, [edx + ebp + 1]
mov dword [esp + 0x34], ebx
mov ebx, 1
sub ebx, edx
mov dword [esp + 0x38], ebx
mov edx, dword [esp + 0x34]
movzx ebx, byte [edx - 1]
movzx edx, byte [ebp]
add ebx, edx
imul ebx, eax
lea edx, [esi + esi]
add ebx, edx
mov edx, dword [esp + 0x34]
shr ebx, 0x11
mov byte [ecx], bl
movzx edx, byte [edx]
movzx ebx, byte [ebp + 1]
add ebx, edx
imul ebx, eax
lea edx, [esi + esi]
add ebx, edx
mov edx, dword [esp + 0x34]
shr ebx, 0x11
mov byte [ecx + 1], bl
mov ebx, dword [esp + 0x38]
movzx ebx, byte [ebx + edx]
movzx edx, byte [edx + 1]
add dword [esp + 0x34], edi
add ebx, edx
imul ebx, eax
lea edx, [esi + esi]
add ebx, edx
mov edx, dword [esp + 0x44]
shr ebx, 0x11
sub edx, 1
mov byte [ecx + 2], bl
add ecx, edi
add ebp, edi
test edx, edx
mov dword [esp + 0x44], edx
jg 0x1010e714
mov ebx, dword [esp + 0x30]
movzx edx, byte [ebp + edi]
add ebp, edi
imul edx, eax
add edx, esi
shr edx, 0x10
mov byte [ecx], dl
movzx edx, byte [ebp + 1]
imul edx, eax
add edx, esi
shr edx, 0x10
mov byte [ecx + 1], dl
movzx edx, byte [ebp + 2]
mov ebp, dword [esp + 0x3c]
imul edx, eax
add edx, esi
shr edx, 0x10
add ebp, 3
sub dword [esp + 0x40], 1
mov byte [ecx + 2], dl
mov dword [esp + 0x3c], ebp
jne 0x1010e6b2
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1c
ret 0x18
xor esi, esi
fstp st(0)
cmp edx, esi
mov dword [esp + 0x34], esi
jle 0x1010e868
mov dword [esp + 0x30], esi
jmp 0x1010e7f4
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x3c]
cmp esi, eax
jl 0x1010e841
add ecx, eax
cmp esi, ecx
jge 0x1010e841
mov esi, dword [ebx + 0x14]
add esi, dword [esp + 0x30]
lea eax, [ebp + ebp*2]
push eax
push 0x80
push esi
call fcn.101816d0
mov eax, dword [esp + 0x44]
mov edx, dword [esp + 0x20]
add esp, 0xc
lea ecx, [eax + eax*2]
push ecx
lea eax, [edx + ebp]
lea ecx, [esi + eax*2]
add ecx, eax
push 0x80
push ecx
call fcn.101816d0
mov esi, dword [esp + 0x40]
jmp 0x1010e854
mov edx, dword [ebx + 0x14]
add edx, dword [esp + 0x30]
push edi
push 0x80
push edx
call fcn.101816d0
add dword [esp + 0x3c], edi
add esi, 1
add esp, 0xc
cmp esi, dword [esp + 0x28]
mov dword [esp + 0x34], esi
jl 0x1010e7f0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1c
ret 0x18