Function at 0x53a770
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x4690
call fcn.0054f750
mov eax, dword [0x62aabc]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0xc]
xorps xmm0, xmm0
mov dword [ebp - 0x240c], eax
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x23c8], eax
xor eax, eax
push ebx
mov ebx, dword [ebp + 8]
mov dword [ebp - 0x23f8], eax
mov dword [ebp - 0x23fc], eax
mov dword [ebp - 0x2400], eax
xor al, al
mov byte [ebp - 0x23cd], al
mov al, byte [ebx + 0x120c]
inc dword [ebx + 0x120c]
and al, 3
push esi
mov byte [ebx + 0x12a2], al
lea esi, [ebx + 0x1c0c]
mov eax, dword [ebx + 0x11f0]
push edi
push dword [ebx + 0x11e8]
shl eax, 2
lea edi, [ebp - 0xfd8]
add esi, eax
mov dword [ebp - 0x2420], ebx
add edi, eax
mov dword [ebp - 0x23f4], 0
lea eax, [ebx + 0x13ea]
mov dword [ebp - 0x23e4], esi
push eax
lea eax, [ebx + 0x10]
mov dword [ebp - 0x23ec], edi
push eax
movups xmmword [ebp - 0x548], xmm0
call fcn.0053f2e0
mov edx, dword [ebx + 0x11e0]
add esp, 0xc
lea eax, [edx + edx*4]
lea esi, [esi + eax*4]
mov eax, dword [ebx + 0x11e8]
mov dword [ebp - 0x23f0], esi
lea ecx, [eax - 1]
test ecx, ecx
js 0x53a8fd
cmp eax, 4
jl 0x53a8cd
lea edi, [ecx + 1]
shr edi, 2
lea edx, [ecx - 2]
mov eax, edi
lea edx, [esi + edx*4]
neg eax
lea esi, [ebx + 0x13e8]
lea esi, [esi + ecx*2]
lea ecx, [ecx + eax*4]
nop
movsx eax, word [esi + 2]
lea esi, [esi - 8]
lea edx, [edx - 0x10]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [edx + 0x18], xmm0
movsx eax, word [esi + 8]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [edx + 0x14], xmm0
movsx eax, word [esi + 6]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [edx + 0x10], xmm0
movsx eax, word [esi + 4]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [edx + 0xc], xmm0
sub edi, 1
jne 0x53a870
mov edx, dword [ebx + 0x11e0]
mov esi, dword [ebp - 0x23f0]
mov edi, dword [ebp - 0x23ec]
test ecx, ecx
js 0x53a8fd
lea edx, [ebx + 0x13ea]
lea edx, [edx + ecx*2]
nop word [eax + eax]
movsx eax, word [edx]
lea edx, [edx - 2]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [esi + ecx*4], xmm0
sub ecx, 1
jns 0x53a8e0
mov edx, dword [ebx + 0x11e0]
mov esi, dword [ebp - 0x23e4]
lea eax, [edx + edx*4]
movss xmm1, dword [0x6133dc]
movss xmm0, dword [esi + eax*4]
addss xmm0, xmm1
movss dword [esi + eax*4], xmm0
mov eax, dword [ebx + 0x11e0]
mov ecx, dword [ebx + 0x11e8]
sar ecx, 3
lea eax, [eax + eax*4]
add ecx, eax
movss xmm0, dword [esi + ecx*4]
addss xmm0, xmm1
movss dword [esi + ecx*4], xmm0
mov eax, dword [ebx + 0x11e0]
mov ecx, dword [ebx + 0x11e8]
sar ecx, 3
lea eax, [eax + eax*4]
lea eax, [esi + eax*4]
movss xmm0, dword [eax + ecx*8]
subss xmm0, xmm1
movss dword [eax + ecx*8], xmm0
mov eax, dword [ebx + 0x11e8]
sar eax, 3
lea ecx, [eax + eax*2]
mov eax, dword [ebx + 0x11e0]
lea eax, [eax + eax*4]
lea eax, [esi + eax*4]
movss xmm0, dword [eax + ecx*4]
subss xmm0, xmm1
movss dword [eax + ecx*4], xmm0
mov ecx, dword [ebx + 0x11e8]
mov eax, dword [ebx + 0x11e0]
sar ecx, 3
shl ecx, 4
add ecx, esi
lea eax, [eax + eax*4]
movss xmm0, dword [ecx + eax*4]
addss xmm0, xmm1
movss dword [ecx + eax*4], xmm0
mov eax, dword [ebx + 0x11e8]
sar eax, 3
add eax, dword [ebx + 0x11e0]
lea eax, [eax + eax*4]
movss xmm0, dword [esi + eax*4]
addss xmm0, xmm1
movss dword [esi + eax*4], xmm0
mov eax, dword [ebx + 0x11e8]
sar eax, 3
lea ecx, [eax + eax*2]
mov eax, dword [ebx + 0x11e0]
lea eax, [eax + eax*4]
lea eax, [esi + eax*4]
movss xmm0, dword [eax + ecx*8]
subss xmm0, xmm1
movss dword [eax + ecx*8], xmm0
mov eax, dword [ebx + 0x11e8]
sar eax, 3
lea ecx, [eax*8]
sub ecx, eax
mov eax, dword [ebx + 0x11e0]
lea eax, [eax + eax*4]
lea eax, [esi + eax*4]
movss xmm0, dword [eax + ecx*4]
subss xmm0, xmm1
movss dword [eax + ecx*4], xmm0
cmp dword [ebx + 0x1248], 0
jne 0x53af4e
push dword [ebx + 0x13e4]
lea eax, [ebp - 0xfd8]
push esi
push eax
lea eax, [ebp - 0x12c4]
push eax
push ebx
call fcn.00540470
push esi
push edi
lea eax, [ebp - 0x12c4]
push eax
push ebx
call fcn.0053f370
mov esi, dword [ebp + 0x14]
lea eax, [ebp - 0x12c4]
push esi
push dword [ebp - 0x23e4]
push edi
push eax
push ebx
call fcn.00540780
push esi
lea eax, [ebp - 0x12c4]
push eax
push ebx
call fcn.00540aa0
mov ecx, dword [ebx + 0x1674]
add esp, 0x44
lea esi, [ecx*8 + 0x5f5]
add esi, ecx
cmp dword [ebx + 0x17cc], 0
lea esi, [ebx + esi*4]
je 0x53abfd
cmp dword [ebx + 0x11b4], 0x4d
jle 0x53abfd
push 0x1100
lea eax, [ebx + 0x94]
mov dword [ebx + ecx*4 + 0x1274], 1
push eax
lea eax, [ebp - 0x23c4]
push eax
call sub.VCRUNTIME140.dll_memcpy
movups xmm0, xmmword [ebx + 0x1280]
movups xmmword [esi], xmm0
movups xmm0, xmmword [ebx + 0x1290]
movups xmmword [esi + 0x10], xmm0
mov eax, dword [ebx + 0x12a0]
mov dword [esi + 0x20], eax
mov eax, dword [ebx + 0x11e4]
shl eax, 2
push eax
lea eax, [ebp - 0x12c4]
push eax
lea eax, [ebp - 0x518]
push eax
call sub.VCRUNTIME140.dll_memcpy
mov eax, dword [ebx + 0x1674]
add esp, 0x18
test eax, eax
je 0x53ab27
cmp dword [ebx + eax*4 + 0x1270], 0
je 0x53ab27
lea edi, [ebx + 0x11bc]
jmp 0x53ab4c
mov al, byte [ebx + 0x1c00]
lea edi, [ebx + 0x11bc]
mov cl, byte [ebx + 0x17d0]
mov edx, 0x3f
mov byte [edi], al
add cl, byte [esi]
cmp cl, dl
movzx eax, cl
cmovl edx, eax
mov byte [esi], dl
push dword [ebx + 0x11e4]
xor eax, eax
cmp dword [ebp + 0x14], 2
sete al
push eax
push edi
lea eax, [ebp - 0x528]
push esi
push eax
call fcn.0053eea0
mov ecx, dword [ebx + 0x11e4]
add esp, 0x14
xor eax, eax
test ecx, ecx
jle 0x53abae
movss xmm1, dword [0x60ee70]
nop dword [eax]
nop word [eax + eax]
movd xmm0, dword [ebp + eax*4 - 0x528]
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
movss dword [ebp + eax*4 - 0x12c4], xmm0
inc eax
cmp eax, ecx
jl 0x53ab90
mov eax, dword [ebx + 0x1674]
push dword [ebp - 0x23e4]
lea eax, [eax + eax*4]
shl eax, 6
add eax, 0x1840
add eax, ebx
push eax
lea eax, [ebp - 0x23c4]
push eax
push esi
lea eax, [ebp - 0x12c4]
push eax
push ebx
call fcn.00540fb0
mov eax, dword [ebx + 0x11e4]
shl eax, 2
push eax
lea eax, [ebp - 0x518]
push eax
lea eax, [ebp - 0x12c4]
push eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0x24
push dword [ebx + 0x11e4]
lea eax, [ebx + 0x1280]
mov dword [ebp - 0x23cc], 0x100
push eax
mov dword [ebp - 0x23dc], 0
mov dword [ebp - 0x2404], 0
call fcn.0053ee70
mov esi, dword [ebp - 0x23c8]
mov edi, eax
lea eax, [ebx + 0x94]
mov dword [ebp - 0x23e8], 0xffffffff
push 0x1100
push eax
movups xmm0, xmmword [esi]
lea eax, [ebp - 0x3590]
mov dword [ebp - 0x2408], 0xffffffff
push eax
movups xmmword [ebp - 0x2440], xmm0
movups xmm0, xmmword [esi + 0x10]
movups xmmword [ebp - 0x2450], xmm0
movups xmm0, xmmword [esi + 0x20]
movups xmmword [ebp - 0x2460], xmm0
call sub.VCRUNTIME140.dll_memcpy
movups xmm0, xmmword [ebp - 0x2480]
mov al, byte [ebx + 0x12a2]
add esp, 0x14
movups xmm1, xmmword [ebp - 0x2470]
mov byte [ebp - 0x23d5], al
xor ecx, ecx
movzx eax, word [ebx + 0x168c]
movups xmmword [ebp - 0x518], xmm0
mov dword [ebp - 0x241c], eax
movups xmm0, xmmword [ebp - 0x2490]
mov eax, dword [ebx + 0x1688]
mov dword [ebp - 0x2418], eax
movups xmmword [ebp - 0x528], xmm1
movups xmmword [ebp - 0x2430], xmm0
mov edx, dword [ebp - 0x23cc]
movzx eax, dx
mov dword [ebp - 0x23d4], ecx
mov dword [ebp - 0x23f0], eax
cmp edi, dword [ebp - 0x23e8]
jne 0x53ad09
mov ecx, dword [ebp - 0x2400]
mov eax, dword [ebp - 0x23d4]
mov dword [ebp - 0x23e0], ecx
jmp 0x53afb7
cmp edi, dword [ebp - 0x2408]
jne 0x53ad28
mov ecx, dword [ebp - 0x23fc]
mov eax, dword [ebp - 0x23d4]
mov dword [ebp - 0x23e0], ecx
jmp 0x53afb7
test ecx, ecx
jle 0x53ad8c
movups xmm0, xmmword [ebp - 0x2440]
push 0x1100
lea eax, [ebp - 0x3590]
movups xmmword [esi], xmm0
push eax
movups xmm0, xmmword [ebp - 0x2450]
lea eax, [ebx + 0x94]
push eax
movups xmmword [esi + 0x10], xmm0
movups xmm0, xmmword [ebp - 0x2460]
movups xmmword [esi + 0x20], xmm0
call sub.VCRUNTIME140.dll_memcpy
mov al, byte [ebp - 0x23d5]
add esp, 0xc
mov byte [ebx + 0x12a2], al
mov eax, dword [ebp - 0x241c]
mov word [ebx + 0x168c], ax
mov eax, dword [ebp - 0x2418]
mov dword [ebx + 0x1688], eax
push dword [ebp - 0x23e4]
lea esi, [ebx + 0x12a4]
push esi
lea eax, [ebx + 0x94]
push eax
lea eax, [ebx + 0x1280]
push eax
lea eax, [ebp - 0x12c4]
push eax
push ebx
call fcn.00540fb0
mov eax, dword [ebp - 0x23c8]
add esp, 0x18
cmp dword [ebp - 0x23d4], 6
jne 0x53adef
cmp dword [ebp - 0x23dc], 0
jne 0x53adef
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x2430], xmm0
movups xmm0, xmmword [eax + 0x10]
movups xmmword [ebp - 0x518], xmm0
movups xmm0, xmmword [eax + 0x20]
movups xmmword [ebp - 0x528], xmm0
push dword [ebp + 0x14]
push 0
push dword [ebx + 0x1674]
push eax
push ebx
call fcn.0053a160
push dword [ebx + 0x11e8]
movsx eax, byte [ebx + 0x129e]
push esi
push eax
movsx eax, byte [ebx + 0x129d]
push eax
mov eax, dword [ebp - 0x23c8]
push eax
call fcn.00539d00
mov edx, dword [ebp - 0x23c8]
add esp, 0x28
bsr eax, dword [edx + 0x1c]
mov ecx, dword [edx + 0x14]
sub ecx, eax
mov eax, dword [ebp - 0x23d4]
dec ecx
mov dword [ebp - 0x23e0], ecx
cmp eax, 6
jne 0x53af3d
cmp dword [ebp - 0x23dc], 0
jne 0x53af3d
cmp ecx, dword [ebp + 0x18]
jle 0x53af3d
movups xmm0, xmmword [ebp - 0x2430]
mov cl, byte [ebp - 0xfdc]
xor eax, eax
movups xmmword [edx], xmm0
movups xmm0, xmmword [ebp - 0x518]
movups xmmword [edx + 0x10], xmm0
movups xmm0, xmmword [ebp - 0x528]
movups xmmword [edx + 0x20], xmm0
mov byte [ebx + 0x1c00], cl
cmp dword [ebx + 0x11e4], eax
jle 0x53aeb1
nop dword [eax + eax]
mov byte [ebx + eax + 0x1280], 4
inc eax
cmp eax, dword [ebx + 0x11e4]
jl 0x53aea0
cmp dword [ebp + 0x14], 2
je 0x53aebd
mov byte [ebx + 0x1280], cl
mov eax, dword [ebp - 0x241c]
mov word [ebx + 0x168c], ax
mov eax, dword [ebp - 0x2418]
mov dword [ebx + 0x1688], eax
xor eax, eax
cmp dword [ebx + 0x11e8], eax
jle 0x53aeed
mov byte [esi + eax], 0
inc eax
cmp eax, dword [ebx + 0x11e8]
jl 0x53aee0
push dword [ebp + 0x14]
push 0
push dword [ebx + 0x1674]
push edx
push ebx
call fcn.0053a160
push dword [ebx + 0x11e8]
movsx eax, byte [ebx + 0x129e]
push esi
mov esi, dword [ebp - 0x23c8]
push eax
movsx eax, byte [ebx + 0x129d]
push eax
push esi
call fcn.00539d00
bsr eax, dword [esi + 0x1c]
mov ecx, dword [esi + 0x14]
add esp, 0x28
sub ecx, eax
mov eax, dword [ebp - 0x23d4]
dec ecx
mov dword [ebp - 0x23e0], ecx
jmp 0x53af3f
mov esi, edx
cmp dword [ebp + 0x1c], 0
jne 0x53afb1
test eax, eax
jne 0x53afb1
cmp ecx, dword [ebp + 0x18]
jg 0x53afcb
mov esi, dword [ebp - 0x23c8]
mov eax, dword [ebx + 0x11e0]
lea eax, [eax + eax*4]
add eax, dword [ebx + 0x11f0]
shl eax, 2
push eax
mov eax, dword [ebx + 0x11e8]
add eax, 0x703
lea eax, [ebx + eax*4]
push eax
lea eax, [ebx + 0x1c0c]
push eax
call sub.VCRUNTIME140.dll_memmove
add esp, 0xc
cmp dword [ebx + 0x1248], 0
je 0x53b467
mov eax, dword [ebp - 0x240c]
pop edi
pop esi
pop ebx
mov dword [eax], 0
xor eax, eax
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0054f742
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp - 0x23cc]
cmp eax, 6
je 0x53b3c0
mov esi, dword [ebp + 0x18]
cmp ecx, esi
jle 0x53b135
cmp dword [ebp - 0x23dc], 0
jne 0x53b032
cmp eax, 2
jl 0x53b032
movss xmm0, dword [ebp - 0x1010]
mulss xmm0, dword [0x60bd98]
comiss xmm0, dword [0x60bd98]
jbe 0x53affc
movss dword [ebp - 0x1010], xmm0
jmp 0x53b006
mov dword [ebp - 0x1010], 0x3fc00000
mov eax, dword [ebp - 0x23f0]
mov edx, dword [ebp - 0x23cc]
mov byte [ebx + 0x129e], 0
mov dword [ebp - 0x2404], 0
mov dword [ebp - 0x2408], 0xffffffff
movsx esi, ax
jmp 0x53b066
cmp dword [ebp - 0x23dc], 0
mov edx, dword [ebp - 0x23cc]
movsx eax, dx
mov dword [ebp - 0x2404], 1
mov esi, eax
mov dword [ebp - 0x23fc], ecx
mov dword [ebp - 0x23f4], eax
mov dword [ebp - 0x2408], edi
jne 0x53b1f7
xor ecx, ecx
mov dword [ebp - 0x2414], ecx
cmp dword [ebx + 0x11e4], ecx
jle 0x53b1f1
mov esi, dword [ebx + 0x11ec]
xor edx, edx
mov dword [ebp - 0x2410], edx
mov dword [ebp - 0x23ec], esi
nop
xor edi, edi
cmp edx, esi
jge 0x53b0c4
lea ecx, [ebx + 0x12a4]
add ecx, edx
sub esi, edx
movsx eax, byte [ecx]
lea ecx, [ecx + 1]
cdq
xor eax, edx
sub eax, edx
add edi, eax
sub esi, 1
jne 0x53b0a0
mov ecx, dword [ebp - 0x2414]
mov edx, dword [ebp - 0x2410]
mov esi, dword [ebp - 0x23ec]
cmp dword [ebp - 0x23d4], 0
je 0x53b0ec
lea eax, [ebp - 0x548]
lea eax, [eax + ecx*4]
cmp edi, dword [ebp + ecx*4 - 0x558]
jge 0x53b0e4
cmp dword [eax], 0
je 0x53b0ec
mov dword [eax], 1
jmp 0x53b0fe
mov eax, dword [ebp - 0x23cc]
mov dword [ebp + ecx*4 - 0x558], edi
mov word [ebp + ecx*2 - 0xc], ax
mov eax, dword [ebx + 0x11ec]
inc ecx
add edx, eax
mov dword [ebp - 0x2414], ecx
add esi, eax
mov dword [ebp - 0x2410], edx
mov dword [ebp - 0x23ec], esi
cmp ecx, dword [ebx + 0x11e4]
jl 0x53b090
mov eax, dword [ebp - 0x23f0]
movsx esi, ax
jmp 0x53b1eb
lea eax, [esi - 5]
cmp ecx, eax
jge 0x53af4e
movsx eax, dx
mov esi, eax
mov dword [ebp - 0x23dc], 1
mov dword [ebp - 0x2400], ecx
mov dword [ebp - 0x23f8], eax
cmp edi, dword [ebp - 0x23e8]
je 0x53b1f7
mov dword [ebp - 0x23e8], edi
mov edi, dword [ebp - 0x23c8]
cmp dword [edi + 0x18], 0x4fb
movups xmm0, xmmword [edi]
movups xmmword [ebp - 0x2430], xmm0
movups xmm0, xmmword [edi + 0x10]
movups xmmword [ebp - 0x518], xmm0
movups xmm0, xmmword [edi + 0x20]
movups xmmword [ebp - 0x528], xmm0
jbe 0x53b1b3
push 0x119
push str.D:UsersphiliDropboxDevelopmentlibcodecsopus_silk_floatencode_frame_FLP.c
push str.assertion_failed:_psRangeEnc__offs___1275
call fcn.00504d50
add esp, 0xc
push dword [edi + 0x18]
lea eax, [ebp - 0x508]
push dword [edi]
push eax
call sub.VCRUNTIME140.dll_memcpy
push 0x1100
lea eax, [ebx + 0x94]
push eax
lea eax, [ebp - 0x4690]
push eax
call sub.VCRUNTIME140.dll_memcpy
mov al, byte [ebx + 0x1c00]
add esp, 0x18
mov byte [ebp - 0x23cd], al
mov edx, dword [ebp - 0x23cc]
mov ecx, dword [ebp - 0x23e0]
mov eax, dword [ebp - 0x23dc]
test dword [ebp - 0x2404], eax
jne 0x53b263
mov eax, dword [ebp + 0x18]
cmp ecx, eax
jle 0x53b22d
mov eax, 0x4000
cmp dx, ax
jge 0x53b21e
lea eax, [edx + edx]
jmp 0x53b2c3
mov dword [ebp - 0x23cc], 0x7fff
jmp 0x53b2cc
sub ecx, eax
shl ecx, 7
mov eax, ecx
cdq
idiv dword [ebx + 0x11e8]
add eax, 0x800
push eax
call fcn.00534330
movzx ecx, ax
add esp, 4
sar eax, 0x10
imul eax, dword [ebp - 0x23cc]
imul ecx, esi
sar ecx, 0x10
add ecx, eax
movzx eax, cx
jmp 0x53b2c6
mov eax, dword [ebp - 0x23f8]
mov esi, dword [ebp - 0x23f4]
mov ecx, dword [ebp - 0x23fc]
sub esi, eax
sub ecx, dword [ebp - 0x2400]
movzx edi, ax
mov eax, dword [ebp + 0x18]
sub eax, dword [ebp - 0x2400]
imul eax, esi
sar esi, 2
cdq
idiv ecx
add eax, edi
movzx edx, ax
mov eax, dword [ebp - 0x23f8]
movsx ecx, dx
add eax, esi
mov dword [ebp - 0x23cc], edx
cmp ecx, eax
jle 0x53b2b1
lea eax, [esi + edi]
jmp 0x53b2c3
mov edx, dword [ebp - 0x23f4]
mov eax, edx
sub eax, esi
cmp ecx, eax
jge 0x53b2cc
mov eax, edx
sub eax, esi
movzx eax, ax
mov dword [ebp - 0x23cc], eax
mov edi, dword [ebx + 0x11e4]
xor esi, esi
test edi, edi
jle 0x53b33d
mov ebx, dword [ebp - 0x23cc]
nop
cmp dword [ebp + esi*4 - 0x548], 0
je 0x53b2f1
movzx eax, word [ebp + esi*2 - 0xc]
jmp 0x53b2f4
movzx eax, bx
mov edx, dword [ebp + esi*4 - 0xfec]
cwde
movzx ecx, dx
imul ecx, eax
sar edx, 0x10
imul eax, edx
sar ecx, 0x10
add eax, ecx
cmp eax, 0x7fffff
jle 0x53b31b
mov eax, 0x7fffff
jmp 0x53b328
cmp eax, 0xff800000
mov ecx, 0xff800000
cmovl eax, ecx
shl eax, 8
mov dword [ebp + esi*4 - 0x538], eax
inc esi
cmp esi, edi
jl 0x53b2e0
mov ebx, dword [ebp - 0x2420]
mov al, byte [ebp - 0xfdc]
lea ecx, [ebx + 0x1c00]
mov byte [ecx], al
lea esi, [ebx + 0x1280]
xor eax, eax
cmp dword [ebp + 0x14], 2
push edi
sete al
push eax
push ecx
lea eax, [ebp - 0x538]
push eax
push esi
call fcn.0053ef50
push dword [ebx + 0x11e4]
push esi
call fcn.0053ee70
mov ecx, dword [ebx + 0x11e4]
mov edi, eax
add esp, 0x1c
xor eax, eax
test ecx, ecx
jle 0x53b3ae
movss xmm1, dword [0x60ee70]
nop
movd xmm0, dword [ebp + eax*4 - 0x538]
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
movss dword [ebp + eax*4 - 0x12c4], xmm0
inc eax
cmp eax, ecx
jl 0x53b390
mov ecx, dword [ebp - 0x23d4]
mov esi, dword [ebp - 0x23c8]
inc ecx
jmp 0x53acd5
cmp dword [ebp - 0x23dc], 0
je 0x53af4e
cmp edi, dword [ebp - 0x23e8]
je 0x53b3de
cmp ecx, dword [ebp + 0x18]
jle 0x53af4e
movups xmm0, xmmword [ebp - 0x2430]
movups xmm1, xmmword [ebp - 0x528]
movups xmmword [esi], xmm0
movups xmm0, xmmword [ebp - 0x518]
movups xmmword [esi + 0x10], xmm0
psrldq xmm0, 8
movups xmmword [esi + 0x20], xmm1
movd esi, xmm0
cmp esi, 0x4fb
jbe 0x53b426
push 0xfb
push str.D:UsersphiliDropboxDevelopmentlibcodecsopus_silk_floatencode_frame_FLP.c
push str.assertion_failed:_sRangeEnc_copy2.offs___1275
call fcn.00504d50
add esp, 0xc
push esi
mov esi, dword [ebp - 0x23c8]
lea eax, [ebp - 0x508]
push eax
push dword [esi]
call sub.VCRUNTIME140.dll_memcpy
push 0x1100
lea eax, [ebp - 0x4690]
push eax
lea eax, [ebx + 0x94]
push eax
call sub.VCRUNTIME140.dll_memcpy
mov al, byte [ebp - 0x23cd]
add esp, 0x18
mov byte [ebx + 0x1c00], al
jmp 0x53af54
mov eax, dword [ebx + 0x11e4]
mov dword [ebx + 0x1238], 0
pop edi
mov eax, dword [ebp + eax*4 - 0x11e4]
mov dword [ebx + 0x11c0], eax
mov al, byte [ebx + 0x129d]
mov byte [ebx + 0x11bd], al
bsr eax, dword [esi + 0x1c]
mov ecx, dword [esi + 0x14]
sub ecx, eax
mov eax, dword [ebp - 0x240c]
add ecx, 6
sar ecx, 3
pop esi
mov dword [eax], ecx
xor eax, eax
mov ecx, dword [ebp - 4]
xor ecx, ebp
pop ebx
call fcn.0054f742
mov esp, ebp
pop ebp
ret