Function at 0x1003e064
Capabilities:
Encode data using xor

Disassembly:
push ebx
mov ebx, esp
push ecx
push ecx
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
sub esp, 0x88
mov eax, dword [0x1011d900]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
push edi
mov edi, dword [ebx + 8]
mov esi, ecx
push ecx
mov dword [ebp - 0x20], esi
push dword [edi + 8]
push dword [edi + 4]
call fcn.100448cd
mov edx, dword [edi]
xorps xmm2, xmm2
mov edi, dword [edi + 4]
mov dword [ebp - 0x18], edx
mov dword [ebp - 0xc], edi
movss xmm0, dword [edx]
andps xmm0, xmmword [0x1010e3e0]
movss dword [ebp - 8], xmm0
mov dword [ebp - 0x10], 1
cmp edi, 1
jle 0x1003e188
mov esi, dword [ebp - 0x10]
fld dword [ebp - 8]
movss xmm0, dword [edx + esi*4]
andps xmm0, xmmword [0x1010e3e0]
fucompi st(0)
movss dword [ebp - 0x48], xmm0
movss dword [ebp - 0x28], xmm0
lahf
movss dword [ebp - 0x50], xmm0
test ah, 0x44
jp 0x1003e106
or dword [ebp - 0x10], 0xffffffff
movss xmm0, dword [ebp - 0x10]
movss dword [ebp - 0x3c], xmm0
jmp 0x1003e10b
movss dword [ebp - 0x3c], xmm2
fld dword [ebp - 0x48]
fld dword [ebp - 0x28]
fucompi st(1)
fstp st(0)
lahf
test ah, 0x44
jp 0x1003e12b
or dword [ebp - 0x10], 0xffffffff
movss xmm0, dword [ebp - 0x10]
movss dword [ebp - 0x38], xmm0
jmp 0x1003e130
movss dword [ebp - 0x38], xmm2
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 8]
push eax
call fcn.1003eafc
movss xmm0, dword [ebp - 0x38]
xorps xmm2, xmm2
ucomiss xmm0, xmm2
pop ecx
pop ecx
fstp dword [ebp - 0x10]
lahf
test ah, 0x44
jp 0x1003e15a
movss xmm0, dword [ebp - 0x48]
jmp 0x1003e15f
movss xmm0, dword [ebp - 0x10]
movss xmm1, dword [ebp - 0x3c]
ucomiss xmm1, xmm2
lahf
test ah, 0x44
jnp 0x1003e174
movss dword [ebp - 8], xmm0
jmp 0x1003e179
movss xmm0, dword [ebp - 8]
mov edx, dword [ebp - 0x18]
inc esi
cmp esi, edi
jl 0x1003e0d0
mov esi, dword [ebp - 0x20]
mov eax, dword [ebx + 8]
xor ecx, ecx
inc ecx
mov dword [ebp - 0x28], ecx
mov edi, dword [eax + 8]
mov dword [ebp - 0x14], edi
cmp edi, ecx
jle 0x1003e29b
mov esi, dword [ebp - 0xc]
mov eax, esi
shl eax, 2
add eax, edx
mov edx, esi
mov dword [ebp - 0x10], eax
shl edx, 2
and dword [ebp - 0x44], 0
test esi, esi
jle 0x1003e287
mov edi, eax
fld dword [ebp - 8]
movss xmm0, dword [edi]
andps xmm0, xmmword [0x1010e3e0]
fucompi st(0)
movss dword [ebp - 0x48], xmm0
movss dword [ebp - 0x30], xmm0
lahf
movss dword [ebp - 0x34], xmm0
test ah, 0x44
jp 0x1003e1f4
or dword [ebp - 0x3c], 0xffffffff
movss xmm0, dword [ebp - 0x3c]
movss dword [ebp - 0x38], xmm0
jmp 0x1003e1f9
movss dword [ebp - 0x38], xmm2
fld dword [ebp - 0x48]
fld dword [ebp - 0x30]
fucompi st(1)
fstp st(0)
lahf
test ah, 0x44
jp 0x1003e219
or dword [ebp - 0x30], 0xffffffff
movss xmm0, dword [ebp - 0x30]
movss dword [ebp - 0x3c], xmm0
jmp 0x1003e21e
movss dword [ebp - 0x3c], xmm2
lea eax, [ebp - 0x34]
push eax
lea eax, [ebp - 8]
push eax
call fcn.1003eafc
movss xmm0, dword [ebp - 0x3c]
xorps xmm2, xmm2
ucomiss xmm0, xmm2
pop ecx
pop ecx
fstp dword [ebp - 0x30]
lahf
test ah, 0x44
jp 0x1003e248
movss xmm0, dword [ebp - 0x48]
jmp 0x1003e24d
movss xmm0, dword [ebp - 0x30]
movss xmm1, dword [ebp - 0x38]
ucomiss xmm1, xmm2
lahf
test ah, 0x44
jnp 0x1003e262
movss dword [ebp - 8], xmm0
jmp 0x1003e267
movss xmm0, dword [ebp - 8]
mov ecx, dword [ebp - 0x44]
add edi, 4
inc ecx
mov dword [ebp - 0x44], ecx
cmp ecx, esi
jl 0x1003e1bf
mov edi, dword [ebp - 0x14]
mov edx, esi
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x28]
shl edx, 2
inc ecx
add eax, edx
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x10], eax
cmp ecx, edi
jl 0x1003e1b1
mov esi, dword [ebp - 0x20]
movss dword [ebp - 0x14], xmm0
fld dword [ebp - 0x14]
push ecx
fstp dword [esp]
call fcn.1009bfc6
pop ecx
test ax, ax
jle 0x1003e2be
mov dword [esi + 0x20], 3
jmp 0x1003ea52
movss xmm0, dword [ebp - 8]
ucomiss xmm0, dword [0x1010e1ac]
lahf
test ah, 0x44
jp 0x1003e2d8
movss xmm0, dword [0x1010e228]
mov eax, dword [esi + 0x34]
movss dword [ebp - 0x44], xmm0
cmp eax, dword [esi + 0x38]
je 0x1003e37f
mov eax, dword [ebp - 0xc]
lea ecx, [esi + 0x10c]
movss dword [ebp - 0x14], xmm0
cmp dword [ecx + 4], eax
jne 0x1003e301
cmp dword [ecx + 8], edi
je 0x1003e331
test eax, eax
je 0x1003e320
test edi, edi
je 0x1003e320
mov eax, 0x7fffffff
cdq
idiv edi
mov edx, dword [ebx + 8]
cmp dword [edx + 4], eax
jg 0x1003ea6d
mov eax, dword [ebp - 0xc]
push edi
imul edi, eax
push eax
push edi
call fcn.1001cc2d
lea ecx, [esi + 0x10c]
mov eax, dword [ecx + 8]
imul eax, dword [ecx + 4]
mov edx, dword [ecx]
test eax, eax
jle 0x1003e357
mov ecx, dword [ebp - 0x18]
fld dword [ebp - 0x14]
sub ecx, edx
fld dword [ecx + edx]
fdiv st(1)
fstp dword [edx]
add edx, 4
sub eax, 1
jne 0x1003e346
fstp st(0)
lea eax, [esi + 0x10c]
push eax
push esi
lea ecx, [esi + 0x50]
call fcn.10043048
lea eax, [esi + 0x10c]
push eax
push esi
lea ecx, [esi + 0xb4]
call fcn.10042e2a
jmp 0x1003e634
mov eax, dword [ebx + 8]
lea edi, [esi + 0x44]
mov ecx, dword [esi + 0x3c]
movss dword [ebp - 0x34], xmm0
mov edx, dword [eax]
mov eax, dword [eax + 4]
mov dword [ebp - 0xc], edx
mov dword [ebp - 0x14], eax
cmp dword [edi + 4], ecx
jne 0x1003e3a2
cmp dword [edi + 8], ecx
je 0x1003e3c6
test ecx, ecx
je 0x1003e3b6
mov eax, 0x7fffffff
cdq
idiv ecx
cmp ecx, eax
jg 0x1003ea6d
push ecx
push ecx
imul ecx, ecx
push ecx
mov ecx, edi
call fcn.1001cc2d
mov edx, dword [ebp - 0xc]
mov eax, dword [edi]
xor ecx, ecx
mov dword [ebp - 0x18], eax
mov eax, dword [edi + 4]
mov dword [ebp - 0x10], ecx
cmp dword [edi + 8], ecx
jle 0x1003e437
mov esi, dword [ebp - 0x14]
fld dword [ebp - 0x34]
shl esi, 2
mov dword [ebp - 0x50], esi
mov esi, eax
shl esi, 2
mov dword [ebp - 0x30], esi
mov esi, dword [ebp - 0x18]
and dword [ebp - 0x14], 0
test eax, eax
jle 0x1003e41d
mov ecx, esi
fld st(0)
mov esi, dword [ebp - 0x14]
fld dword [edx]
inc esi
fdiv st(1)
add edx, 4
fstp dword [ecx]
mov eax, dword [edi + 4]
add ecx, 4
cmp esi, eax
jl 0x1003e3fe
mov ecx, dword [ebp - 0x10]
fstp st(0)
mov esi, dword [ebp - 0x18]
mov edx, dword [ebp - 0xc]
add esi, dword [ebp - 0x30]
inc ecx
add edx, dword [ebp - 0x50]
mov dword [ebp - 0x10], ecx
mov dword [ebp - 0x18], esi
mov dword [ebp - 0xc], edx
cmp ecx, dword [edi + 8]
jl 0x1003e3ef
mov esi, dword [ebp - 0x20]
fstp st(0)
cmp byte [esi + 0x27], 0
je 0x1003e4ad
mov ecx, dword [esi + 0x34]
test ecx, ecx
je 0x1003e454
mov eax, 0x7fffffff
cdq
idiv ecx
cmp ecx, eax
jg 0x1003ea6d
push ecx
push ecx
imul ecx, ecx
push ecx
mov ecx, esi
call fcn.1001cc2d
mov edi, dword [esi]
xor edx, edx
mov eax, dword [esi + 4]
mov dword [ebp - 0x10], edi
cmp dword [esi + 8], edx
jle 0x1003e4ad
mov ecx, eax
shl ecx, 2
mov dword [ebp - 0x14], ecx
xor ecx, ecx
test eax, eax
jle 0x1003e4a1
cmp ecx, edx
jne 0x1003e48c
movss xmm0, dword [0x1010e228]
jmp 0x1003e48f
xorps xmm0, xmm0
movss dword [edi], xmm0
inc ecx
mov eax, dword [esi + 4]
add edi, 4
cmp ecx, eax
jl 0x1003e47e
mov edi, dword [ebp - 0x10]
add edi, dword [ebp - 0x14]
inc edx
mov dword [ebp - 0x10], edi
cmp edx, dword [esi + 8]
jl 0x1003e478
cmp byte [esi + 0x28], 0
je 0x1003e52a
mov ecx, dword [esi + 0x34]
mov edi, dword [esi + 0x3c]
test ecx, ecx
je 0x1003e4d1
test edi, edi
je 0x1003e4d1
mov eax, 0x7fffffff
cdq
idiv edi
cmp ecx, eax
jg 0x1003ea6d
push edi
push ecx
imul ecx, edi
push ecx
mov ecx, esi
call fcn.1001cc2d
mov edi, dword [esi]
xor edx, edx
mov eax, dword [esi + 4]
mov dword [ebp - 0x10], edi
cmp dword [esi + 8], edx
jle 0x1003e52a
mov ecx, eax
shl ecx, 2
mov dword [ebp - 0x14], ecx
xor ecx, ecx
test eax, eax
jle 0x1003e51e
cmp ecx, edx
jne 0x1003e509
movss xmm0, dword [0x1010e228]
jmp 0x1003e50c
xorps xmm0, xmm0
movss dword [edi], xmm0
inc ecx
mov eax, dword [esi + 4]
add edi, 4
cmp ecx, eax
jl 0x1003e4fb
mov edi, dword [ebp - 0x10]
add edi, dword [ebp - 0x14]
inc edx
mov dword [ebp - 0x10], edi
cmp edx, dword [esi + 8]
jl 0x1003e4f5
cmp byte [esi + 0x29], 0
je 0x1003e5a6
mov ecx, dword [esi + 0x38]
lea edi, [esi + 0xc]
test ecx, ecx
je 0x1003e54a
mov eax, 0x7fffffff
cdq
idiv ecx
cmp ecx, eax
jg 0x1003ea6d
push ecx
push ecx
imul ecx, ecx
push ecx
mov ecx, edi
call fcn.1001cc2d
mov eax, dword [edi]
xor edx, edx
mov dword [ebp - 0x18], eax
mov eax, dword [edi + 4]
cmp dword [edi + 8], edx
jle 0x1003e5a6
mov ecx, eax
shl ecx, 2
mov dword [ebp - 0x14], ecx
xor ecx, ecx
test eax, eax
jle 0x1003e597
mov esi, dword [ebp - 0x18]
cmp ecx, edx
jne 0x1003e585
movss xmm0, dword [0x1010e228]
jmp 0x1003e588
xorps xmm0, xmm0
movss dword [esi], xmm0
inc ecx
mov eax, dword [edi + 4]
add esi, 4
cmp ecx, eax
jl 0x1003e577
mov ecx, dword [ebp - 0x14]
inc edx
add dword [ebp - 0x18], ecx
cmp edx, dword [edi + 8]
jl 0x1003e56e
mov esi, dword [ebp - 0x20]
cmp byte [esi + 0x2a], 0
je 0x1003e634
mov ecx, dword [esi + 0x38]
lea edi, [esi + 0xc]
mov eax, dword [esi + 0x3c]
mov dword [ebp - 0x14], eax
test ecx, ecx
je 0x1003e5d8
test eax, eax
je 0x1003e5d8
mov eax, 0x7fffffff
cdq
idiv dword [ebp - 0x14]
cmp ecx, eax
jg 0x1003ea6d
mov eax, dword [esi + 0x3c]
push eax
push ecx
imul ecx, eax
push ecx
mov ecx, edi
call fcn.1001cc2d
mov eax, dword [edi]
xor edx, edx
mov dword [ebp - 0x18], eax
mov eax, dword [edi + 4]
cmp dword [edi + 8], edx
jle 0x1003e634
mov ecx, eax
shl ecx, 2
mov dword [ebp - 0x14], ecx
xor ecx, ecx
test eax, eax
jle 0x1003e625
mov esi, dword [ebp - 0x18]
cmp ecx, edx
jne 0x1003e613
movss xmm0, dword [0x1010e228]
jmp 0x1003e616
xorps xmm0, xmm0
movss dword [esi], xmm0
inc ecx
mov eax, dword [edi + 4]
add esi, 4
cmp ecx, eax
jl 0x1003e605
mov ecx, dword [ebp - 0x14]
inc edx
add dword [ebp - 0x18], ecx
cmp edx, dword [edi + 8]
jl 0x1003e5fc
mov esi, dword [ebp - 0x20]
lea eax, [esi + 0x44]
mov dword [ebp - 0x64], eax
lea esi, [ebp - 0x68]
lea edi, [ebp - 0x5c]
movsd dword es:[edi], dword [esi]
lea ecx, [ebp - 0x5c]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.10042ce9
mov esi, dword [ebp - 0x20]
fstp dword [ebp - 0xc]
fld qword [0x1010e208]
fld qword [0x1010e1b8]
movss xmm0, dword [ebp - 0xc]
fld dword [ebp - 0xc]
movss dword [ebp - 0x18], xmm0
mov eax, dword [esi + 0x3c]
xor edi, edi
inc edi
mov byte [ebp - 0x19], 1
cmp eax, edi
jle 0x1003e86b
xor ecx, ecx
mov dword [ebp - 8], ecx
test edi, edi
jle 0x1003e855
jmp 0x1003e68f
fxch st(2)
fxch st(1)
fmulp st(2)
fxch st(1)
fstp dword [ebp - 0x10]
fld dword [ebp - 0x10]
fcompi st(1)
jbe 0x1003e6a9
movss xmm0, dword [ebp - 0x10]
movss dword [ebp - 0x10], xmm0
jmp 0x1003e6b0
mov dword [ebp - 0x10], 0x800000
mov eax, dword [ebp - 0x64]
fld dword [ebp - 0x10]
mov edx, dword [eax + 4]
mov eax, edx
imul eax, ecx
mov ecx, dword [ebp - 0x64]
mov esi, dword [ecx]
add eax, edi
mov ecx, dword [ebp - 8]
fld dword [esi + eax*4]
mov esi, dword [ebp - 0x20]
fabs
fcompi st(1)
ja 0x1003e6f4
mov esi, dword [ebp - 0x64]
imul edx, edi
mov eax, dword [esi]
mov esi, dword [ebp - 0x20]
add edx, ecx
fld dword [eax + edx*4]
fabs
fcompi st(1)
fstp st(0)
ja 0x1003e6f6
fld dword [ebp - 0xc]
jmp 0x1003e837
fstp st(0)
lea eax, [ebp - 0x4c]
mov byte [ebp - 0x19], 0
push eax
lea eax, [ebp - 0x54]
mov edx, edi
push eax
push ecx
lea ecx, [esi + 0x44]
fstp st(0)
call fcn.10045924
mov eax, dword [esi + 0x44]
add esp, 0xc
movss xmm2, dword [ebp - 0x54]
ucomiss xmm2, dword [0x1010e228]
mov edx, dword [esi + 0x48]
lea ecx, [eax + edi*4]
mov dword [ebp - 0x30], ecx
mov ecx, dword [esi + 0x4c]
mov dword [ebp - 0x14], ecx
mov ecx, dword [ebp - 8]
movss xmm1, dword [ebp - 0x50]
lea eax, [eax + ecx*4]
mov dword [ebp - 0x34], eax
lahf
test ah, 0x44
jp 0x1003e751
ucomiss xmm1, dword [0x1010e1ac]
lahf
test ah, 0x44
jnp 0x1003e775
fld dword [ebp - 0x50]
push ecx
push ecx
mov ecx, dword [ebp - 0x30]
fstp dword [esp + 4]
fld dword [ebp - 0x54]
fstp dword [esp]
push dword [ebp - 0x14]
push edx
push dword [ebp - 0x34]
call fcn.1004ff8c
mov ecx, dword [ebp - 8]
add esp, 0x14
cmp byte [esi + 0x27], 0
jne 0x1003e781
cmp byte [esi + 0x28], 0
je 0x1003e79f
xorps xmm1, xmmword [0x1010e3f0]
lea eax, [ebp - 0x40]
push eax
push ecx
push edi
mov ecx, esi
movss dword [ebp - 0x40], xmm2
movss dword [ebp - 0x3c], xmm1
call fcn.10045ace
lea eax, [ebp - 0x4c]
push eax
push dword [ebp - 8]
lea ecx, [esi + 0x44]
push edi
call fcn.10045ace
cmp byte [esi + 0x29], 0
jne 0x1003e7bb
cmp byte [esi + 0x2a], 0
je 0x1003e7cb
lea eax, [ebp - 0x4c]
push eax
push dword [ebp - 8]
lea ecx, [esi + 0xc]
push edi
call fcn.10045ace
mov eax, dword [esi + 0x48]
mov ecx, dword [esi + 0x44]
lea edx, [eax*4 + 4]
mov eax, edx
imul edx, edi
imul eax, dword [ebp - 8]
fld dword [eax + ecx]
fabs
fstp dword [ebp - 0x10]
fld dword [edx + ecx]
fabs
fstp dword [ebp - 0x28]
fld dword [ebp - 0x28]
fld dword [ebp - 0x10]
fcompi st(1)
fstp st(0)
jbe 0x1003e804
movss xmm0, dword [ebp - 0x10]
jmp 0x1003e809
movss xmm0, dword [ebp - 0x28]
fld dword [ebp - 0xc]
movss dword [ebp - 0x10], xmm0
fld dword [ebp - 0x10]
fcompi st(1)
fstp st(0)
ja 0x1003e81f
movss xmm0, dword [ebp - 0x18]
mov ecx, dword [ebp - 8]
movss dword [ebp - 0xc], xmm0
fld dword [ebp - 0xc]
fld qword [0x1010e1b8]
fxch st(1)
movss dword [ebp - 0x18], xmm0
fld qword [0x1010e208]
inc ecx
mov dword [ebp - 8], ecx
cmp ecx, edi
jl 0x1003e68b
fstp st(0)
fld qword [0x1010e208]
fxch st(2)
fxch st(1)
mov eax, dword [esi + 0x3c]
inc edi
cmp edi, eax
jl 0x1003e67c
cmp byte [ebp - 0x19], 0
je 0x1003e66a
fstp st(0)
xor edx, edx
fstp st(1)
fstp st(0)
test eax, eax
jle 0x1003e8db
mov ecx, dword [esi + 0x48]
mov eax, dword [esi + 0x44]
inc ecx
imul ecx, edx
movss xmm1, dword [eax + ecx*4]
mov eax, dword [esi + 0x18]
movaps xmm0, xmm1
andps xmm0, xmmword [0x1010e3e0]
movss dword [eax + edx*4], xmm0
cmp byte [esi + 0x27], 0
jne 0x1003e8a4
cmp byte [esi + 0x28], 0
je 0x1003e8d5
xorps xmm0, xmm0
comiss xmm0, xmm1
jbe 0x1003e8d5
mov edi, dword [esi + 4]
mov ecx, edi
mov eax, dword [esi]
imul ecx, edx
lea ecx, [eax + ecx*4]
xor eax, eax
test edi, edi
jle 0x1003e8d5
movss xmm0, dword [ecx + eax*4]
xorps xmm0, xmmword [0x1010e3f0]
movss dword [ecx + eax*4], xmm0
inc eax
cmp eax, edi
jl 0x1003e8bf
inc edx
cmp edx, dword [esi + 0x3c]
jl 0x1003e877
mov ecx, dword [esi + 0x1c]
xor eax, eax
mov edx, dword [esi + 0x18]
test ecx, ecx
jle 0x1003e8f9
fld dword [ebp - 0x44]
fld dword [edx + eax*4]
fmul st(1)
fstp dword [edx + eax*4]
inc eax
cmp eax, ecx
jl 0x1003e8ea
fstp st(0)
mov eax, dword [esi + 0x3c]
xor edi, edi
mov dword [esi + 0x30], eax
mov dword [ebp - 0x28], edi
test eax, eax
jle 0x1003ea52
lea ecx, [esi + 0x18]
xorps xmm1, xmm1
mov edx, dword [ecx + 4]
sub eax, edi
or dword [ebp - 0x58], 0xffffffff
mov ecx, edx
or dword [ebp - 0x54], 0xffffffff
sub ecx, eax
and dword [ebp - 0x50], 0
mov dword [ebp - 0x14], eax
mov eax, dword [esi + 0x18]
mov dword [ebp - 0x74], ecx
mov dword [ebp - 0x6c], edx
lea eax, [eax + ecx*4]
mov dword [ebp - 0x84], eax
lea ecx, [ebp - 0x84]
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x80], eax
lea eax, [esi + 0x18]
mov dword [ebp - 0x78], eax
lea eax, [ebp - 0x58]
push eax
call fcn.10050a56
movss xmm0, dword [ebp - 0x50]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jnp 0x1003ea4f
mov eax, dword [ebp - 0x58]
test eax, eax
je 0x1003ea3b
lea edx, [eax + edi]
mov eax, dword [esi + 0x18]
fld dword [eax + edx*4]
movss xmm0, dword [eax + edi*4]
fstp dword [eax + edi*4]
movss dword [eax + edx*4], xmm0
cmp byte [esi + 0x27], 0
jne 0x1003e99a
cmp byte [esi + 0x28], 0
jne 0x1003e99a
xor al, al
jmp 0x1003e99c
mov al, 1
test al, al
je 0x1003e9e7
mov eax, dword [esi + 4]
mov ecx, dword [esi]
mov dword [ebp - 0x10], eax
imul eax, edx
lea eax, [ecx + eax*4]
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x10]
imul eax, edi
lea eax, [ecx + eax*4]
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x14], eax
xor eax, eax
test ecx, ecx
jle 0x1003e9e7
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x34]
fld dword [esi + eax*4]
movss xmm0, dword [edi + eax*4]
fstp dword [edi + eax*4]
movss dword [esi + eax*4], xmm0
inc eax
cmp eax, ecx
jl 0x1003e9cc
mov esi, dword [ebp - 0x20]
mov edi, dword [ebp - 0x28]
cmp byte [esi + 0x29], 0
jne 0x1003e9f7
cmp byte [esi + 0x2a], 0
jne 0x1003e9f7
xor al, al
jmp 0x1003e9f9
mov al, 1
test al, al
je 0x1003ea3b
mov eax, dword [esi + 0x10]
mov ecx, dword [esi + 0xc]
imul edx, eax
mov dword [ebp - 0x14], eax
lea eax, [ecx + edx*4]
mov edx, dword [ebp - 0x14]
mov dword [ebp - 0x34], eax
mov eax, edi
imul eax, edx
lea ecx, [ecx + eax*4]
xor eax, eax
test edx, edx
jle 0x1003ea3b
mov esi, dword [ebp - 0x34]
fld dword [ecx + eax*4]
movss xmm0, dword [esi + eax*4]
fstp dword [esi + eax*4]
movss dword [ecx + eax*4], xmm0
inc eax
cmp eax, edx
jl 0x1003ea23
mov esi, dword [ebp - 0x20]
mov eax, dword [esi + 0x3c]
lea ecx, [esi + 0x18]
inc edi
mov dword [ebp - 0x28], edi
cmp edi, eax
jl 0x1003e912
jmp 0x1003ea52
mov dword [esi + 0x30], edi
mov ecx, dword [ebp - 4]
mov eax, esi
pop edi
mov byte [esi + 0x24], 1
xor ecx, ebp
pop esi
call fcn.10072cfd
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret 8
call fcn.100022bd
int3