Function at 0x100456e0
Capabilities:
Enumerate pe sections

Disassembly:
mov eax, dword [esp + 0x10]
push ebx
push ebp
mov ebp, dword [esp + 0x10]
push esi
mov esi, dword [esp + 0x18]
push edi
mov edi, ebp
shr edi, 2
not edi
inc edi
and edi, 3
cmp edi, esi
cmova edi, esi
cmp eax, 8
je 0x10045abe
cmp eax, 0x10
je 0x10045952
cmp eax, 0x18
je 0x1004587d
mov ebx, dword [esp + 0x14]
movss xmm3, dword [0x100755f8]
mov ecx, esi
sub ecx, edi
and ecx, 0xfffffffc
xor eax, eax
cmp edi, 4
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
jl 0x100457ab
lea edx, [ebx + 0xc]
sub ebx, ebp
lea ecx, [edi - 4]
shr ecx, 2
mov dword [esp + 0x20], ebx
inc ecx
lea ebx, [ecx*4]
mov dword [esp + 0x18], ebx
mov ebx, dword [esp + 0x20]
lea eax, [ebp + 4]
nop
cvtsi2ss xmm0, dword [edx - 0xc]
mulss xmm0, xmm3
movss dword [eax - 4], xmm0
cvtsi2ss xmm0, dword [ebx + eax]
mulss xmm0, xmm3
movss dword [eax], xmm0
cvtsi2ss xmm0, dword [edx - 4]
mulss xmm0, xmm3
movss dword [eax + 4], xmm0
cvtsi2ss xmm0, dword [edx]
mulss xmm0, xmm3
movss dword [eax + 8], xmm0
add eax, 0x10
add edx, 0x10
dec ecx
jne 0x10045760
mov ebx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
cmp eax, edi
jae 0x100457d7
mov ecx, ebx
mov edx, edi
sub ecx, ebp
sub edx, dword [esp + 0x18]
lea eax, [ebp + eax*4]
lea ecx, [ecx]
cvtsi2ss xmm0, dword [eax + ecx]
mulss xmm0, xmm3
movss dword [eax], xmm0
add eax, 4
dec edx
jne 0x100457c0
mov ecx, dword [esp + 0x1c]
lea edx, [ebp + edi*4]
lea eax, [ebx + edi*4]
call fcn.10045590
mov eax, dword [esp + 0x1c]
add edi, eax
mov ecx, esi
sub ecx, edi
cmp ecx, 4
jl 0x10045853
mov eax, esi
sub eax, edi
sub eax, 4
lea edx, [ebx + edi*4 + 0xc]
shr eax, 2
sub ebx, ebp
inc eax
lea ecx, [ebp + edi*4 + 4]
lea edi, [edi + eax*4]
lea ebx, [ebx]
cvtsi2ss xmm0, dword [edx - 0xc]
mulss xmm0, xmm3
movss dword [ecx - 4], xmm0
cvtsi2ss xmm0, dword [ecx + ebx]
mulss xmm0, xmm3
movss dword [ecx], xmm0
cvtsi2ss xmm0, dword [edx - 4]
mulss xmm0, xmm3
movss dword [ecx + 4], xmm0
cvtsi2ss xmm0, dword [edx]
mulss xmm0, xmm3
movss dword [ecx + 8], xmm0
add ecx, 0x10
add edx, 0x10
dec eax
jne 0x10045810
mov ebx, dword [esp + 0x14]
cmp edi, esi
jae 0x10045c1d
sub ebx, ebp
lea eax, [ebp + edi*4]
sub esi, edi
cvtsi2ss xmm0, dword [eax + ebx]
mulss xmm0, xmm3
movss dword [eax], xmm0
add eax, 4
dec esi
jne 0x10045863
pop edi
pop esi
pop ebp
pop ebx
ret 0x10
mov edx, dword [esp + 0x14]
mov eax, dword [edx]
movss xmm0, dword [0x100755f4]
shl eax, 8
sar eax, 8
cvtsi2ss xmm1, eax
lea edi, [esi - 1]
cmp edi, 4
mulss xmm1, xmm0
movss dword [ebp], xmm1
mov ecx, 2
mov eax, 1
jl 0x10045920
lea edi, [esi - 5]
shr edi, 2
inc edi
lea ebx, [edi*4 + 1]
lea eax, [ebp + 0xc]
mov dword [esp + 0x14], ebx
mov ebx, dword [edx + ecx]
sar ebx, 8
cvtsi2ss xmm1, ebx
mulss xmm1, xmm0
movss dword [eax - 8], xmm1
mov ebx, dword [edx + ecx + 3]
sar ebx, 8
cvtsi2ss xmm1, ebx
mulss xmm1, xmm0
movss dword [eax - 4], xmm1
mov ebx, dword [edx + ecx + 6]
sar ebx, 8
cvtsi2ss xmm1, ebx
mulss xmm1, xmm0
movss dword [eax], xmm1
mov ebx, dword [edx + ecx + 9]
sar ebx, 8
cvtsi2ss xmm1, ebx
mulss xmm1, xmm0
movss dword [eax + 4], xmm1
add ecx, 0xc
add eax, 0x10
dec edi
jne 0x100458c5
mov eax, dword [esp + 0x14]
cmp eax, esi
jae 0x10045c1d
add ecx, edx
lea ebx, [ebx]
mov edx, dword [ecx]
sar edx, 8
cvtsi2ss xmm1, edx
mulss xmm1, xmm0
add ecx, 3
movss dword [ebp + eax*4], xmm1
inc eax
cmp eax, esi
jb 0x10045930
pop edi
pop esi
pop ebp
pop ebx
ret 0x10
mov ebx, dword [esp + 0x14]
movss xmm4, dword [0x10075584]
mov edx, esi
sub edx, edi
and edx, 0xfffffff8
xor eax, eax
cmp edi, 4
mov dword [esp + 0x1c], edx
jl 0x100459e7
lea edx, [edi - 4]
shr edx, 2
inc edx
lea eax, [ebx + 4]
lea ebx, [edx*4]
lea ecx, [ebp + 8]
mov dword [esp + 0x18], ebx
jmp 0x10045990
movsx ebx, word [eax - 4]
cvtsi2ss xmm0, ebx
mulss xmm0, xmm4
movss dword [ecx - 8], xmm0
movsx ebx, word [eax - 2]
cvtsi2ss xmm0, ebx
mulss xmm0, xmm4
movss dword [ecx - 4], xmm0
movsx ebx, word [eax]
cvtsi2ss xmm0, ebx
mulss xmm0, xmm4
movss dword [ecx], xmm0
movsx ebx, word [eax + 2]
cvtsi2ss xmm0, ebx
mulss xmm0, xmm4
movss dword [ecx + 4], xmm0
add eax, 8
add ecx, 0x10
dec edx
jne 0x10045990
mov eax, dword [esp + 0x18]
mov ebx, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
cmp eax, edi
jae 0x10045a07
jmp 0x100459f0
movsx ecx, word [ebx + eax*2]
cvtsi2ss xmm0, ecx
mulss xmm0, xmm4
movss dword [ebp + eax*4], xmm0
inc eax
cmp eax, edi
jb 0x100459f0
lea ecx, [ebp + edi*4]
lea eax, [ebx + edi*2]
call fcn.100455e0
mov edx, dword [esp + 0x1c]
add edi, edx
mov eax, esi
sub eax, edi
cmp eax, 4
jl 0x10045a8f
mov eax, esi
sub eax, edi
sub eax, 4
shr eax, 2
inc eax
lea edx, [ebp + edi*4 + 8]
lea ecx, [ebx + edi*2 + 4]
lea edi, [edi + eax*4]
jmp 0x10045a40
movsx ebx, word [ecx - 4]
cvtsi2ss xmm0, ebx
mulss xmm0, xmm4
movss dword [edx - 8], xmm0
movsx ebx, word [ecx - 2]
cvtsi2ss xmm0, ebx
mulss xmm0, xmm4
movss dword [edx - 4], xmm0
movsx ebx, word [ecx]
cvtsi2ss xmm0, ebx
mulss xmm0, xmm4
movss dword [edx], xmm0
movsx ebx, word [ecx + 2]
cvtsi2ss xmm0, ebx
mulss xmm0, xmm4
movss dword [edx + 4], xmm0
add ecx, 8
add edx, 0x10
dec eax
jne 0x10045a40
mov ebx, dword [esp + 0x14]
cmp edi, esi
jae 0x10045c1d
jmp 0x10045aa0
movsx ecx, word [ebx + edi*2]
cvtsi2ss xmm0, ecx
mulss xmm0, xmm4
movss dword [ebp + edi*4], xmm0
inc edi
cmp edi, esi
jb 0x10045aa0
pop edi
pop esi
pop ebp
pop ebx
ret 0x10
mov ebx, dword [esp + 0x14]
movss xmm4, dword [0x100755f0]
sub esi, edi
and esi, 0xfffffff0
xor eax, eax
cmp edi, 4
jl 0x10045b4b
lea ecx, [ebp + 8]
lea esp, [esp]
movzx edx, byte [ebx + eax]
sub edx, 0x80
cvtsi2ss xmm0, edx
mulss xmm0, xmm4
movss dword [ecx - 8], xmm0
movzx edx, byte [ebx + eax + 1]
sub edx, 0x80
cvtsi2ss xmm0, edx
mulss xmm0, xmm4
movss dword [ecx - 4], xmm0
movzx edx, byte [ebx + eax + 2]
sub edx, 0x80
cvtsi2ss xmm0, edx
mulss xmm0, xmm4
movss dword [ecx], xmm0
movzx edx, byte [ebx + eax + 3]
sub edx, 0x80
cvtsi2ss xmm0, edx
mulss xmm0, xmm4
movss dword [ecx + 4], xmm0
add eax, 4
lea edx, [edi - 3]
add ecx, 0x10
cmp eax, edx
jb 0x10045ae0
cmp eax, edi
jae 0x10045b6d
nop
movzx ecx, byte [eax + ebx]
sub ecx, 0x80
cvtsi2ss xmm0, ecx
mulss xmm0, xmm4
movss dword [ebp + eax*4], xmm0
inc eax
cmp eax, edi
jb 0x10045b50
lea eax, [ebp + edi*4]
lea ecx, [edi + ebx]
call fcn.10045640
lea eax, [esi + edi]
mov esi, dword [esp + 0x1c]
mov edx, esi
sub edx, eax
cmp edx, 4
jl 0x10045bf8
lea edx, [esi - 3]
lea ecx, [ebp + eax*4 + 8]
movzx edi, byte [ebx + eax]
sub edi, 0x80
cvtsi2ss xmm0, edi
mulss xmm0, xmm4
movss dword [ecx - 8], xmm0
movzx edi, byte [ebx + eax + 1]
sub edi, 0x80
cvtsi2ss xmm0, edi
mulss xmm0, xmm4
movss dword [ecx - 4], xmm0
movzx edi, byte [ebx + eax + 2]
sub edi, 0x80
cvtsi2ss xmm0, edi
mulss xmm0, xmm4
movss dword [ecx], xmm0
movzx edi, byte [ebx + eax + 3]
sub edi, 0x80
cvtsi2ss xmm0, edi
mulss xmm0, xmm4
movss dword [ecx + 4], xmm0
add eax, 4
add ecx, 0x10
cmp eax, edx
jb 0x10045b90
cmp eax, esi
jae 0x10045c1d
lea esp, [esp]
movzx ecx, byte [eax + ebx]
sub ecx, 0x80
cvtsi2ss xmm0, ecx
mulss xmm0, xmm4
movss dword [ebp + eax*4], xmm0
inc eax
cmp eax, esi
jb 0x10045c00
pop edi
pop esi
pop ebp
pop ebx
ret 0x10