Function at 0x10132770
Capabilities:
Enumerate pe sections

Disassembly:
sub esp, 0xbc
push ebx
mov ebx, ecx
mov eax, dword [ebx + 0x83d64]
test eax, eax
je 0x1013279f
push 2
push 0
push 0x200
push dword [ebx + 0x83d68]
call eax
add esp, 0x10
test eax, eax
jne 0x10133636
movss xmm0, dword [ebx + 0xe68]
xorps xmm3, xmm3
ucomiss xmm0, xmm3
lahf
test ah, 0x44
jnp 0x101327c1
movups xmm0, xmmword [ebx + 0xe68]
movups xmmword [ebx + 0x25004], xmm0
cmp dword [ebx + 0xe90], 0
movss xmm2, dword [0x102c7ea0]
push ebp
push esi
push edi
jne 0x101327f7
cmp dword [ebx + 0xe94], 0
je 0x10132fac
movss xmm0, dword [ebx + 0x24ff4]
ucomiss xmm0, xmm2
lahf
test ah, 0x44
jp 0x10132ced
push 0x40
lea eax, [esp + 0x30]
push 0
push eax
call fcn.1026e960
mov ebp, dword [ebx + 0xdfc]
add esp, 0xc
mov eax, dword [ebx + 0xe04]
movzx edx, word [ebx + 0x14]
add eax, ebp
mov ecx, dword [ebx + 0xdf8]
cmp eax, edx
movzx edi, word [ebx + 0x16]
movsd xmm1, qword [esp + 0x64]
cmovb edx, eax
mov eax, dword [ebx + 0xe00]
movsd xmm2, qword [esp + 0x5c]
add eax, ecx
movsd xmm3, qword [esp + 0x54]
cmp eax, edi
movsd xmm4, qword [esp + 0x4c]
movsd xmm5, qword [esp + 0x44]
cmovb edi, eax
movsd xmm6, qword [esp + 0x3c]
movsd xmm7, qword [esp + 0x34]
movsd xmm0, qword [esp + 0x2c]
mov dword [esp + 0x1c], ebp
mov dword [esp + 0x18], edx
mov dword [esp + 0x20], edi
cmp ebp, edx
jae 0x10132c67
lea eax, [ebp + 8]
movsd qword [esp + 0x74], xmm1
mov dword [esp + 0x10], eax
movsd qword [esp + 0x7c], xmm2
movsd qword [esp + 0x84], xmm3
movsd qword [esp + 0x8c], xmm4
movsd qword [esp + 0x94], xmm5
movsd qword [esp + 0x9c], xmm6
movsd qword [esp + 0xa4], xmm7
movsd qword [esp + 0xb4], xmm0
mov dword [esp + 0x14], ecx
cmp ecx, edi
jae 0x10132c42
nop
mov dword [esp + 0x24], ebp
xorps xmm0, xmm0
mov esi, ebp
movups xmmword [esp + 0x2c], xmm0
movups xmmword [esp + 0x3c], xmm0
cmp ebp, eax
jae 0x10132abd
nop dword [eax + eax]
cmp esi, edx
jae 0x10132a84
lea eax, [ecx + 8]
mov ebp, ecx
cmp ecx, eax
jae 0x10132a75
lea ecx, [esi + 6]
mov eax, 0x2aaaaaab
imul ecx
mov eax, edx
shr eax, 0x1f
add eax, edx
lea eax, [eax + eax*2]
add eax, eax
sub ecx, eax
add ecx, 0x20
lea eax, [ecx + ecx*2]
mov ecx, dword [esp + 0x14]
lea eax, [ebx + eax*2]
mov dword [esp + 0xac], eax
mov eax, esi
and eax, 7
add eax, eax
mov dword [esp + 0xb0], eax
nop
cmp ebp, edi
jae 0x10132a71
lea ecx, [ebp + 6]
mov eax, 0x2aaaaaab
imul ecx
mov eax, 0x24
xor edi, edi
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov edx, dword [ebx + 0x194]
sub eax, ecx
mov ecx, dword [esp + 0xac]
lea eax, [eax + eax*2]
lea eax, [ecx + eax*2]
mov dword [esp + 0x6c], eax
mov eax, ebp
and eax, 1
or eax, dword [esp + 0xb0]
add eax, eax
mov dword [esp + 0x70], eax
mov eax, dword [ebx + 0x24f58]
add eax, 0xffffffe7
mov dword [esp + 0x28], eax
test edx, edx
je 0x10132a18
push ebp
push esi
mov ecx, ebx
call fcn.10124820
mov esi, dword [ebx + 0x194]
mov edi, eax
cmp esi, 1
jne 0x101329d4
movzx edx, word [ebx + 0x18]
mov eax, dword [esp + 0x24]
add edx, eax
movzx ecx, word [ebx + 0x1a]
and edx, 0xf
add edx, edx
add ecx, ebp
and ecx, 0xf
movsx esi, byte [ecx + edx*8 + 0x102b3420]
jmp 0x101329f1
cmp esi, 9
jne 0x101329e4
mov eax, dword [esp + 0x6c]
movsx esi, byte [eax + ebp + 6]
jmp 0x101329ed
mov ecx, dword [esp + 0x70]
shr esi, cl
and esi, 3
mov eax, dword [esp + 0x24]
movzx ecx, word [ebx + 0x5483c]
mov edx, eax
movzx eax, word [ebx + 0x1e]
shr edx, cl
imul edx, eax
mov eax, ebp
shr eax, cl
add edx, eax
lea ecx, [esi + edx*4]
mov esi, dword [esp + 0x24]
mov edx, dword [ebx + 0x194]
jmp 0x10132a24
movzx eax, word [ebx + 0x16]
imul eax, esi
add eax, ebp
lea ecx, [edi + eax*4]
mov eax, dword [ebx + 8]
movzx eax, word [eax + ecx*2]
movzx ecx, ax
cmp ecx, dword [esp + 0x28]
ja 0x10132be6
sub ecx, dword [ebx + edi*4 + 0x20f38]
mov eax, 0
cmovns eax, ecx
inc dword [esp + edi*4 + 0x3c]
add dword [esp + edi*4 + 0x2c], eax
test edx, edx
jne 0x10132a5d
inc edi
cmp edi, 4
jb 0x10132998
mov ecx, dword [esp + 0x14]
inc ebp
mov edi, dword [esp + 0x20]
lea eax, [ecx + 8]
cmp ebp, eax
jb 0x10132940
mov edx, dword [esp + 0x18]
inc esi
mov dword [esp + 0x24], esi
cmp esi, dword [esp + 0x10]
jb 0x101328f0
movsd xmm7, qword [esp + 0xa4]
movsd xmm6, qword [esp + 0x9c]
movsd xmm5, qword [esp + 0x94]
movsd xmm4, qword [esp + 0x8c]
movsd xmm3, qword [esp + 0x84]
movsd xmm2, qword [esp + 0x7c]
movsd xmm1, qword [esp + 0x74]
mov eax, dword [esp + 0x2c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x103f9b80]
mov eax, dword [esp + 0x30]
addsd xmm0, qword [esp + 0xb4]
movsd qword [esp + 0xb4], xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x103f9b80]
mov eax, dword [esp + 0x34]
addsd xmm7, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
movsd qword [esp + 0xa4], xmm7
addsd xmm0, qword [eax*8 + 0x103f9b80]
mov eax, dword [esp + 0x38]
addsd xmm6, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
movsd qword [esp + 0x9c], xmm6
addsd xmm0, qword [eax*8 + 0x103f9b80]
mov eax, dword [esp + 0x3c]
addsd xmm5, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
movsd qword [esp + 0x94], xmm5
addsd xmm0, qword [eax*8 + 0x103f9b80]
mov eax, dword [esp + 0x40]
addsd xmm4, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
movsd qword [esp + 0x8c], xmm4
addsd xmm0, qword [eax*8 + 0x103f9b80]
mov eax, dword [esp + 0x44]
addsd xmm3, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
movsd qword [esp + 0x84], xmm3
addsd xmm0, qword [eax*8 + 0x103f9b80]
mov eax, dword [esp + 0x48]
addsd xmm2, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
movsd qword [esp + 0x7c], xmm2
addsd xmm0, qword [eax*8 + 0x103f9b80]
addsd xmm1, xmm0
movsd qword [esp + 0x74], xmm1
jmp 0x10132c27
movsd xmm1, qword [esp + 0x74]
movsd xmm2, qword [esp + 0x7c]
movsd xmm3, qword [esp + 0x84]
movsd xmm4, qword [esp + 0x8c]
movsd xmm5, qword [esp + 0x94]
movsd xmm6, qword [esp + 0x9c]
movsd xmm7, qword [esp + 0xa4]
mov edi, dword [esp + 0x20]
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
add ecx, 8
mov edx, dword [esp + 0x18]
mov ebp, dword [esp + 0x1c]
mov dword [esp + 0x14], ecx
cmp ecx, edi
jb 0x101328d0
mov ecx, dword [ebx + 0xdf8]
add ebp, 8
add eax, 8
mov dword [esp + 0x1c], ebp
mov dword [esp + 0x10], eax
cmp ebp, edx
jb 0x101328c3
movsd xmm0, qword [esp + 0xb4]
ucomisd xmm0, qword [0x103f92a0]
lahf
test ah, 0x44
jnp 0x10132c88
divsd xmm4, xmm0
xorps xmm0, xmm0
cvtsd2ss xmm0, xmm4
movss dword [ebx + 0x25004], xmm0
xorps xmm4, xmm4
ucomisd xmm7, xmm4
lahf
test ah, 0x44
jnp 0x10132ca8
divsd xmm3, xmm7
xorps xmm0, xmm0
cvtsd2ss xmm0, xmm3
movss dword [ebx + 0x25008], xmm0
ucomisd xmm6, xmm4
lahf
test ah, 0x44
jnp 0x10132cc5
divsd xmm2, xmm6
xorps xmm0, xmm0
cvtsd2ss xmm0, xmm2
movss dword [ebx + 0x2500c], xmm0
movss xmm2, dword [0x102c7ea0]
xorps xmm3, xmm3
ucomisd xmm5, xmm4
lahf
test ah, 0x44
jnp 0x10132ced
divsd xmm1, xmm5
xorps xmm0, xmm0
cvtsd2ss xmm0, xmm1
movss dword [ebx + 0x25010], xmm0
cmp dword [ebx + 0xe94], 0
je 0x10132fac
movss xmm1, dword [ebx + 0x24ff4]
ucomiss xmm1, xmm2
lahf
test ah, 0x44
jnp 0x10132fac
xorps xmm0, xmm0
lea esi, [ebx + 0x24f76]
movups xmmword [esp + 0x2c], xmm0
xor ebp, ebp
movups xmmword [esp + 0x3c], xmm0
mov edx, dword [ebx + 0x194]
mov eax, ebp
and eax, 7
lea edi, [eax + eax]
movzx eax, word [esi - 2]
lea ecx, [edi + edi]
shr edx, cl
and edx, 3
sub eax, dword [ebx + edx*4 + 0x20f38]
test eax, eax
jle 0x10132d4d
add dword [esp + edx*4 + 0x2c], eax
mov eax, dword [ebx + 0x194]
or edi, 1
inc dword [esp + edx*4 + 0x3c]
add edi, edi
mov ecx, edi
shr eax, cl
movzx ecx, word [esi]
and eax, 3
sub ecx, dword [ebx + eax*4 + 0x20f38]
test ecx, ecx
jle 0x10132d75
add dword [esp + eax*4 + 0x2c], ecx
movzx ecx, word [esi + 2]
sub ecx, dword [ebx + edx*4 + 0x20f38]
inc dword [esp + eax*4 + 0x3c]
test ecx, ecx
jle 0x10132d8c
add dword [esp + edx*4 + 0x2c], ecx
movzx ecx, word [esi + 4]
sub ecx, dword [ebx + eax*4 + 0x20f38]
inc dword [esp + edx*4 + 0x3c]
test ecx, ecx
jle 0x10132da3
add dword [esp + eax*4 + 0x2c], ecx
movzx ecx, word [esi + 6]
sub ecx, dword [ebx + edx*4 + 0x20f38]
inc dword [esp + eax*4 + 0x3c]
test ecx, ecx
jle 0x10132dba
add dword [esp + edx*4 + 0x2c], ecx
movzx ecx, word [esi + 8]
sub ecx, dword [ebx + eax*4 + 0x20f38]
inc dword [esp + edx*4 + 0x3c]
test ecx, ecx
jle 0x10132dd1
add dword [esp + eax*4 + 0x2c], ecx
movzx ecx, word [esi + 0xa]
sub ecx, dword [ebx + edx*4 + 0x20f38]
inc dword [esp + eax*4 + 0x3c]
test ecx, ecx
jle 0x10132de8
add dword [esp + edx*4 + 0x2c], ecx
movzx ecx, word [esi + 0xc]
sub ecx, dword [ebx + eax*4 + 0x20f38]
inc dword [esp + edx*4 + 0x3c]
test ecx, ecx
jle 0x10132dff
add dword [esp + eax*4 + 0x2c], ecx
inc dword [esp + eax*4 + 0x3c]
inc ebp
add esi, 0x10
cmp ebp, 8
jb 0x10132d24
cmp dword [ebx + 0x83dac], 0x1016a5f0
jne 0x10132e49
mov dword [ebx + 0x25010], 0x3f800000
mov dword [ebx + 0x2500c], 0x3f800000
mov dword [ebx + 0x25008], 0x3f800000
mov dword [ebx + 0x25004], 0x3f800000
jmp 0x10132fac
mov ecx, dword [esp + 0x2c]
test ecx, ecx
je 0x10132f7b
mov edx, dword [esp + 0x30]
test edx, edx
je 0x10132f7b
mov esi, dword [esp + 0x34]
test esi, esi
je 0x10132f7b
mov edi, dword [esp + 0x38]
test edi, edi
je 0x10132f7b
mov eax, dword [esp + 0x3c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x103f9b80]
mov eax, dword [esp + 0x40]
cvtpd2ps xmm1, xmm0
movd xmm0, ecx
cvtdq2pd xmm0, xmm0
shr ecx, 0x1f
addsd xmm0, qword [ecx*8 + 0x103f9b80]
cvtpd2ps xmm0, xmm0
divss xmm1, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
movss dword [ebx + 0x25004], xmm1
addsd xmm0, qword [eax*8 + 0x103f9b80]
mov eax, dword [esp + 0x44]
cvtpd2ps xmm1, xmm0
movd xmm0, edx
cvtdq2pd xmm0, xmm0
shr edx, 0x1f
addsd xmm0, qword [edx*8 + 0x103f9b80]
cvtpd2ps xmm0, xmm0
divss xmm1, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
movss dword [ebx + 0x25008], xmm1
addsd xmm0, qword [eax*8 + 0x103f9b80]
mov eax, dword [esp + 0x48]
cvtpd2ps xmm1, xmm0
movd xmm0, esi
cvtdq2pd xmm0, xmm0
shr esi, 0x1f
addsd xmm0, qword [esi*8 + 0x103f9b80]
cvtpd2ps xmm0, xmm0
divss xmm1, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
movss dword [ebx + 0x2500c], xmm1
addsd xmm0, qword [eax*8 + 0x103f9b80]
cvtpd2ps xmm1, xmm0
movd xmm0, edi
cvtdq2pd xmm0, xmm0
shr edi, 0x1f
addsd xmm0, qword [edi*8 + 0x103f9b80]
cvtpd2ps xmm0, xmm0
divss xmm1, xmm0
movss dword [ebx + 0x25010], xmm1
jmp 0x10132fac
ucomiss xmm1, xmm3
lahf
test ah, 0x44
jnp 0x10132fa5
movss xmm0, dword [ebx + 0x24ffc]
ucomiss xmm0, xmm3
lahf
test ah, 0x44
jnp 0x10132fa5
movups xmm0, xmmword [ebx + 0x24ff4]
movups xmmword [ebx + 0x25004], xmm0
jmp 0x10132fac
or dword [ebx + 0xf34], 4
cmp dword [ebx + 0x83dac], 0x1016a5f0
jne 0x10133041
cmp dword [ebx + 0xe94], 0
jne 0x10133041
cmp dword [ebx + 0xe90], 0
jne 0x10133041
movss xmm2, dword [ebx + 0x24ff4]
movss xmm1, dword [0x102c7cac]
comiss xmm2, xmm1
jbe 0x10133041
movss xmm0, dword [ebx + 0x24ff8]
comiss xmm0, xmm1
jbe 0x10133041
movss xmm0, dword [ebx + 0x24ffc]
comiss xmm0, xmm1
jbe 0x10133041
movss xmm0, dword [ebx + 0x25004]
divss xmm0, xmm2
movss dword [ebx + 0x25004], xmm0
movss xmm0, dword [ebx + 0x25008]
divss xmm0, dword [ebx + 0x24ff8]
movss dword [ebx + 0x25008], xmm0
movss xmm0, dword [ebx + 0x2500c]
divss xmm0, dword [ebx + 0x24ffc]
movss dword [ebx + 0x2500c], xmm0
movss xmm0, dword [ebx + 0x25008]
ucomiss xmm0, xmm3
lahf
test ah, 0x44
jp 0x1013305c
mov dword [ebx + 0x25008], 0x3f800000
movss xmm0, dword [ebx + 0x25010]
ucomiss xmm0, xmm3
lahf
test ah, 0x44
jp 0x10133090
cmp dword [ebx + 0x190], 4
jge 0x10133080
movss xmm0, dword [ebx + 0x25008]
jmp 0x10133088
movss xmm0, dword [0x103f9378]
movss dword [ebx + 0x25010], xmm0
movss xmm0, dword [ebx + 0xe80]
ucomiss xmm0, xmm3
lahf
test ah, 0x44
jnp 0x101330a8
mov ecx, ebx
call fcn.10131f50
mov eax, dword [ebx + 0x24f50]
sub dword [ebx + 0x24f58], eax
cmp dword [ebx + 0xe8c], 0
movss xmm7, dword [ebx + 0x25004]
movss xmm4, dword [ebx + 0x25008]
movss xmm3, dword [ebx + 0x2500c]
movss xmm5, dword [ebx + 0x25010]
cvtps2pd xmm0, xmm7
cvtps2pd xmm1, xmm4
minsd xmm0, qword [0x102ab580]
cvtps2pd xmm2, xmm3
minsd xmm1, xmm0
cvtps2pd xmm6, xmm5
minsd xmm2, xmm1
cvtps2pd xmm0, xmm7
minsd xmm6, xmm2
cvtps2pd xmm2, xmm3
cvtps2pd xmm1, xmm4
xorps xmm3, xmm3
maxsd xmm0, xmm3
cvtps2pd xmm5, xmm5
maxsd xmm1, xmm0
maxsd xmm2, xmm1
maxsd xmm5, xmm2
jne 0x1013311f
movaps xmm5, xmm6
cvtps2pd xmm0, xmm7
movsd xmm2, qword [0x103f96c8]
divsd xmm0, xmm5
cvtpd2ps xmm0, xmm0
movss dword [ebx + 0x25004], xmm0
mov eax, dword [ebx + 0x24f58]
cvtps2pd xmm1, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
mulsd xmm1, xmm2
addsd xmm0, qword [eax*8 + 0x103f9b80]
divsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
movss dword [esp + 0xbc], xmm0
movss xmm0, dword [ebx + 0x25008]
cvtps2pd xmm0, xmm0
divsd xmm0, xmm5
cvtpd2ps xmm0, xmm0
movss dword [ebx + 0x25008], xmm0
mov eax, dword [ebx + 0x24f58]
cvtps2pd xmm1, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
mulsd xmm1, xmm2
addsd xmm0, qword [eax*8 + 0x103f9b80]
divsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
movss dword [esp + 0xc0], xmm0
movss xmm0, dword [ebx + 0x2500c]
cvtps2pd xmm0, xmm0
divsd xmm0, xmm5
cvtpd2ps xmm0, xmm0
movss dword [ebx + 0x2500c], xmm0
mov eax, dword [ebx + 0x24f58]
cvtps2pd xmm1, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
mulsd xmm1, xmm2
addsd xmm0, qword [eax*8 + 0x103f9b80]
divsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
movss dword [esp + 0xc4], xmm0
movss xmm0, dword [ebx + 0x25010]
cvtps2pd xmm0, xmm0
divsd xmm0, xmm5
cvtpd2ps xmm0, xmm0
movss dword [ebx + 0x25010], xmm0
mov eax, dword [ebx + 0x24f58]
cvtps2pd xmm1, xmm0
mov ecx, dword [ebx + 0x194]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
mulsd xmm1, xmm2
addsd xmm0, qword [eax*8 + 0x103f9b80]
divsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
movss dword [esp + 0xc8], xmm0
cmp ecx, 0x3e8
jbe 0x10133341
mov eax, dword [ebx + 0x20f48]
inc eax
and eax, 0xfffffffe
cmp eax, 2
jne 0x10133341
mov eax, dword [ebx + 0x20f4c]
inc eax
and eax, 0xfffffffe
cmp eax, 2
jne 0x10133341
mov eax, dword [ebx + 0x20f50]
and ecx, 3
xor edx, edx
add dword [ebx + ecx*4 + 0x20f38], eax
mov eax, 1
div dword [ebx + 0x20f4c]
mov ecx, dword [ebx + 0x194]
shr ecx, 2
and ecx, 3
mov eax, dword [ebx + edx*4 + 0x20f50]
xor edx, edx
add dword [ebx + ecx*4 + 0x20f38], eax
mov eax, 1
div dword [ebx + 0x20f48]
mov ecx, dword [ebx + 0x194]
imul edx, dword [ebx + 0x20f4c]
shr ecx, 4
and ecx, 3
mov eax, dword [ebx + edx*4 + 0x20f50]
xor edx, edx
add dword [ebx + ecx*4 + 0x20f38], eax
mov eax, 1
div dword [ebx + 0x20f48]
mov esi, dword [ebx + 0x20f4c]
mov eax, 1
mov ecx, edx
mov edi, dword [ebx + 0x194]
xor edx, edx
imul ecx, esi
div esi
shr edi, 6
add ecx, edx
and edi, 3
mov eax, dword [ebx + ecx*4 + 0x20f50]
add dword [ebx + edi*4 + 0x20f38], eax
mov dword [ebx + 0x20f4c], 0
mov dword [ebx + 0x20f48], 0
movzx eax, word [ebx + 0x1c]
lea ecx, [esp + 0xbc]
movzx ebp, word [ebx + 0x1e]
imul ebp, eax
mov eax, dword [ebx]
push ecx
mov ecx, ebx
mov dword [esp + 0x70], ebp
call dword [eax + 0x40]
movsd xmm0, qword [ebx + 0xe18]
lea edi, [ebx + 0xe18]
movsd xmm1, qword [0x103f94d8]
ucomisd xmm0, xmm1
mov dword [esp + 0x10], edi
lahf
test ah, 0x44
jp 0x10133399
movsd xmm0, qword [ebx + 0xe28]
ucomisd xmm0, xmm1
lahf
test ah, 0x44
jnp 0x10133609
cmp dword [ebx + 0x190], 3
jne 0x10133609
xor ecx, ecx
xor edx, edx
mov dword [esp + 0x18], ecx
mov dword [esp + 0x14], edx
movsd xmm0, qword [edi]
ucomisd xmm0, xmm1
lahf
test ah, 0x44
jnp 0x101335eb
lea eax, [ebp*2]
mov ecx, ebx
push eax
call fcn.10168c80
mov esi, eax
mov ecx, ebx
push str.scale_colors__
push esi
mov dword [esp + 0x28], esi
call fcn.10168d40
xor ecx, ecx
test ebp, ebp
je 0x10133404
mov edx, dword [esp + 0x14]
mov eax, dword [ebx + 8]
lea edx, [edx + 8]
mov ax, word [edx + eax - 8]
mov word [esi + ecx*2], ax
inc ecx
cmp ecx, ebp
jb 0x101333f0
xor eax, eax
xor ebp, ebp
cmp ax, word [ebx + 0x1c]
jae 0x101335cf
movzx esi, word [ebx + 0x1c]
mov eax, ebp
movd xmm0, ebp
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
movd xmm1, esi
addsd xmm0, qword [eax*8 + 0x103f9b80]
cvtdq2pd xmm1, xmm1
mulsd xmm1, qword [0x103f9488]
subsd xmm0, xmm1
mulsd xmm0, qword [edi]
addsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [esp + 0x1c], xmm0
call fcn.1026a0f0
lea ecx, [esi - 2]
mov dword [esp + 0x70], eax
cmp eax, ecx
ja 0x101335be
movss xmm1, dword [esp + 0x1c]
mov ecx, eax
movd xmm0, eax
xor edi, edi
cvtdq2pd xmm0, xmm0
shr ecx, 0x1f
xor eax, eax
addsd xmm0, qword [ecx*8 + 0x103f9b80]
cvtpd2ps xmm0, xmm0
subss xmm1, xmm0
movss dword [esp + 0x1c], xmm1
cmp ax, word [ebx + 0x1e]
jae 0x101335ba
nop
movzx esi, word [ebx + 0x1e]
mov eax, edi
movd xmm0, edi
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
movd xmm1, esi
addsd xmm0, qword [eax*8 + 0x103f9b80]
mov eax, dword [esp + 0x10]
cvtdq2pd xmm1, xmm1
mulsd xmm1, qword [0x103f9488]
subsd xmm0, xmm1
mulsd xmm0, qword [eax]
addsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [esp + 0x28], xmm0
call fcn.1026a0f0
mov edx, eax
lea ecx, [esi - 2]
cmp edx, ecx
ja 0x101335ad
movss xmm4, dword [esp + 0x28]
mov eax, esi
imul eax, dword [esp + 0x70]
mov ecx, edx
movss xmm3, dword [0x103f9378]
movd xmm0, edx
cvtdq2pd xmm0, xmm0
shr ecx, 0x1f
add eax, edx
addsd xmm0, qword [ecx*8 + 0x103f9b80]
mov ecx, dword [esp + 0x20]
cvtpd2ps xmm0, xmm0
lea ecx, [ecx + eax*2]
movzx eax, word [ecx + 2]
movd xmm2, eax
movzx eax, word [ecx]
subss xmm4, xmm0
cvtdq2ps xmm2, xmm2
movd xmm0, eax
subss xmm3, xmm4
movzx eax, word [ecx + esi*2 + 2]
cvtdq2ps xmm0, xmm0
mulss xmm2, xmm4
mulss xmm0, xmm3
movd xmm1, eax
movzx eax, word [ecx + esi*2]
addss xmm2, xmm0
imul esi, ebp
movss xmm0, dword [0x103f9378]
subss xmm0, dword [esp + 0x1c]
cvtdq2ps xmm1, xmm1
add esi, edi
mulss xmm2, xmm0
movd xmm0, eax
mov eax, dword [esp + 0x18]
cvtdq2ps xmm0, xmm0
lea ecx, [eax + esi*4]
mov eax, dword [ebx + 8]
mulss xmm1, xmm4
mulss xmm0, xmm3
addss xmm1, xmm0
mulss xmm1, dword [esp + 0x1c]
addss xmm2, xmm1
cvttss2si edx, xmm2
mov word [eax + ecx*2], dx
movzx eax, word [ebx + 0x1e]
inc edi
cmp edi, eax
jb 0x101334a0
mov edi, dword [esp + 0x10]
movzx eax, word [ebx + 0x1c]
inc ebp
cmp ebp, eax
jb 0x10133412
mov esi, dword [esp + 0x20]
push esi
mov ecx, ebx
call fcn.10168d30
movsd xmm1, qword [0x103f94d8]
mov ecx, dword [esp + 0x18]
mov ebp, dword [esp + 0x6c]
mov edx, dword [esp + 0x14]
add edx, 4
add ecx, 2
add edi, 0x10
mov dword [esp + 0x18], ecx
mov dword [esp + 0x10], edi
mov dword [esp + 0x14], edx
cmp edx, 8
jb 0x101333b2
mov eax, dword [ebx + 0x83d64]
pop edi
pop esi
pop ebp
test eax, eax
je 0x1013362e
push 2
push 1
push 0x200
push dword [ebx + 0x83d68]
call eax
add esp, 0x10
test eax, eax
jne 0x1013364d
pop ebx
add esp, 0xbc
ret
push 0x10404af8
lea eax, [esp + 0x18]
mov dword [esp + 0x18], 6
push eax
call fcn.1026eb3b
push 0x10404af8
lea eax, [esp + 0x20]
mov dword [esp + 0x20], 6
push eax
call fcn.1026eb3b
int3