Function at 0x140833370
Capabilities:
Encrypt data using rc4 ksa

Disassembly:
mov r11, rsp
push rbp
push rsi
push rdi
push r15
lea rbp, [r11 - 0x188]
sub rsp, 0x268
mov rax, qword [0x140a7a0a8]
xor rax, rsp
mov qword [rbp + 0xf0], rax
movsd xmm4, qword [0x1408eaf50]
xorps xmm3, xmm3
movsd qword [rsp + 0x50], xmm3
mov r15, rcx
movsd qword [rsp + 0x20], xmm3
movsd qword [rsp + 0x50], xmm3
movsd qword [rsp + 0x20], xmm3
movsd qword [rsp + 0x20], xmm3
movsd xmm0, qword [rsp + 0x20]
comisd xmm4, xmm0
mov dword [rsp + 0x58], edx
mov qword [rsp + 0x60], rcx
movaps xmmword [r11 - 0x48], xmm6
movaps xmmword [r11 - 0x58], xmm7
jbe 0x1408334dc
movsd xmm7, qword [0x1408ea9b0]
movsd xmm5, qword [0x1408ea898]
movsd xmm6, qword [0x1408e4340]
movaps xmmword [r11 - 0x68], xmm8
movsd xmm8, qword [0x1408ea8b8]
movaps xmmword [r11 - 0x78], xmm9
movsd xmm9, qword [0x1408ea900]
movaps xmmword [r11 - 0x88], xmm10
movsd xmm10, qword [0x1408ea950]
nop dword [rax + rax]
movsd xmm2, qword [rsp + 0x20]
mulsd xmm2, xmm7
mulsd xmm2, qword [rsp + 0x20]
movsd xmm1, qword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x20]
mulsd xmm1, xmm0
movsd xmm0, qword [rsp + 0x20]
mulsd xmm0, xmm8
subsd xmm2, xmm1
mulsd xmm0, qword [rsp + 0x20]
addsd xmm0, xmm9
divsd xmm2, xmm0
addsd xmm2, qword [rsp + 0x50]
movsd qword [rsp + 0x50], xmm2
movsd xmm0, qword [rsp + 0x50]
comisd xmm0, xmm10
jbe 0x1408334a1
movsd xmm1, qword [rsp + 0x50]
movsd xmm0, qword [rsp + 0x20]
mulsd xmm0, xmm5
subsd xmm1, xmm0
movsd qword [rsp + 0x50], xmm1
movsd xmm0, qword [rsp + 0x20]
addsd xmm0, xmm6
movsd qword [rsp + 0x20], xmm0
movsd xmm1, qword [rsp + 0x20]
comisd xmm4, xmm1
ja 0x140833430
movaps xmm10, xmmword [rsp + 0x200]
movaps xmm9, xmmword [rsp + 0x210]
movaps xmm8, xmmword [rsp + 0x220]
movsd xmm0, qword [rsp + 0x50]
xor esi, esi
comisd xmm3, xmm0
mov qword [rsp + 0x2a0], rbx
mov qword [rsp + 0x250], r14
jbe 0x140833509
call fcn.1408a46b7
call 0x1408a4639
jmp 0x1408344d6
mov qword [rsp + 0x260], r12
lea rcx, [rsp + 0x70]
mov qword [rsp + 0x258], r13
mov eax, esi
mov byte [rcx], al
lea rcx, [rcx + 1]
inc eax
cmp eax, 0x100
jb 0x140833520
movsd xmm3, qword [0x1408eade8]
lea r14, [fcn.1408a46b7]
movsd xmm4, qword [0x1408e8e00]
mov r9d, esi
movsd xmm5, qword [0x1408eac18]
xor cl, cl
movsd xmm6, qword [0x1408e8970]
mov r10d, 0xff
movsd xmm7, qword [0x1408eaa40]
nop dword [rax]
mov r11d, 1
mov edi, esi
cmp r10d, r11d
jbe 0x140833590
nop dword [rax]
lea r11d, [r11*2 + 1]
cmp r11d, r10d
jb 0x140833580
nop dword [rax]
movzx eax, cl
movzx edx, byte [rsp + rax + 0x70]
mov eax, r9d
test r9d, r9d
je 0x1408335ea
sub eax, 1
je 0x1408335da
sub eax, 1
je 0x1408335ca
cmp eax, 1
je 0x1408335ba
lea eax, [r9 - 4]
movzx eax, byte [rax + r14]
jmp 0x1408335f5
movsd xmm0, qword [rsp + 0x50]
cvttsd2si rax, xmm0
shr eax, 0x18
jmp 0x1408335f5
movsd xmm0, qword [rsp + 0x50]
cvttsd2si rax, xmm0
shr eax, 0x10
jmp 0x1408335f5
movsd xmm0, qword [rsp + 0x50]
cvttsd2si rax, xmm0
shr eax, 8
jmp 0x1408335f5
movsd xmm0, qword [rsp + 0x50]
cvttsd2si rax, xmm0
add dl, al
lea r8d, [r9 + 1]
cmp r8d, 0x23
mov r9d, esi
cmovb r9d, r8d
lea eax, [rdx + 0x23]
movzx ecx, al
cmovb ecx, edx
inc edi
movzx ebx, cl
mov eax, ebx
and eax, r11d
cmp edi, 0xb
jbe 0x140833625
xor edx, edx
div r10d
mov eax, edx
movzx ecx, bl
cmp eax, r10d
ja 0x140833590
je 0x140833929
mov ecx, r10d
movzx edx, byte [rsp + rcx + 0x70]
xor dl, byte [rsp + rax + 0x70]
mov byte [rsp + rcx + 0x70], dl
movsd qword [rsp + 0x30], xmm3
movsd qword [rsp + 0x40], xmm4
movsd qword [rsp + 0x28], xmm5
movsd qword [rsp + 0x20], xmm6
movsd qword [rsp + 0x38], xmm7
movsd xmm1, qword [rsp + 0x38]
movsd xmm0, qword [rsp + 0x30]
mulsd xmm1, xmm0
movsd qword [rsp + 0x30], xmm1
movsd xmm2, qword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x38]
subsd xmm2, xmm0
movsd qword [rsp + 0x20], xmm2
movsd xmm1, qword [rsp + 0x38]
movsd xmm0, qword [rsp + 0x20]
addsd xmm1, xmm0
movsd qword [rsp + 0x20], xmm1
movsd xmm2, qword [rsp + 0x38]
movsd xmm0, qword [rsp + 0x30]
mulsd xmm2, xmm0
movsd qword [rsp + 0x30], xmm2
movsd xmm1, qword [rsp + 0x38]
movsd xmm0, qword [rsp + 0x20]
mulsd xmm1, xmm0
movsd qword [rsp + 0x20], xmm1
movsd xmm1, qword [rsp + 0x38]
movsd xmm0, qword [rsp + 0x30]
comisd xmm1, xmm0
jbe 0x1408338ae
movsd xmm1, qword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x38]
subsd xmm1, xmm0
movsd qword [rsp + 0x20], xmm1
movsd xmm2, qword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x28]
mulsd xmm2, xmm0
movsd qword [rsp + 0x28], xmm2
movsd xmm1, qword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x28]
addsd xmm1, xmm0
movsd qword [rsp + 0x28], xmm1
movsd xmm2, qword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x38]
divsd xmm2, xmm0
movsd qword [rsp + 0x20], xmm2
movsd xmm1, qword [rsp + 0x38]
movsd xmm0, qword [rsp + 0x30]
mulsd xmm1, xmm0
movsd qword [rsp + 0x38], xmm1
movsd xmm2, qword [rsp + 0x38]
movsd xmm0, qword [rsp + 0x40]
subsd xmm2, xmm0
movsd qword [rsp + 0x38], xmm2
movsd xmm1, qword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x30]
addsd xmm1, xmm0
movsd qword [rsp + 0x20], xmm1
movsd xmm2, qword [rsp + 0x30]
movsd xmm0, qword [rsp + 0x28]
subsd xmm2, xmm0
movsd qword [rsp + 0x30], xmm2
movsd xmm1, qword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x40]
mulsd xmm1, xmm0
movsd qword [rsp + 0x40], xmm1
movsd xmm2, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x38]
subsd xmm2, xmm0
movsd qword [rsp + 0x28], xmm2
movsd xmm1, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x38]
comisd xmm1, xmm0
movsd xmm1, qword [rsp + 0x38]
jbe 0x14083384a
movsd xmm0, qword [rsp + 0x30]
subsd xmm1, xmm0
movsd qword [rsp + 0x38], xmm1
movsd xmm2, qword [rsp + 0x38]
movsd xmm0, qword [rsp + 0x20]
addsd xmm2, xmm0
movsd qword [rsp + 0x20], xmm2
movsd xmm1, qword [rsp + 0x40]
movsd xmm0, qword [rsp + 0x28]
divsd xmm1, xmm0
movsd qword [rsp + 0x40], xmm1
movsd xmm2, qword [rsp + 0x38]
movsd xmm0, qword [rsp + 0x30]
addsd xmm2, xmm0
movsd qword [rsp + 0x38], xmm2
movsd xmm1, qword [rsp + 0x30]
movsd xmm0, qword [rsp + 0x40]
subsd xmm1, xmm0
movsd qword [rsp + 0x30], xmm1
jmp 0x140833920
movsd xmm0, qword [rsp + 0x20]
mulsd xmm1, xmm0
movsd qword [rsp + 0x20], xmm1
movsd xmm2, qword [rsp + 0x30]
movsd xmm0, qword [rsp + 0x40]
divsd xmm2, xmm0
movsd qword [rsp + 0x30], xmm2
movsd xmm1, qword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x28]
mulsd xmm1, xmm0
movsd qword [rsp + 0x28], xmm1
movsd xmm2, qword [rsp + 0x30]
movsd xmm0, qword [rsp + 0x40]
subsd xmm2, xmm0
movsd qword [rsp + 0x30], xmm2
movsd xmm1, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x20]
divsd xmm1, xmm0
jmp 0x14083391a
movsd xmm1, qword [rsp + 0x40]
movsd xmm0, qword [rsp + 0x30]
xor byte [rsp + rax + 0x70], dl
mulsd xmm1, xmm0
movsd qword [rsp + 0x30], xmm1
movsd xmm2, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x40]
mulsd xmm2, xmm0
movsd qword [rsp + 0x40], xmm2
movsd xmm1, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x40]
mulsd xmm1, xmm0
movsd qword [rsp + 0x40], xmm1
movsd xmm2, qword [rsp + 0x38]
movsd xmm0, qword [rsp + 0x20]
mulsd xmm2, xmm0
movsd qword [rsp + 0x20], xmm2
movsd xmm1, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x20]
subsd xmm1, xmm0
movsd qword [rsp + 0x28], xmm1
movzx eax, byte [rsp + rax + 0x70]
xor byte [rsp + rcx + 0x70], al
movzx ecx, bl
add r10d, 0xffffffff
jne 0x140833570
movzx eax, byte [rsp + 0x71]
lea rsi, [0x1408a4639]
movzx edx, byte [rsp + 0x77]
movzx r9d, byte [rsp + rbx + 0x70]
movzx r12d, byte [rsp + 0x73]
add r12b, byte [rsp + rax + 0x70]
lea r15d, [rax + 1]
movzx r14d, byte [rsp + 0x75]
movzx edi, byte [rsp + r9 + 0x70]
movzx ecx, byte [rsi + 1]
movzx r10d, byte [rsi]
sub cl, 0x56
movzx r11d, byte [rsi + 2]
sub r10b, 0x43
movsd xmm0, qword [0x1408eaed0]
movsd xmm1, qword [0x1408eadd8]
movzx r8d, r12b
shl r10b, 4
or r10b, cl
movzx ecx, r15b
movzx eax, byte [rsp + r8 + 0x70]
mov byte [rsp + r9 + 0x70], al
movzx eax, byte [rsp + rdx + 0x70]
mov byte [rsp + r8 + 0x70], al
movzx eax, byte [rsp + rcx + 0x70]
mov byte [rsp + rdx + 0x70], al
mov byte [rsp + rcx + 0x70], dil
add r14b, byte [rsp + rdi + 0x70]
movzx eax, r14b
movzx ecx, byte [rsp + rax + 0x70]
movzx eax, byte [rsp + rdx + 0x70]
add rcx, rax
movzx eax, byte [rsp + r9 + 0x70]
add rcx, rax
movzx eax, cl
movzx ecx, byte [rsp + r8 + 0x70]
add rcx, rdi
movzx edx, byte [rsp + rax + 0x70]
movzx eax, cl
movzx edx, byte [rsp + rdx + 0x70]
xor dl, byte [rsp + rax + 0x70]
movsd qword [rsp + 0x30], xmm0
xor dl, r10b
movsd xmm0, qword [0x1408e8c18]
movsd qword [rsp + 0x20], xmm1
movsd xmm1, qword [0x1408eaad8]
movsd qword [rsp + 0x28], xmm0
movsd qword [rsp + 0x38], xmm1
movsd xmm2, qword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x38]
subsd xmm2, xmm0
movsd qword [rsp + 0x20], xmm2
movsd xmm1, qword [rsp + 0x38]
movsd xmm0, qword [rsp + 0x30]
mulsd xmm1, xmm0
movsd qword [rsp + 0x30], xmm1
movsd xmm2, qword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x38]
subsd xmm2, xmm0
movsd qword [rsp + 0x20], xmm2
movsd xmm1, qword [rsp + 0x30]
movsd xmm0, qword [rsp + 0x38]
subsd xmm1, xmm0
movsd qword [rsp + 0x30], xmm1
movsd xmm1, qword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x30]
comisd xmm1, xmm0
jbe 0x140833c0c
movsd xmm1, qword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x30]
addsd xmm1, xmm0
movsd qword [rsp + 0x30], xmm1
movsd xmm2, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x20]
addsd xmm2, xmm0
movsd qword [rsp + 0x20], xmm2
movsd xmm1, qword [rsp + 0x38]
movsd xmm0, qword [rsp + 0x28]
addsd xmm1, xmm0
movsd qword [rsp + 0x28], xmm1
movsd xmm2, qword [rsp + 0x38]
movsd xmm0, qword [rsp + 0x30]
mulsd xmm2, xmm0
movsd qword [rsp + 0x38], xmm2
movsd xmm1, qword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x38]
subsd xmm1, xmm0
movsd qword [rsp + 0x20], xmm1
movsd xmm2, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x30]
addsd xmm2, xmm0
movsd qword [rsp + 0x28], xmm2
movsd xmm1, qword [rsp + 0x38]
movsd xmm0, qword [rsp + 0x20]
addsd xmm1, xmm0
movsd qword [rsp + 0x20], xmm1
movsd xmm2, qword [rsp + 0x38]
movsd xmm0, qword [rsp + 0x20]
addsd xmm2, xmm0
movsd qword [rsp + 0x38], xmm2
movsd xmm1, qword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x38]
comisd xmm1, xmm0
jbe 0x140833bb2
movsd xmm1, qword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x28]
subsd xmm1, xmm0
movsd qword [rsp + 0x20], xmm1
movsd xmm2, qword [rsp + 0x38]
movsd xmm0, qword [rsp + 0x30]
addsd xmm2, xmm0
movsd qword [rsp + 0x38], xmm2
movsd xmm1, qword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x28]
subsd xmm1, xmm0
movsd qword [rsp + 0x20], xmm1
movsd xmm2, qword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x30]
mulsd xmm2, xmm0
movsd qword [rsp + 0x30], xmm2
jmp 0x140833c64
movsd xmm1, qword [rsp + 0x38]
movsd xmm0, qword [rsp + 0x20]
divsd xmm1, xmm0
movsd qword [rsp + 0x38], xmm1
movsd xmm2, qword [rsp + 0x30]
movsd xmm0, qword [rsp + 0x28]
divsd xmm2, xmm0
movsd qword [rsp + 0x30], xmm2
movsd xmm1, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x30]
subsd xmm1, xmm0
movsd qword [rsp + 0x28], xmm1
movsd xmm2, qword [rsp + 0x30]
movsd xmm0, qword [rsp + 0x28]
divsd xmm2, xmm0
movsd qword [rsp + 0x30], xmm2
jmp 0x140833c64
movsd xmm1, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x30]
addsd xmm1, xmm0
movsd qword [rsp + 0x28], xmm1
movsd xmm2, qword [rsp + 0x38]
movsd xmm0, qword [rsp + 0x20]
addsd xmm2, xmm0
movsd qword [rsp + 0x38], xmm2
movsd xmm1, qword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x38]
subsd xmm1, xmm0
movsd qword [rsp + 0x20], xmm1
movsd xmm2, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x30]
subsd xmm2, xmm0
movsd qword [rsp + 0x28], xmm2
movzx ecx, byte [rsi + 3]
add r12b, dil
movzx r13d, byte [rsi + 4]
sub cl, 0x56
movss xmm0, dword [0x1408eb200]
sub r11b, 0x43
movss xmm1, dword [0x1408eb190]
inc r15b
movzx r8d, r12b
mov edi, 2
movzx edx, dl
movzx r9d, r10b
shl r11b, 4
movzx eax, byte [rsp + r8 + 0x70]
or r11b, cl
movzx ecx, r15b
movzx ebx, byte [rsp + r9 + 0x70]
mov byte [rsp + r9 + 0x70], al
movzx eax, byte [rsp + rdx + 0x70]
mov byte [rsp + r8 + 0x70], al
movzx eax, byte [rsp + rcx + 0x70]
mov byte [rsp + rdx + 0x70], al
mov byte [rsp + rcx + 0x70], bl
add r14b, byte [rsp + rbx + 0x70]
movzx eax, r14b
movzx ecx, byte [rsp + rax + 0x70]
movzx eax, byte [rsp + rdx + 0x70]
add rcx, rax
movzx eax, byte [rsp + r9 + 0x70]
add rcx, rax
movzx eax, cl
movzx ecx, byte [rsp + r8 + 0x70]
add rcx, rbx
movzx edx, byte [rsp + rax + 0x70]
movzx eax, cl
movzx ecx, byte [rsi + 5]
movzx r8d, byte [rsp + rdx + 0x70]
xor r8b, byte [rsp + rax + 0x70]
xor r8b, r11b
movsx eax, r8b
mov word [rbp + 0x70], ax
movss dword [rsp + 0x38], xmm0
movss xmm0, dword [0x1408eb108]
movss dword [rsp + 0x40], xmm1
movss xmm1, dword [0x1408eb074]
movss dword [rsp + 0x28], xmm0
movss xmm0, dword [0x1408eafe0]
movss dword [rsp + 0x30], xmm1
movss dword [rsp + 0x20], xmm0
movss xmm1, dword [rsp + 0x20]
movss xmm0, dword [rsp + 0x40]
addss xmm1, xmm0
movss dword [rsp + 0x40], xmm1
movss xmm2, dword [rsp + 0x40]
movss xmm0, dword [rsp + 0x20]
subss xmm2, xmm0
movss dword [rsp + 0x40], xmm2
movss xmm1, dword [rsp + 0x20]
movss xmm0, dword [rsp + 0x40]
mulss xmm1, xmm0
movss dword [rsp + 0x40], xmm1
movss xmm2, dword [rsp + 0x20]
movss xmm0, dword [rsp + 0x40]
mulss xmm2, xmm0
movss dword [rsp + 0x40], xmm2
movss xmm1, dword [rsp + 0x20]
movss xmm0, dword [rsp + 0x28]
mulss xmm1, xmm0
movss dword [rsp + 0x28], xmm1
movss xmm1, dword [rsp + 0x40]
movss xmm0, dword [rsp + 0x20]
comiss xmm0, xmm1
movss xmm1, dword [rsp + 0x28]
jbe 0x140833f81
movss xmm0, dword [rsp + 0x38]
mulss xmm1, xmm0
movss dword [rsp + 0x38], xmm1
movss xmm2, dword [rsp + 0x20]
movss xmm0, dword [rsp + 0x40]
divss xmm2, xmm0
movss dword [rsp + 0x20], xmm2
movss xmm1, dword [rsp + 0x20]
movss xmm0, dword [rsp + 0x40]
divss xmm1, xmm0
movss dword [rsp + 0x20], xmm1
movss xmm2, dword [rsp + 0x28]
movss xmm0, dword [rsp + 0x20]
divss xmm2, xmm0
movss dword [rsp + 0x28], xmm2
movss xmm1, dword [rsp + 0x28]
movss xmm0, dword [rsp + 0x38]
mulss xmm1, xmm0
movss dword [rsp + 0x38], xmm1
movss xmm2, dword [rsp + 0x38]
movss xmm0, dword [rsp + 0x28]
divss xmm2, xmm0
movss dword [rsp + 0x38], xmm2
movss xmm1, dword [rsp + 0x30]
movss xmm0, dword [rsp + 0x38]
divss xmm1, xmm0
movss dword [rsp + 0x30], xmm1
movss xmm2, dword [rsp + 0x40]
movss xmm0, dword [rsp + 0x30]
subss xmm2, xmm0
movss dword [rsp + 0x40], xmm2
movss xmm1, dword [rsp + 0x38]
movss xmm0, dword [rsp + 0x28]
subss xmm1, xmm0
movss dword [rsp + 0x38], xmm1
movss xmm2, dword [rsp + 0x30]
movss xmm0, dword [rsp + 0x38]
divss xmm2, xmm0
movss dword [rsp + 0x30], xmm2
movss xmm1, dword [rsp + 0x38]
movss xmm0, dword [rsp + 0x28]
comiss xmm1, xmm0
jbe 0x140833f2d
movss xmm1, dword [rsp + 0x28]
movss xmm0, dword [rsp + 0x30]
subss xmm1, xmm0
movss dword [rsp + 0x28], xmm1
movss xmm2, dword [rsp + 0x30]
movss xmm0, dword [rsp + 0x28]
addss xmm2, xmm0
movss dword [rsp + 0x28], xmm2
movss xmm1, dword [rsp + 0x40]
movss xmm0, dword [rsp + 0x28]
subss xmm1, xmm0
movss dword [rsp + 0x40], xmm1
movss xmm2, dword [rsp + 0x40]
movss xmm0, dword [rsp + 0x38]
mulss xmm2, xmm0
movss dword [rsp + 0x38], xmm2
movss xmm1, dword [rsp + 0x28]
movss xmm0, dword [rsp + 0x30]
divss xmm1, xmm0
jmp 0x140833fe3
movss xmm1, dword [rsp + 0x20]
movss xmm0, dword [rsp + 0x30]
mulss xmm1, xmm0
movss dword [rsp + 0x30], xmm1
movss xmm2, dword [rsp + 0x30]
movss xmm0, dword [rsp + 0x20]
divss xmm2, xmm0
movss dword [rsp + 0x30], xmm2
movss xmm1, dword [rsp + 0x40]
movss xmm0, dword [rsp + 0x28]
divss xmm1, xmm0
movss dword [rsp + 0x40], xmm1
movss xmm2, dword [rsp + 0x38]
movss xmm0, dword [rsp + 0x40]
subss xmm2, xmm0
jmp 0x140833f12
movss xmm0, dword [rsp + 0x40]
mulss xmm1, xmm0
movss dword [rsp + 0x40], xmm1
movss xmm2, dword [rsp + 0x38]
movss xmm0, dword [rsp + 0x40]
subss xmm2, xmm0
movss dword [rsp + 0x38], xmm2
movss xmm1, dword [rsp + 0x20]
movss xmm0, dword [rsp + 0x30]
addss xmm1, xmm0
movss dword [rsp + 0x30], xmm1
movss xmm2, dword [rsp + 0x20]
movss xmm0, dword [rsp + 0x30]
addss xmm2, xmm0
movss dword [rsp + 0x30], xmm2
movss xmm1, dword [rsp + 0x30]
movss xmm0, dword [rsp + 0x28]
mulss xmm1, xmm0
sub cl, 0x56
movzx r10d, r11b
add r13b, 0xd
movzx r8d, r8b
add r12b, bl
shl r13b, 4
or r13b, cl
movzx r9d, r12b
movzx edx, byte [rsp + r10 + 0x70]
inc r15b
movzx ecx, r15b
mov byte [rsp + 0x48], dl
movzx eax, byte [rsp + r9 + 0x70]
mov byte [rsp + r10 + 0x70], al
movzx eax, byte [rsp + r8 + 0x70]
mov byte [rsp + r9 + 0x70], al
movzx eax, byte [rsp + rcx + 0x70]
mov byte [rsp + r8 + 0x70], al
mov byte [rsp + rcx + 0x70], dl
add r14b, byte [rsp + rdx + 0x70]
movzx eax, r14b
movss dword [rsp + 0x28], xmm1
movzx ecx, byte [rsp + rax + 0x70]
movzx eax, byte [rsp + r8 + 0x70]
add rcx, rax
movzx eax, byte [rsp + r10 + 0x70]
add rcx, rax
movzx eax, cl
movzx ecx, byte [rsp + rax + 0x70]
movzx eax, byte [rsp + r9 + 0x70]
add rax, rdx
movzx eax, al
movzx edx, byte [rsp + rcx + 0x70]
xor dl, byte [rsp + rax + 0x70]
xor dl, r13b
movsx eax, dl
mov word [rbp + 0x72], ax
mov eax, 4
lea esi, [rax + 0x1a]
nop word [rax + rax]
add r12b, byte [rsp + 0x48]
lea rcx, [0x1408a4639]
add eax, 2
movzx r8d, dl
mov dword [rsp + 0x38], eax
inc r15b
cdqe
movzx r10d, r13b
movzx r9d, r12b
mov dword [rsp + 0x20], edi
movzx r11d, byte [rax + rcx + 1]
movzx eax, byte [rax + rcx]
sub r11b, 0x56
movzx ebx, byte [rsp + r10 + 0x70]
sub al, 3
shl al, 4
or r11b, al
movzx ecx, r15b
movzx eax, byte [rsp + r9 + 0x70]
movzx r13d, r11b
mov byte [rsp + r10 + 0x70], al
movzx eax, byte [rsp + r8 + 0x70]
mov byte [rsp + r9 + 0x70], al
movzx eax, byte [rsp + rcx + 0x70]
mov byte [rsp + r8 + 0x70], al
mov byte [rsp + rcx + 0x70], bl
add r14b, byte [rsp + rbx + 0x70]
movzx eax, r14b
movzx ecx, byte [rsp + rax + 0x70]
movzx eax, byte [rsp + r8 + 0x70]
add rcx, rax
movzx eax, byte [rsp + r10 + 0x70]
add rcx, rax
movzx eax, cl
movzx ecx, byte [rsp + rax + 0x70]
movzx eax, byte [rsp + r9 + 0x70]
add rax, rbx
movzx eax, al
movzx edx, byte [rsp + rcx + 0x70]
xor dl, byte [rsp + rax + 0x70]
xor dl, r11b
add edi, 1
je 0x140834151
mov eax, dword [rsp + 0x20]
movsx ecx, dl
mov word [rbp + rax*2 + 0x70], cx
mov eax, dword [rsp + 0x38]
mov byte [rsp + 0x48], bl
sub rsi, 1
jne 0x140834090
lea ecx, [rdi + 1]
mov esi, 0
cmp ecx, 0x40
jge 0x1408344ba
movss xmm3, dword [0x1408eb23c]
lea esi, [rdi + rdi]
movss xmm4, dword [0x1408ea624]
mov r9d, 0x40
movss xmm5, dword [0x1408ea4cc]
sub r9d, ecx
movss xmm6, dword [0x1408ea370]
lea rcx, [0x1408a4639]
movzx r11d, r13b
add esi, 2
movzx edx, dl
movsxd rax, esi
add r12b, bl
movzx r13d, r12b
inc r15b
movzx r10d, byte [rsp + r11 + 0x70]
mov dword [rsp + 0x38], edi
inc edi
movzx r8d, byte [rax + rcx + 1]
movzx eax, byte [rax + rcx]
sub r8b, 0x56
sub al, 3
movzx ecx, r15b
shl al, 4
or r8b, al
movzx eax, byte [rsp + r13 + 0x70]
mov byte [rsp + r11 + 0x70], al
movzx eax, byte [rsp + rdx + 0x70]
mov byte [rsp + r13 + 0x70], al
movzx eax, byte [rsp + rcx + 0x70]
mov byte [rsp + rdx + 0x70], al
movss dword [rsp + 0x20], xmm3
movss dword [rsp + 0x40], xmm4
movss dword [rsp + 0x30], xmm5
movss dword [rsp + 0x28], xmm6
movss xmm1, dword [rsp + 0x28]
movss xmm0, dword [rsp + 0x30]
mulss xmm1, xmm0
movss dword [rsp + 0x30], xmm1
movss xmm2, dword [rsp + 0x28]
movss xmm0, dword [rsp + 0x30]
mulss xmm2, xmm0
movss dword [rsp + 0x30], xmm2
movss xmm1, dword [rsp + 0x28]
movss xmm0, dword [rsp + 0x30]
addss xmm1, xmm0
movss dword [rsp + 0x30], xmm1
movss xmm2, dword [rsp + 0x28]
movss xmm0, dword [rsp + 0x40]
mulss xmm2, xmm0
movss dword [rsp + 0x40], xmm2
movss xmm1, dword [rsp + 0x28]
movss xmm0, dword [rsp + 0x30]
comiss xmm1, xmm0
movss xmm1, dword [rsp + 0x30]
jbe 0x1408343ff
movss xmm0, dword [rsp + 0x20]
addss xmm1, xmm0
movss dword [rsp + 0x20], xmm1
movss xmm2, dword [rsp + 0x30]
movss xmm0, dword [rsp + 0x20]
mulss xmm2, xmm0
movss dword [rsp + 0x20], xmm2
movss xmm1, dword [rsp + 0x28]
movss xmm0, dword [rsp + 0x40]
subss xmm1, xmm0
movss dword [rsp + 0x28], xmm1
movss xmm2, dword [rsp + 0x28]
movss xmm0, dword [rsp + 0x40]
divss xmm2, xmm0
movss dword [rsp + 0x28], xmm2
movss xmm1, dword [rsp + 0x40]
movss xmm0, dword [rsp + 0x30]
subss xmm1, xmm0
movss dword [rsp + 0x40], xmm1
movss xmm2, dword [rsp + 0x28]
movss xmm0, dword [rsp + 0x20]
addss xmm2, xmm0
movss dword [rsp + 0x28], xmm2
movss xmm1, dword [rsp + 0x28]
movss xmm0, dword [rsp + 0x20]
divss xmm1, xmm0
movss dword [rsp + 0x28], xmm1
movss xmm2, dword [rsp + 0x40]
movss xmm0, dword [rsp + 0x20]
addss xmm2, xmm0
movss dword [rsp + 0x20], xmm2
movss xmm1, dword [rsp + 0x40]
movss xmm0, dword [rsp + 0x28]
comiss xmm1, xmm0
jbe 0x1408343a5
movss xmm1, dword [rsp + 0x28]
movss xmm0, dword [rsp + 0x30]
mulss xmm1, xmm0
movss dword [rsp + 0x30], xmm1
movss xmm2, dword [rsp + 0x20]
movss xmm0, dword [rsp + 0x40]
subss xmm2, xmm0
movss dword [rsp + 0x20], xmm2
movss xmm1, dword [rsp + 0x28]
movss xmm0, dword [rsp + 0x20]
mulss xmm1, xmm0
movss dword [rsp + 0x28], xmm1
movss xmm2, dword [rsp + 0x30]
movss xmm0, dword [rsp + 0x40]
mulss xmm2, xmm0
movss dword [rsp + 0x40], xmm2
jmp 0x140834456
movss xmm1, dword [rsp + 0x40]
movss xmm0, dword [rsp + 0x30]
subss xmm1, xmm0
movss dword [rsp + 0x40], xmm1
movss xmm2, dword [rsp + 0x30]
movss xmm0, dword [rsp + 0x40]
addss xmm2, xmm0
movss dword [rsp + 0x40], xmm2
movss xmm1, dword [rsp + 0x30]
movss xmm0, dword [rsp + 0x28]
divss xmm1, xmm0
movss dword [rsp + 0x30], xmm1
movss xmm2, dword [rsp + 0x28]
movss xmm0, dword [rsp + 0x20]
addss xmm2, xmm0
movss dword [rsp + 0x28], xmm2
jmp 0x140834456
movss xmm0, dword [rsp + 0x40]
mulss xmm1, xmm0
movss dword [rsp + 0x40], xmm1
movss xmm2, dword [rsp + 0x28]
movss xmm0, dword [rsp + 0x20]
mulss xmm2, xmm0
mov byte [rsp + rcx + 0x70], r10b
movss dword [rsp + 0x28], xmm2
movss xmm1, dword [rsp + 0x30]
movss xmm0, dword [rsp + 0x40]
addss xmm1, xmm0
movss dword [rsp + 0x40], xmm1
movss xmm2, dword [rsp + 0x20]
movss xmm0, dword [rsp + 0x40]
subss xmm2, xmm0
movss dword [rsp + 0x20], xmm2
movzx ebx, byte [rsp + rcx + 0x70]
add r14b, byte [rsp + r10 + 0x70]
movzx eax, r14b
movzx ecx, byte [rsp + rax + 0x70]
movzx eax, byte [rsp + r11 + 0x70]
add rcx, rax
movzx eax, byte [rsp + rdx + 0x70]
add rcx, rax
movzx eax, cl
movzx ecx, byte [rsp + rax + 0x70]
movzx eax, byte [rsp + r13 + 0x70]
movzx r13d, r8b
add rax, rbx
movzx eax, al
movzx edx, byte [rsp + rcx + 0x70]
xor dl, byte [rsp + rax + 0x70]
xor dl, r8b
test edi, edi
je 0x1408344ae
mov eax, dword [rsp + 0x38]
movsx ecx, dl
mov word [rbp + rax*2 + 0x70], cx
sub r9, 1
jne 0x1408341a0
xor esi, esi
mov r15, qword [rsp + 0x60]
mov r13, qword [rsp + 0x258]
mov r12, qword [rsp + 0x260]
mov word [rbp + 0xec], si
movsxd rdi, dword [rsp + 0x58]
movaps xmm7, xmmword [rsp + 0x230]
movaps xmm6, xmmword [rsp + 0x240]
test rdi, rdi
jle 0x140834535
mov rbx, rsi
lea rcx, [rbp + 0x70]
mov rax, 0xffffffffffffffff
nop
cmp word [rcx + rax*2 + 2], 0
lea rax, [rax + 1]
jne 0x140834500
lea r14, [rax - 1]
lea rcx, [rsp + 0x5c]
call fcn.1408b57a4
mov eax, dword [rsp + 0x5c]
xor edx, edx
div r14
movzx eax, word [rbp + rdx*2 + 0x70]
mov word [r15 + rbx*2], ax
inc rbx
cmp rbx, rdi
jl 0x140834510
mov r14, qword [rsp + 0x250]
mov rbx, qword [rsp + 0x2a0]
mov word [r15 + rdi*2], si
mov rcx, qword [rbp + 0xf0]
xor rcx, rsp
call fcn.1408ac9a0
add rsp, 0x268
pop r15
pop rdi
pop rsi
pop rbp
ret