Function at 0x1015acd0
Capabilities:
Enumerate pe sections

Disassembly:
sub esp, 8
push edi
mov edi, ecx
mov cl, byte [edi + 0x40f]
mov al, cl
and al, 1
neg al
sbb al, al
and al, 0xc
add al, 0x41
mov byte [edi + 0x4fe], al
mov byte [edi + 0x4ff], 0x46
test cl, 2
je 0x1015ad13
mov al, cl
and al, 4
neg al
sbb al, al
and al, 3
add al, 0x44
mov byte [edi + 0x50e], al
mov byte [edi + 0x50f], 0x20
test cl, 8
je 0x1015ad21
mov word [edi + 0x510], 0x5256
mov edx, 5
test cl, 0x10
je 0x1015ad3e
mov word [edi + 0x4a8], dx
lea eax, [edx + 2]
mov word [edi + 0x4b8], dx
jmp 0x1015ad43
mov eax, 6
mov word [edi + 0x4ba], ax
mov word [edi + 0x4aa], ax
test cl, 0x20
je 0x1015ad82
mov eax, dword [str.FT_1]
mov dword [edi + 0x5f0], eax
mov al, byte [0x102b29bc]
mov byte [edi + 0x5f4], al
mov eax, 6
mov word [edi + 0x4aa], ax
mov dword [edi + 0x4b8], 0x70005
mov eax, dword [esp + 0x14]
and cl, 0xdf
mov byte [esp + 0xb], cl
mov byte [edi + 0x40f], cl
cmp eax, 0x14
jae 0x1015b1a3
sub eax, 9
je 0x1015adbf
sub eax, 6
je 0x1015adb8
sub eax, 1
jne 0x1015adb2
mov eax, 8
jmp 0x1015adc4
mov eax, dword [esp + 0x10]
jmp 0x1015adc4
mov eax, 7
jmp 0x1015adc4
mov eax, 2
movzx edx, ax
xorps xmm1, xmm1
push esi
mov esi, dword [esp + 0x14]
mov dword [esp + 8], eax
movss xmm2, dword [0x103f03e0]
movss xmm6, dword [0x102c6008]
movzx eax, byte [edx + esi]
mov byte [edi + 0x40c], al
mov al, byte [edx + esi + 1]
mov byte [edi + 0x40d], al
movzx eax, al
movss xmm3, dword [0x102c615c]
movss xmm4, dword [0x102c6178]
movsd xmm5, qword [0x103efac0]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mov dword [esp + 0x18], edx
divss xmm0, dword [0x102c6150]
movss dword [edi + 0x558], xmm0
movss xmm0, dword [edi + 0x520]
andps xmm0, xmm2
comiss xmm6, xmm0
jbe 0x1015b00b
cmp cl, 1
jne 0x1015ae4d
cmp byte [edx + esi + 2], 0
je 0x1015aebb
movzx eax, byte [edx + esi + 2]
movd xmm2, eax
cvtdq2ps xmm2, xmm2
divss xmm2, xmm3
comiss xmm2, xmm4
ja 0x1015aea3
movss xmm0, dword [0x102c61a8]
comiss xmm0, xmm2
ja 0x1015aea3
cvtps2pd xmm1, xmm2
movaps xmm0, xmm5
call fcn.1027dc40
movss xmm3, dword [0x102c615c]
xorps xmm1, xmm1
movss xmm4, dword [0x102c6178]
movsd xmm5, qword [0x103efac0]
mov cl, byte [esp + 0xf]
mov edx, dword [esp + 0x18]
cvtsd2ss xmm0, xmm0
jmp 0x1015aea6
xorps xmm0, xmm0
mulss xmm0, dword [0x103efc24]
movss dword [edi + 0x520], xmm0
cmp cl, 1
jne 0x1015aec2
cmp byte [edx + esi + 3], 0
je 0x1015af23
movzx eax, byte [edx + esi + 3]
movd xmm2, eax
cvtdq2ps xmm2, xmm2
divss xmm2, xmm3
comiss xmm2, xmm4
ja 0x1015af10
movss xmm0, dword [0x102c61a8]
comiss xmm0, xmm2
ja 0x1015af10
cvtps2pd xmm1, xmm2
movaps xmm0, xmm5
call fcn.1027dc40
movss xmm3, dword [0x102c615c]
xorps xmm1, xmm1
movss xmm4, dword [0x102c6178]
mov cl, byte [esp + 0xf]
mov edx, dword [esp + 0x18]
cvtsd2ss xmm0, xmm0
jmp 0x1015af13
xorps xmm0, xmm0
mulss xmm0, dword [0x103efc24]
movss dword [edi + 0x524], xmm0
cmp cl, 1
jne 0x1015af2f
cmp byte [edx + esi + 4], 0
je 0x1015af8d
movzx eax, byte [edx + esi + 4]
movd xmm2, eax
cvtdq2ps xmm2, xmm2
divss xmm2, xmm3
comiss xmm2, xmm4
ja 0x1015af82
movss xmm0, dword [0x102c61a8]
comiss xmm0, xmm2
ja 0x1015af82
movsd xmm0, qword [0x103efac0]
cvtps2pd xmm1, xmm2
call fcn.1027dc40
movss xmm3, dword [0x102c615c]
xorps xmm1, xmm1
movss xmm4, dword [0x102c6178]
mov cl, byte [esp + 0xf]
mov edx, dword [esp + 0x18]
cvtsd2ss xmm0, xmm0
jmp 0x1015af85
xorps xmm0, xmm0
movss dword [edi + 0x528], xmm0
cmp cl, 1
jne 0x1015af99
cmp byte [edx + esi + 5], 0
je 0x1015aff3
movzx eax, byte [edx + esi + 5]
movd xmm2, eax
cvtdq2ps xmm2, xmm2
divss xmm2, xmm3
comiss xmm2, xmm4
ja 0x1015afe8
movss xmm0, dword [0x102c61a8]
comiss xmm0, xmm2
ja 0x1015afe8
movsd xmm0, qword [0x103efac0]
cvtps2pd xmm1, xmm2
call fcn.1027dc40
movss xmm3, dword [0x102c615c]
xorps xmm1, xmm1
movss xmm4, dword [0x102c6178]
mov edx, dword [esp + 0x18]
cvtsd2ss xmm0, xmm0
jmp 0x1015afeb
xorps xmm0, xmm0
movss dword [edi + 0x52c], xmm0
movss xmm6, dword [0x102c6008]
movss xmm2, dword [0x103f03e0]
movsd xmm5, qword [0x103efac0]
cmp word [esp + 8], 2
mov al, byte [edx + esi + 6]
mov byte [edi + 0x40e], al
je 0x1015b0df
mov al, byte [edx + esi - 1]
test al, al
je 0x1015b094
movss xmm0, dword [edi + 0x540]
andps xmm0, xmm2
comiss xmm6, xmm0
jbe 0x1015b094
movzx eax, al
movd xmm2, eax
cvtdq2ps xmm2, xmm2
divss xmm2, xmm3
comiss xmm2, xmm4
ja 0x1015b081
movss xmm0, dword [0x102c61a8]
comiss xmm0, xmm2
ja 0x1015b081
cvtps2pd xmm1, xmm2
movaps xmm0, xmm5
call fcn.1027dc40
movss xmm3, dword [0x102c615c]
xorps xmm1, xmm1
movss xmm4, dword [0x102c6178]
mov edx, dword [esp + 0x18]
cvtsd2ss xmm0, xmm0
jmp 0x1015b084
xorps xmm0, xmm0
mulss xmm0, dword [0x103efc24]
movss dword [edi + 0x540], xmm0
mov al, byte [edx + esi + 7]
test al, al
je 0x1015b0df
movzx eax, al
movd xmm2, eax
cvtdq2ps xmm2, xmm2
divss xmm2, xmm3
comiss xmm2, xmm4
ja 0x1015b0d7
movss xmm0, dword [0x102c61a8]
comiss xmm0, xmm2
ja 0x1015b0d7
movsd xmm0, qword [0x103efac0]
cvtps2pd xmm1, xmm2
call fcn.1027dc40
mov edx, dword [esp + 0x18]
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm0
movss dword [edi + 0x408], xmm1
movzx eax, byte [edx + esi]
cdq
mov ecx, eax
mov esi, edx
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
shld esi, ecx, 8
shl ecx, 8
movzx eax, byte [eax + edx + 1]
cdq
or ecx, eax
or esi, edx
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
shld esi, ecx, 8
shl ecx, 8
movzx eax, byte [eax + edx + 2]
cdq
or ecx, eax
or esi, edx
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
shld esi, ecx, 8
shl ecx, 8
movzx eax, byte [eax + edx + 3]
cdq
or ecx, eax
or esi, edx
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
shld esi, ecx, 8
shl ecx, 8
movzx eax, byte [eax + edx + 4]
cdq
or ecx, eax
or esi, edx
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
shld esi, ecx, 8
shl ecx, 8
movzx eax, byte [eax + edx + 5]
cdq
or ecx, eax
or esi, edx
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
shld esi, ecx, 8
shl ecx, 8
movzx eax, byte [eax + edx + 6]
cdq
or ecx, eax
or esi, edx
movzx eax, byte [esp + 0xf]
shld esi, ecx, 8
cdq
shl ecx, 8
or ecx, eax
or esi, edx
mov dword [edi + 0x424], esi
pop esi
mov dword [edi + 0x420], ecx
pop edi
add esp, 8
ret 8
cmp eax, 0x1cb
je 0x1015b24d
cmp eax, 0x24e
je 0x1015b24d
cmp eax, 0x1fd
jne 0x1015b203
mov eax, dword [esp + 0x10]
movups xmm0, xmmword [eax + 0x187]
movups xmmword [edi + 0x428], xmm0
movups xmm0, xmmword [eax + 0x197]
movups xmmword [edi + 0x438], xmm0
movups xmm0, xmmword [eax + 0x1a7]
movups xmmword [edi + 0x448], xmm0
movups xmm0, xmmword [eax + 0x1b7]
movups xmmword [edi + 0x458], xmm0
pop edi
add esp, 8
ret 8
cmp eax, 0x36f
jne 0x1015b289
mov eax, dword [esp + 0x10]
movups xmm0, xmmword [eax + 0x2a8]
movups xmmword [edi + 0x428], xmm0
movups xmm0, xmmword [eax + 0x2b8]
movups xmmword [edi + 0x438], xmm0
movups xmm0, xmmword [eax + 0x2c8]
movups xmmword [edi + 0x448], xmm0
movups xmm0, xmmword [eax + 0x2d8]
movups xmmword [edi + 0x458], xmm0
pop edi
add esp, 8
ret 8
mov eax, dword [esp + 0x10]
movups xmm0, xmmword [eax + 0x186]
movups xmmword [edi + 0x428], xmm0
movups xmm0, xmmword [eax + 0x196]
movups xmmword [edi + 0x438], xmm0
movups xmm0, xmmword [eax + 0x1a6]
movups xmmword [edi + 0x448], xmm0
movups xmm0, xmmword [eax + 0x1b6]
movups xmmword [edi + 0x458], xmm0
pop edi
add esp, 8
ret 8