Function at 0x140856960
Capabilities:
Encrypt data using rc4 ksa

Disassembly:
mov r11, rsp
push rbp
push rbx
lea rbp, [r11 - 0x128]
sub rsp, 0x218
mov rax, qword [0x140a630a8]
xor rax, rsp
mov qword [rbp + 0xa8], rax
movsd xmm4, qword [0x1408e7368]
xorps xmm3, xmm3
movsd qword [rsp + 0x28], xmm3
mov rbx, rcx
movsd qword [rsp + 0x30], xmm3
mov r10d, 1
movsd qword [rsp + 0x28], xmm3
movsd qword [rsp + 0x30], xmm3
movaps xmmword [r11 - 0x38], xmm6
movsd qword [rsp + 0x30], xmm3
movsd xmm0, qword [rsp + 0x30]
comisd xmm4, xmm0
mov qword [rsp + 0x70], rcx
movaps xmmword [r11 - 0x48], xmm7
movaps xmmword [r11 - 0x58], xmm8
jbe 0x140856ac3
movsd xmm7, qword [0x1408e66d8]
movsd xmm8, qword [0x1408c9c50]
movsd xmm5, qword [0x1408e6478]
movsd xmm6, qword [0x1408c83a0]
movaps xmmword [r11 - 0x68], xmm9
movsd xmm9, qword [0x1408e6538]
movaps xmmword [r11 - 0x78], xmm10
movsd xmm10, qword [0x1408e6610]
nop word [rax + rax]
movsd xmm2, qword [rsp + 0x30]
mulsd xmm2, xmm7
mulsd xmm2, qword [rsp + 0x30]
movsd xmm1, qword [rsp + 0x30]
movsd xmm0, qword [rsp + 0x30]
mulsd xmm1, xmm0
movsd xmm0, qword [rsp + 0x30]
mulsd xmm0, xmm8
subsd xmm2, xmm1
mulsd xmm0, qword [rsp + 0x30]
addsd xmm0, xmm9
divsd xmm2, xmm0
addsd xmm2, qword [rsp + 0x28]
movsd qword [rsp + 0x28], xmm2
movsd xmm0, qword [rsp + 0x28]
comisd xmm0, xmm10
jbe 0x140856a91
movsd xmm1, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x30]
mulsd xmm0, xmm5
subsd xmm1, xmm0
movsd qword [rsp + 0x28], xmm1
movsd xmm0, qword [rsp + 0x30]
addsd xmm0, xmm6
movsd qword [rsp + 0x30], xmm0
movsd xmm1, qword [rsp + 0x30]
comisd xmm4, xmm1
ja 0x140856a20
movaps xmm10, xmmword [rsp + 0x1b0]
movaps xmm9, xmmword [rsp + 0x1c0]
movsd xmm0, qword [rsp + 0x28]
comisd xmm3, xmm0
jbe 0x140856ade
call fcn.1408898ba
call fcn.14088986e
jmp 0x140857fd9
mov qword [rsp + 0x238], rsi
lea rcx, [rbp - 0x80]
mov qword [rsp + 0x240], rdi
xor eax, eax
mov qword [rsp + 0x248], r12
mov qword [rsp + 0x210], r13
mov qword [rsp + 0x208], r14
mov qword [rsp + 0x200], r15
nop dword [rax]
nop dword [rax + rax]
mov byte [rcx], al
lea rcx, [rcx + 1]
inc eax
cmp eax, 0x100
jb 0x140856b20
movss xmm3, dword [0x1408e78b8]
lea rsi, [fcn.1408898ba]
movss xmm4, dword [0x1408e77fc]
xor r9d, r9d
movss xmm5, dword [0x1408e3934]
xor cl, cl
movss xmm6, dword [0x1408e7644]
mov r11d, 0xff
movss xmm7, dword [0x1408e1b3c]
movss xmm8, dword [0x1408e7458]
movss dword [rsp + 0x20], xmm3
xor edi, edi
movss dword [rsp + 0x60], xmm4
movss dword [rsp + 0x58], xmm5
movss dword [rsp + 0x50], xmm6
movss dword [rsp + 0x48], xmm7
movss dword [rsp + 0x40], xmm8
movss xmm1, dword [rsp + 0x40]
movss xmm0, dword [rsp + 0x58]
addss xmm1, xmm0
movss dword [rsp + 0x58], xmm1
movss xmm2, dword [rsp + 0x40]
movss xmm0, dword [rsp + 0x58]
addss xmm2, xmm0
movss dword [rsp + 0x58], xmm2
movss xmm1, dword [rsp + 0x58]
movss xmm0, dword [rsp + 0x40]
subss xmm1, xmm0
movss dword [rsp + 0x58], xmm1
movss xmm2, dword [rsp + 0x48]
movss xmm0, dword [rsp + 0x40]
subss xmm2, xmm0
movss dword [rsp + 0x48], xmm2
movss xmm1, dword [rsp + 0x40]
movss xmm0, dword [rsp + 0x20]
mulss xmm1, xmm0
movss dword [rsp + 0x20], xmm1
movss xmm2, dword [rsp + 0x40]
movss xmm0, dword [rsp + 0x60]
mulss xmm2, xmm0
movss dword [rsp + 0x60], xmm2
movss xmm1, dword [rsp + 0x20]
movss xmm0, dword [rsp + 0x48]
comiss xmm1, xmm0
jbe 0x140856cb2
movss xmm1, dword [rsp + 0x40]
lea r10d, [rdi + 1]
movss xmm0, dword [rsp + 0x50]
addss xmm1, xmm0
movss dword [rsp + 0x50], xmm1
movss xmm2, dword [rsp + 0x40]
movss xmm0, dword [rsp + 0x60]
subss xmm2, xmm0
movss dword [rsp + 0x40], xmm2
movss xmm1, dword [rsp + 0x40]
movss xmm0, dword [rsp + 0x50]
addss xmm1, xmm0
movss dword [rsp + 0x50], xmm1
movss xmm2, dword [rsp + 0x50]
movss xmm0, dword [rsp + 0x60]
addss xmm2, xmm0
movss dword [rsp + 0x60], xmm2
movss xmm1, dword [rsp + 0x40]
movss xmm0, dword [rsp + 0x50]
addss xmm1, xmm0
movss dword [rsp + 0x50], xmm1
movss xmm2, dword [rsp + 0x48]
movss xmm0, dword [rsp + 0x20]
jmp 0x140856d2c
movss xmm1, dword [rsp + 0x60]
movss xmm0, dword [rsp + 0x58]
divss xmm1, xmm0
movss dword [rsp + 0x60], xmm1
movss xmm2, dword [rsp + 0x48]
movss xmm0, dword [rsp + 0x40]
divss xmm2, xmm0
movss dword [rsp + 0x48], xmm2
movss xmm1, dword [rsp + 0x48]
movss xmm0, dword [rsp + 0x50]
mulss xmm1, xmm0
movss dword [rsp + 0x50], xmm1
movss xmm2, dword [rsp + 0x20]
movss xmm0, dword [rsp + 0x60]
divss xmm2, xmm0
movss dword [rsp + 0x20], xmm2
movss xmm1, dword [rsp + 0x48]
movss xmm0, dword [rsp + 0x40]
subss xmm1, xmm0
movss dword [rsp + 0x48], xmm1
movss xmm2, dword [rsp + 0x48]
movss xmm0, dword [rsp + 0x40]
subss xmm2, xmm0
movss dword [rsp + 0x48], xmm2
cmp r10d, r11d
jae 0x140856d50
nop dword [rax + rax]
lea r10d, [r10*2 + 1]
cmp r10d, r11d
jb 0x140856d40
nop dword [rax]
movzx eax, cl
movzx edx, byte [rbp + rax - 0x80]
mov eax, r9d
test r9d, r9d
je 0x140856da9
sub eax, 1
je 0x140856d99
sub eax, 1
je 0x140856d89
cmp eax, 1
je 0x140856d79
lea eax, [r9 - 4]
movzx eax, byte [rax + rsi]
jmp 0x140856db4
movsd xmm0, qword [rsp + 0x28]
cvttsd2si rax, xmm0
shr eax, 0x18
jmp 0x140856db4
movsd xmm0, qword [rsp + 0x28]
cvttsd2si rax, xmm0
shr eax, 0x10
jmp 0x140856db4
movsd xmm0, qword [rsp + 0x28]
cvttsd2si rax, xmm0
shr eax, 8
jmp 0x140856db4
movsd xmm0, qword [rsp + 0x28]
cvttsd2si rax, xmm0
add dl, al
lea r8d, [r9 + 1]
cmp r8d, 0x17
lea eax, [rdx + 0x17]
movzx ecx, al
cmovb ecx, edx
xor r9d, r9d
cmp r8d, 0x17
movzx ebx, cl
mov eax, ebx
cmovb r9d, r8d
and eax, r10d
inc edi
cmp edi, 0xb
jbe 0x140856de8
xor edx, edx
div r11d
mov eax, edx
movzx ecx, bl
cmp eax, r11d
ja 0x140856d50
je 0x140856e15
mov edx, eax
mov ecx, r11d
movzx eax, byte [rbp + rcx - 0x80]
xor al, byte [rbp + rdx - 0x80]
mov byte [rbp + rcx - 0x80], al
xor byte [rbp + rdx - 0x80], al
movzx eax, byte [rbp + rdx - 0x80]
xor byte [rbp + rcx - 0x80], al
movzx ecx, bl
add r11d, 0xffffffff
jne 0x140856b72
movzx r15d, byte [rbp - 0x7b]
lea r13, [fcn.14088986e]
movzx r8d, byte [r13]
movzx r11d, byte [rbp - 0x79]
movzx edx, byte [rbp + rbx - 0x80]
movsd xmm0, qword [0x1408dd348]
movsd xmm1, qword [0x1408e6d90]
movsd qword [rsp + 0x28], xmm0
movsd xmm0, qword [0x1408e69d0]
movsd qword [rsp + 0x30], xmm1
movsd qword [rsp + 0x20], xmm0
movsd xmm1, qword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x30]
mulsd xmm1, xmm0
movsd qword [rsp + 0x30], xmm1
movsd xmm2, qword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x28]
mulsd xmm2, xmm0
movsd qword [rsp + 0x28], xmm2
movsd xmm1, qword [rsp + 0x30]
movsd xmm0, qword [rsp + 0x20]
subsd xmm1, xmm0
movsd qword [rsp + 0x30], xmm1
movsd xmm1, qword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x28]
comisd xmm0, xmm1
jbe 0x140856f02
movsd xmm1, qword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x28]
mulsd xmm1, xmm0
movsd qword [rsp + 0x20], xmm1
movsd xmm2, qword [rsp + 0x30]
movsd xmm0, qword [rsp + 0x20]
subsd xmm2, xmm0
movsd qword [rsp + 0x30], xmm2
movsd xmm1, qword [rsp + 0x30]
movsd xmm0, qword [rsp + 0x20]
subsd xmm1, xmm0
movsd qword [rsp + 0x30], xmm1
jmp 0x140857014
movsd xmm1, qword [rsp + 0x30]
movsd xmm0, qword [rsp + 0x28]
subsd xmm1, xmm0
movsd qword [rsp + 0x30], 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 + 0x30]
movsd xmm0, qword [rsp + 0x28]
mulsd xmm2, xmm0
movsd qword [rsp + 0x30], xmm2
movsd xmm1, qword [rsp + 0x30]
movsd xmm0, qword [rsp + 0x28]
divsd xmm1, xmm0
movsd qword [rsp + 0x30], xmm1
movsd xmm2, qword [rsp + 0x30]
movsd xmm0, qword [rsp + 0x28]
divsd xmm2, xmm0
movsd qword [rsp + 0x30], xmm2
movsd xmm1, qword [rsp + 0x30]
movsd xmm0, qword [rsp + 0x28]
comisd xmm0, xmm1
jbe 0x140856fd2
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 + 0x28]
addsd xmm2, xmm0
movsd qword [rsp + 0x20], xmm2
movsd xmm1, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x30]
jmp 0x14085700a
movsd xmm1, qword [rsp + 0x30]
movsd xmm0, qword [rsp + 0x28]
addsd xmm1, xmm0
movsd qword [rsp + 0x30], xmm1
movsd xmm2, qword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x30]
addsd 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 [rbp - 0x7f]
sub r8b, 0x28
movzx r14d, byte [rbp - 0x7d]
movzx ecx, byte [r13 + 1]
movzx edi, byte [rbp + rdx - 0x80]
sub cl, 0x19
add r14b, byte [rbp + rax - 0x80]
lea esi, [rax + 1]
movsd xmm0, qword [0x1408e72e8]
movsd xmm1, qword [0x1408e7240]
movsd qword [rsp + 0x48], xmm0
movsd xmm0, qword [0x1408e7110]
movsd qword [rsp + 0x60], xmm1
movsd xmm1, qword [0x1408db468]
movsd qword [rsp + 0x30], xmm0
movsd xmm0, qword [0x1408e6ca0]
movsd qword [rsp + 0x58], xmm1
movsd xmm1, qword [0x1408e6a68]
movsd qword [rsp + 0x20], xmm0
movsd xmm0, qword [0x1408e6860]
movsd qword [rsp + 0x50], xmm1
movsd qword [rsp + 0x28], xmm0
movsd xmm1, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x58]
addsd xmm1, xmm0
shl r8b, 4
or r8b, cl
movzx r9d, r14b
movsd qword [rsp + 0x58], xmm1
movsd xmm2, qword [rsp + 0x30]
movsd xmm0, qword [rsp + 0x28]
subsd xmm2, xmm0
movsd qword [rsp + 0x30], xmm2
movsd xmm1, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x30]
addsd xmm1, xmm0
movsd qword [rsp + 0x30], xmm1
movsd xmm2, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x20]
mulsd xmm2, xmm0
movsd qword [rsp + 0x20], xmm2
movsd xmm1, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x30]
addsd xmm1, xmm0
movsd qword [rsp + 0x30], xmm1
movsd xmm2, qword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x28]
subsd xmm2, xmm0
movsd qword [rsp + 0x20], xmm2
movsd xmm1, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x30]
mulsd xmm1, xmm0
movsd qword [rsp + 0x30], xmm1
movsd xmm1, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x30]
comisd xmm1, xmm0
jbe 0x1408571f2
movsd xmm1, qword [rsp + 0x30]
movsd xmm0, qword [rsp + 0x20]
divsd xmm1, xmm0
movsd qword [rsp + 0x30], xmm1
movsd xmm2, qword [rsp + 0x50]
movsd xmm0, qword [rsp + 0x48]
subsd xmm2, xmm0
movsd qword [rsp + 0x50], xmm2
movsd xmm1, qword [rsp + 0x30]
movsd xmm0, qword [rsp + 0x20]
subsd xmm1, xmm0
movsd qword [rsp + 0x30], xmm1
movsd xmm2, qword [rsp + 0x58]
movsd xmm0, qword [rsp + 0x60]
mulsd xmm2, xmm0
movsd qword [rsp + 0x60], xmm2
movsd xmm1, qword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x30]
mulsd 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 + 0x20]
movsd xmm0, qword [rsp + 0x28]
divsd xmm1, xmm0
movsd qword [rsp + 0x20], xmm1
jmp 0x140857296
movsd xmm1, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x20]
movzx eax, byte [rbp + r9 - 0x80]
addsd xmm1, xmm0
mov byte [rbp + rdx - 0x80], al
movsd qword [rsp + 0x20], xmm1
movsd xmm1, qword [rsp + 0x58]
movsd xmm0, qword [rsp + 0x50]
subsd xmm1, xmm0
movsd qword [rsp + 0x58], xmm1
movsd xmm2, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x60]
addsd xmm2, xmm0
movsd qword [rsp + 0x28], xmm2
movsd xmm1, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x20]
mulsd xmm1, xmm0
movsd qword [rsp + 0x20], xmm1
movsd xmm2, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x60]
mulsd xmm2, xmm0
movsd qword [rsp + 0x28], xmm2
movsd xmm1, qword [rsp + 0x30]
movsd xmm0, qword [rsp + 0x20]
subsd xmm1, xmm0
movsd qword [rsp + 0x30], xmm1
movsd xmm2, qword [rsp + 0x30]
movsd xmm0, qword [rsp + 0x48]
mulsd xmm2, xmm0
movsd qword [rsp + 0x48], xmm2
movzx eax, byte [rbp + r11 - 0x80]
add r14b, dil
mov byte [rbp + r9 - 0x80], al
movzx ebx, byte [r13 + 2]
movzx r12d, byte [r13 + 4]
sub bl, 8
movzx ecx, sil
sub r12b, 8
inc sil
shl bl, 4
shl r12b, 4
movzx eax, byte [rbp + rcx - 0x80]
mov byte [rbp + r11 - 0x80], al
mov byte [rbp + rcx - 0x80], dil
add r15b, byte [rbp + rdi - 0x80]
movzx eax, r15b
movzx ecx, byte [rbp + rax - 0x80]
movzx eax, byte [rbp + rdx - 0x80]
add rcx, rax
movzx eax, byte [rbp + r11 - 0x80]
add rcx, rax
movzx eax, cl
movzx ecx, byte [rbp + r9 - 0x80]
add rcx, rdi
movzx r9d, r14b
mov edi, 2
movzx edx, byte [rbp + rax - 0x80]
movzx eax, cl
movzx ecx, byte [r13 + 3]
sub cl, 0x19
movzx r10d, byte [rbp + rdx - 0x80]
or bl, cl
xor r10b, byte [rbp + rax - 0x80]
movzx eax, byte [rbp + r9 - 0x80]
xor r10b, r8b
movzx r8d, r8b
movzx edx, r10b
movzx ecx, sil
inc sil
movzx r11d, byte [rbp + r8 - 0x80]
mov byte [rbp + r8 - 0x80], al
add r14b, r11b
movzx eax, byte [rbp + rdx - 0x80]
mov byte [rbp + r9 - 0x80], al
movzx eax, byte [rbp + rcx - 0x80]
mov byte [rbp + rdx - 0x80], al
mov byte [rbp + rcx - 0x80], r11b
add r15b, byte [rbp + r11 - 0x80]
movzx eax, r15b
movzx r10d, r14b
movzx ecx, byte [rbp + rax - 0x80]
movzx eax, byte [rbp + r8 - 0x80]
add rcx, rax
movzx eax, byte [rbp + rdx - 0x80]
add rcx, rax
movzx eax, cl
movzx ecx, byte [rbp + r9 - 0x80]
add rcx, r11
movzx r9d, bl
movzx edx, byte [rbp + rax - 0x80]
movzx eax, cl
movzx ecx, byte [r13 + 5]
sub cl, 0x19
movzx r8d, byte [rbp + rdx - 0x80]
or r12b, cl
xor r8b, byte [rbp + rax - 0x80]
movzx eax, byte [rbp + r10 - 0x80]
xor r8b, bl
movzx edx, byte [rbp + r9 - 0x80]
mov byte [rbp + r9 - 0x80], al
movzx ecx, sil
mov byte [rbp + 0x80], r8b
movzx r8d, r8b
mov byte [rsp + 0x38], dl
movzx eax, byte [rbp + r8 - 0x80]
mov byte [rbp + r10 - 0x80], al
movzx eax, byte [rbp + rcx - 0x80]
mov byte [rbp + r8 - 0x80], al
mov byte [rbp + rcx - 0x80], dl
add r15b, byte [rbp + rdx - 0x80]
movzx eax, r15b
movzx ecx, byte [rbp + rax - 0x80]
movzx eax, byte [rbp + r9 - 0x80]
add rcx, rax
mov qword [rsp + 0x30], reloc.WS2_32.dll_ntohs
movzx eax, byte [rbp + r8 - 0x80]
add rcx, rax
movzx eax, cl
movzx ecx, byte [rbp + rax - 0x80]
movzx eax, byte [rbp + r10 - 0x80]
add rax, rdx
movzx eax, al
movzx edx, byte [rbp + rcx - 0x80]
xor dl, byte [rbp + rax - 0x80]
lea eax, [rdi + 2]
xor dl, r12b
mov byte [rbp + 0x81], dl
jmp 0x140857457
lea r13, [fcn.14088986e]
add r14b, byte [rsp + 0x38]
add eax, 2
mov dword [rsp + 0x58], eax
inc sil
cdqe
add rax, r13
movzx r8d, dl
movzx r10d, r12b
movzx r9d, r14b
movzx ecx, sil
movzx r13d, byte [rax + 1]
movzx r11d, byte [rax]
sub r13d, 0x19
movzx eax, byte [rbp + r9 - 0x80]
sub r11b, 8
movzx ebx, byte [rbp + r10 - 0x80]
mov byte [rbp + r10 - 0x80], al
movzx eax, byte [rbp + r8 - 0x80]
mov byte [rbp + r9 - 0x80], al
movzx eax, byte [rbp + rcx - 0x80]
mov byte [rbp + r8 - 0x80], al
mov byte [rbp + rcx - 0x80], bl
add r15b, byte [rbp + rbx - 0x80]
movzx eax, r15b
shl r11b, 4
or r11b, r13b
mov dword [rsp + 0x20], edi
movzx r12d, r11b
movzx ecx, byte [rbp + rax - 0x80]
movzx eax, byte [rbp + r8 - 0x80]
add rcx, rax
movzx eax, byte [rbp + r10 - 0x80]
add rcx, rax
movzx eax, cl
movzx ecx, byte [rbp + rax - 0x80]
movzx eax, byte [rbp + r9 - 0x80]
add rax, rbx
movzx eax, al
movzx edx, byte [rbp + rcx - 0x80]
xor dl, byte [rbp + rax - 0x80]
xor dl, r11b
add edi, 1
je 0x140857515
mov eax, dword [rsp + 0x20]
mov byte [rbp + rax + 0x80], dl
sub qword [rsp + 0x30], 1
mov eax, dword [rsp + 0x58]
mov byte [rsp + 0x38], bl
jne 0x140857450
movss xmm0, dword [0x1408e7950]
lea rcx, [fcn.14088986e]
movss xmm1, dword [0x1408e55a4]
mov dword [rsp + 0x28], edi
inc edi
lea r11d, [rdi + rdi]
movsxd rax, r11d
add rax, rcx
movzx ecx, byte [rax + 1]
movzx eax, byte [rax]
movss dword [rsp + 0x48], xmm0
movss xmm0, dword [0x1408e77d8]
movss dword [rsp + 0x20], xmm1
movss xmm1, dword [0x1408e76c4]
movss dword [rsp + 0x60], xmm0
movss xmm0, dword [0x1408e75a4]
movss dword [rsp + 0x58], xmm1
movss xmm1, dword [0x1408e7488]
movss dword [rsp + 0x50], xmm0
movss dword [rsp + 0x40], xmm1
movss xmm2, dword [rsp + 0x40]
movss xmm0, dword [rsp + 0x48]
addss xmm2, xmm0
mov dword [rsp + 0x30], ecx
movss dword [rsp + 0x48], xmm2
movss xmm1, dword [rsp + 0x40]
movss xmm0, dword [rsp + 0x50]
addss xmm1, xmm0
movss dword [rsp + 0x50], xmm1
movss xmm2, dword [rsp + 0x40]
movss xmm0, dword [rsp + 0x20]
mulss xmm2, xmm0
movss dword [rsp + 0x20], xmm2
movss xmm1, dword [rsp + 0x40]
movss xmm0, dword [rsp + 0x50]
addss xmm1, xmm0
movss dword [rsp + 0x50], xmm1
movss xmm2, dword [rsp + 0x40]
movss xmm0, dword [rsp + 0x48]
addss xmm2, xmm0
movss dword [rsp + 0x48], xmm2
movss xmm1, dword [rsp + 0x60]
movss xmm0, dword [rsp + 0x40]
subss xmm1, xmm0
movss dword [rsp + 0x60], xmm1
movss xmm1, dword [rsp + 0x20]
movss xmm0, dword [rsp + 0x40]
comiss xmm0, xmm1
jbe 0x1408576c1
movss xmm1, dword [rsp + 0x40]
movss xmm0, dword [rsp + 0x48]
subss xmm1, xmm0
movss dword [rsp + 0x40], xmm1
movss xmm2, dword [rsp + 0x58]
movss xmm0, dword [rsp + 0x60]
mulss xmm2, xmm0
movss dword [rsp + 0x60], xmm2
movss xmm1, dword [rsp + 0x58]
movss xmm0, dword [rsp + 0x50]
subss xmm1, xmm0
movss dword [rsp + 0x58], xmm1
movss xmm2, dword [rsp + 0x40]
movss xmm0, dword [rsp + 0x48]
divss xmm2, xmm0
movss dword [rsp + 0x40], xmm2
movss xmm1, dword [rsp + 0x48]
movss xmm0, dword [rsp + 0x20]
divss xmm1, xmm0
movss dword [rsp + 0x48], xmm1
movss xmm2, dword [rsp + 0x58]
movss xmm0, dword [rsp + 0x60]
addss xmm2, xmm0
movss dword [rsp + 0x60], xmm2
jmp 0x140857749
movss xmm1, dword [rsp + 0x50]
lea r13d, [rcx - 0x19]
movss xmm0, dword [rsp + 0x48]
subss xmm1, xmm0
movss dword [rsp + 0x50], xmm1
movss xmm2, dword [rsp + 0x50]
movss xmm0, dword [rsp + 0x48]
mulss xmm2, xmm0
movss dword [rsp + 0x50], xmm2
movss xmm1, dword [rsp + 0x40]
movss xmm0, dword [rsp + 0x58]
mulss xmm1, xmm0
movss dword [rsp + 0x58], xmm1
movss xmm2, dword [rsp + 0x60]
movss xmm0, dword [rsp + 0x50]
subss xmm2, xmm0
movss dword [rsp + 0x60], xmm2
movss xmm1, dword [rsp + 0x40]
movss xmm0, dword [rsp + 0x20]
mulss xmm1, xmm0
movss dword [rsp + 0x40], xmm1
movss xmm2, dword [rsp + 0x58]
movss xmm0, dword [rsp + 0x20]
mulss xmm2, xmm0
movss dword [rsp + 0x20], xmm2
movss xmm0, dword [0x1408e4ae0]
add r14b, bl
movss xmm1, dword [0x1408e7728]
inc sil
shl al, 4
sub al, 0x80
movzx r8d, dl
or al, r13b
movzx r9d, r14b
movzx r13d, byte [rbp + r12 - 0x80]
mov byte [rsp + 0x68], al
movzx ecx, sil
movzx eax, byte [rbp + r9 - 0x80]
mov byte [rbp + r12 - 0x80], al
movzx eax, byte [rbp + r8 - 0x80]
mov byte [rbp + r9 - 0x80], al
movzx eax, byte [rbp + rcx - 0x80]
mov byte [rbp + r8 - 0x80], al
mov byte [rbp + rcx - 0x80], r13b
add r15b, byte [rbp + r13 - 0x80]
movzx eax, r15b
mov byte [rsp + 0x38], r13b
movzx ecx, byte [rbp + rax - 0x80]
movzx eax, byte [rbp + r8 - 0x80]
add rcx, rax
movzx eax, byte [rbp + r12 - 0x80]
add rcx, rax
movzx eax, cl
movzx ecx, byte [rbp + rax - 0x80]
movzx eax, byte [rbp + r9 - 0x80]
add rax, r13
movzx eax, al
movzx edx, byte [rbp + rcx - 0x80]
xor dl, byte [rbp + rax - 0x80]
movzx eax, byte [rsp + 0x68]
movss dword [rsp + 0x20], xmm0
xor dl, al
movss xmm0, dword [0x1408e2ba8]
movss dword [rsp + 0x50], xmm1
movss xmm1, dword [0x1408e7558]
movss dword [rsp + 0x58], xmm0
movss xmm0, dword [0x1408e7460]
movss dword [rsp + 0x48], xmm1
movss dword [rsp + 0x40], xmm0
movss xmm1, dword [rsp + 0x40]
movss xmm0, dword [rsp + 0x58]
mulss xmm1, xmm0
movss dword [rsp + 0x58], xmm1
movss xmm2, dword [rsp + 0x48]
movss xmm0, dword [rsp + 0x40]
subss xmm2, xmm0
movss dword [rsp + 0x48], xmm2
movss xmm1, dword [rsp + 0x40]
movss xmm0, dword [rsp + 0x50]
mulss xmm1, xmm0
movss dword [rsp + 0x50], xmm1
movss xmm2, dword [rsp + 0x40]
movss xmm0, dword [rsp + 0x50]
addss xmm2, xmm0
movss dword [rsp + 0x50], xmm2
movss xmm1, dword [rsp + 0x40]
movss xmm0, dword [rsp + 0x50]
mulss xmm1, xmm0
movss dword [rsp + 0x50], xmm1
movss xmm1, dword [rsp + 0x50]
movss xmm0, dword [rsp + 0x48]
comiss xmm0, xmm1
movss xmm1, dword [rsp + 0x40]
jbe 0x140857910
movss xmm0, dword [rsp + 0x50]
addss xmm1, xmm0
movss dword [rsp + 0x40], xmm1
movss xmm2, dword [rsp + 0x48]
movss xmm0, dword [rsp + 0x20]
mulss xmm2, xmm0
movss dword [rsp + 0x48], xmm2
movss xmm1, dword [rsp + 0x48]
movss xmm0, dword [rsp + 0x20]
mulss xmm1, xmm0
movss dword [rsp + 0x48], xmm1
movss xmm2, dword [rsp + 0x48]
movss xmm0, dword [rsp + 0x20]
divss xmm2, xmm0
movss dword [rsp + 0x48], xmm2
movss xmm1, dword [rsp + 0x40]
movss xmm0, dword [rsp + 0x58]
addss xmm1, xmm0
movss dword [rsp + 0x58], xmm1
jmp 0x14085797c
movss xmm0, dword [rsp + 0x48]
movzx r12d, al
addss xmm1, xmm0
movss dword [rsp + 0x48], xmm1
movss xmm2, dword [rsp + 0x20]
movss xmm0, dword [rsp + 0x50]
subss xmm2, xmm0
movss dword [rsp + 0x20], xmm2
movss xmm1, dword [rsp + 0x48]
movss xmm0, dword [rsp + 0x58]
addss xmm1, xmm0
movss dword [rsp + 0x58], xmm1
movss xmm2, dword [rsp + 0x40]
movss xmm0, dword [rsp + 0x20]
addss xmm2, xmm0
movss dword [rsp + 0x40], xmm2
movss xmm1, dword [rsp + 0x40]
movss xmm0, dword [rsp + 0x20]
addss xmm1, xmm0
movss dword [rsp + 0x40], xmm1
test edi, edi
je 0x14085798b
mov eax, dword [rsp + 0x28]
mov byte [rbp + rax + 0x80], dl
lea ecx, [rdi + 1]
cmp ecx, 0x23
jge 0x140857a8e
mov eax, 0x23
sub eax, ecx
mov ecx, eax
mov qword [rsp + 0x30], rcx
nop word [rax + rax]
add r14b, byte [rsp + 0x38]
lea rcx, [fcn.14088986e]
add r11d, 2
movzx r8d, dl
movsxd rax, r11d
inc sil
mov dword [rsp + 0x20], r11d
movzx r9d, r12b
movzx r10d, r14b
movzx r11d, byte [rax + rcx]
movzx r13d, byte [rax + rcx + 1]
sub r11b, 8
movzx ebx, byte [rbp + r9 - 0x80]
movzx ecx, sil
shl r11b, 4
lea eax, [r13 - 0x19]
mov dword [rsp + 0x28], edi
or r11b, al
movzx eax, byte [rbp + r10 - 0x80]
mov byte [rbp + r9 - 0x80], al
movzx r12d, r11b
movzx eax, byte [rbp + r8 - 0x80]
mov byte [rbp + r10 - 0x80], al
movzx eax, byte [rbp + rcx - 0x80]
mov byte [rbp + r8 - 0x80], al
mov byte [rbp + rcx - 0x80], bl
add r15b, byte [rbp + rbx - 0x80]
movzx eax, r15b
movzx ecx, byte [rbp + rax - 0x80]
movzx eax, byte [rbp + r9 - 0x80]
add rcx, rax
movzx eax, byte [rbp + r8 - 0x80]
add rcx, rax
movzx eax, cl
movzx ecx, byte [rbp + rax - 0x80]
movzx eax, byte [rbp + r10 - 0x80]
add rax, rbx
movzx eax, al
movzx edx, byte [rbp + rcx - 0x80]
xor dl, byte [rbp + rax - 0x80]
xor dl, r11b
add edi, 1
je 0x140857a77
mov eax, dword [rsp + 0x28]
mov byte [rbp + rax + 0x80], dl
sub qword [rsp + 0x30], 1
mov r11d, dword [rsp + 0x20]
mov byte [rsp + 0x38], bl
jne 0x1408579b0
jmp 0x140857a93
mov r13d, dword [rsp + 0x30]
movsd xmm0, qword [0x1408dc1d0]
movsd xmm1, qword [0x1408e6e48]
mov ebx, edi
inc edi
mov dword [rsp + 0x30], edi
lea eax, [rdi + rdi]
movsxd rcx, eax
lea rax, [fcn.14088986e]
movzx r10d, byte [rcx + rax]
movsd qword [rsp + 0x50], xmm0
movsd qword [rsp + 0x48], xmm1
movsd xmm0, qword [0x1408e6d00]
movsd xmm1, qword [0x1408e6bc0]
movsd qword [rsp + 0x58], xmm0
movsd xmm0, qword [0x1408e6a28]
movsd qword [rsp + 0x20], xmm1
movsd xmm1, qword [0x1408e68e8]
movsd qword [rsp + 0x40], xmm0
movsd xmm0, qword [0x1408e6770]
movsd qword [rsp + 0x60], xmm1
movsd qword [rsp + 0x28], xmm0
movsd xmm1, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x20]
addsd xmm1, xmm0
movsd qword [rsp + 0x20], xmm1
movsd xmm2, qword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x28]
subsd xmm2, xmm0
movsd qword [rsp + 0x20], xmm2
movsd xmm1, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x20]
addsd xmm1, xmm0
movsd qword [rsp + 0x20], xmm1
movsd xmm2, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x58]
mulsd xmm2, xmm0
movsd qword [rsp + 0x58], xmm2
movsd xmm1, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x20]
addsd xmm1, xmm0
movsd qword [rsp + 0x20], xmm1
movsd xmm2, qword [rsp + 0x50]
movsd xmm0, qword [rsp + 0x28]
subsd xmm2, xmm0
movsd qword [rsp + 0x50], xmm2
movsd xmm1, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x20]
addsd xmm1, xmm0
movsd qword [rsp + 0x20], xmm1
movsd xmm1, qword [rsp + 0x58]
movsd xmm0, qword [rsp + 0x28]
comisd xmm0, xmm1
movsd xmm1, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x50]
jbe 0x140857c5e
mulsd xmm1, xmm0
movsd qword [rsp + 0x28], xmm1
movsd xmm2, qword [rsp + 0x58]
movsd xmm0, qword [rsp + 0x20]
subsd xmm2, xmm0
movsd qword [rsp + 0x58], xmm2
movsd xmm1, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x50]
divsd xmm1, xmm0
movsd qword [rsp + 0x28], xmm1
movsd xmm2, qword [rsp + 0x58]
movsd xmm0, qword [rsp + 0x48]
mulsd xmm2, xmm0
movsd qword [rsp + 0x48], xmm2
movsd xmm1, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x50]
mulsd xmm1, xmm0
movsd qword [rsp + 0x28], xmm1
movsd xmm2, qword [rsp + 0x60]
movsd xmm0, qword [rsp + 0x28]
subsd xmm2, xmm0
movsd qword [rsp + 0x60], xmm2
movsd xmm1, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x60]
addsd xmm1, xmm0
movsd qword [rsp + 0x60], xmm1
jmp 0x140857cf2
addsd xmm1, xmm0
movsd qword [rsp + 0x28], xmm1
movsd xmm2, qword [rsp + 0x60]
movsd xmm0, qword [rsp + 0x40]
addsd xmm2, xmm0
movsd qword [rsp + 0x40], xmm2
movsd xmm1, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x60]
addsd xmm1, xmm0
movsd qword [rsp + 0x60], xmm1
movsd xmm2, qword [rsp + 0x40]
movsd xmm0, qword [rsp + 0x20]
addsd xmm2, xmm0
movsd qword [rsp + 0x20], xmm2
movsd xmm1, qword [rsp + 0x58]
movsd xmm0, qword [rsp + 0x48]
mulsd xmm1, xmm0
movsd qword [rsp + 0x48], xmm1
movsd xmm2, qword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x58]
movzx r13d, byte [rcx + rax + 1]
addsd xmm2, xmm0
movsd qword [rsp + 0x58], xmm2
movsd xmm1, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x50]
addsd xmm1, xmm0
movsd qword [rsp + 0x28], xmm1
movzx eax, sil
sub r10b, 0x28
movzx edx, dl
inc sil
movzx r9d, r12b
sub r13b, 0x19
movzx ecx, sil
add r14b, byte [rbp + rax - 0x80]
movzx r8d, r14b
movzx r11d, byte [rbp + r9 - 0x80]
shl r10b, 4
or r10b, r13b
movzx eax, byte [rbp + r8 - 0x80]
mov byte [rbp + r9 - 0x80], al
movzx eax, byte [rbp + rdx - 0x80]
mov byte [rbp + r8 - 0x80], al
movzx eax, byte [rbp + rcx - 0x80]
mov byte [rbp + rdx - 0x80], al
mov byte [rbp + rcx - 0x80], r11b
add r15b, byte [rbp + r11 - 0x80]
movzx eax, r15b
movzx ecx, byte [rbp + rax - 0x80]
movzx eax, byte [rbp + rdx - 0x80]
add rcx, rax
movzx eax, byte [rbp + r9 - 0x80]
add rcx, rax
movzx eax, cl
movzx ecx, byte [rbp + r8 - 0x80]
add rcx, r11
movzx edx, byte [rbp + rax - 0x80]
movzx eax, cl
movzx ecx, byte [rbp + rdx - 0x80]
xor cl, byte [rbp + rax - 0x80]
xor cl, r10b
test edi, edi
je 0x140857d8f
mov byte [rbp + rbx + 0x80], cl
inc edi
movzx r9d, r10b
lea rdx, [fcn.14088986e]
mov r13d, edi
add r14b, r11b
inc sil
movzx r8d, r14b
movzx r12d, byte [rbp + r9 - 0x80]
lea eax, [rdi + rdi]
cdqe
movzx ebx, byte [rax + rdx + 1]
movzx eax, byte [rax + rdx]
sub bl, 0x19
movzx edx, cl
sub al, 8
shl al, 4
or bl, al
movzx ecx, sil
movzx eax, byte [rbp + r8 - 0x80]
mov byte [rbp + r9 - 0x80], al
movzx eax, byte [rbp + rdx - 0x80]
mov byte [rbp + r8 - 0x80], al
movzx eax, byte [rbp + rcx - 0x80]
mov byte [rbp + rdx - 0x80], al
mov byte [rbp + rcx - 0x80], r12b
add r15b, byte [rbp + r12 - 0x80]
movzx eax, r15b
movzx ecx, byte [rbp + rax - 0x80]
movzx eax, byte [rbp + rdx - 0x80]
add rcx, rax
movzx eax, byte [rbp + r9 - 0x80]
add rcx, rax
movzx eax, cl
movzx ecx, byte [rbp + r8 - 0x80]
add rcx, r12
movzx edx, byte [rbp + rax - 0x80]
movzx eax, cl
movzx ecx, byte [rbp + rdx - 0x80]
xor cl, byte [rbp + rax - 0x80]
xor cl, bl
test edi, edi
je 0x140857e3e
mov eax, dword [rsp + 0x30]
mov byte [rbp + rax + 0x80], cl
inc edi
movzx r9d, bl
lea rdx, [fcn.14088986e]
mov dword [rsp + 0x30], edi
add r14b, r12b
inc sil
mov r12, qword [rsp + 0x248]
movzx r10d, byte [rbp + r9 - 0x80]
lea eax, [rdi + rdi]
cdqe
movzx r8d, r14b
movzx r11d, byte [rax + rdx + 1]
movzx eax, byte [rax + rdx]
sub r11b, 0x19
movzx edx, cl
sub al, 8
shl al, 4
or r11b, al
movzx ecx, sil
movzx eax, byte [rbp + r8 - 0x80]
mov byte [rbp + r9 - 0x80], al
movzx eax, byte [rbp + rdx - 0x80]
mov byte [rbp + r8 - 0x80], al
movzx eax, byte [rbp + rcx - 0x80]
mov byte [rbp + rdx - 0x80], al
mov byte [rbp + rcx - 0x80], r10b
add r15b, byte [rbp + r10 - 0x80]
movzx eax, r15b
movzx ecx, byte [rbp + rax - 0x80]
movzx eax, byte [rbp + rdx - 0x80]
add rcx, rax
movzx eax, byte [rbp + r9 - 0x80]
add rcx, rax
movzx eax, cl
movzx ecx, byte [rbp + r8 - 0x80]
add rcx, r10
movzx edx, byte [rbp + rax - 0x80]
movzx eax, cl
movzx ecx, byte [rbp + rdx - 0x80]
xor cl, byte [rbp + rax - 0x80]
xor cl, r11b
test edi, edi
je 0x140857ef7
mov byte [rbp + r13 + 0x80], cl
mov r13, qword [rsp + 0x210]
add r10b, r14b
mov r14, qword [rsp + 0x208]
inc sil
movzx r9d, r11b
movzx r11d, r10b
movzx r10d, cl
movzx ecx, sil
movzx edx, byte [rbp + r9 - 0x80]
movzx eax, byte [rbp + r11 - 0x80]
mov rsi, qword [rsp + 0x238]
mov byte [rbp + r9 - 0x80], al
movzx eax, byte [rbp + r10 - 0x80]
mov byte [rbp + r11 - 0x80], al
movzx eax, byte [rbp + rcx - 0x80]
mov byte [rbp + r10 - 0x80], al
mov byte [rbp + rcx - 0x80], dl
add edi, 1
je 0x140857fbd
mov r8d, edx
lea rcx, [fcn.14088986e]
lea eax, [rdi + rdi]
cdqe
add r15b, byte [rbp + r8 - 0x80]
movzx edx, byte [rax + rcx + 1]
movzx eax, byte [rax + rcx]
sub dl, 0x19
sub al, 8
shl al, 4
or dl, al
movzx eax, r15b
movzx ecx, byte [rbp + rax - 0x80]
movzx eax, byte [rbp + r10 - 0x80]
add rcx, rax
movzx eax, byte [rbp + r9 - 0x80]
add rcx, rax
movzx eax, cl
movzx ecx, byte [rbp + rax - 0x80]
movzx eax, byte [rbp + r11 - 0x80]
add rax, r8
xor dl, byte [rbp + rcx - 0x80]
movzx ecx, al
mov eax, dword [rsp + 0x30]
xor dl, byte [rbp + rcx - 0x80]
mov byte [rbp + rax + 0x80], dl
mov rbx, qword [rsp + 0x70]
mov r15, qword [rsp + 0x200]
mov rdi, qword [rsp + 0x240]
mov byte [rbp + 0xa5], 0
movaps xmm8, xmmword [rsp + 0x1d0]
lea rax, [rbp + 0x80]
movaps xmm7, xmmword [rsp + 0x1e0]
lea rcx, [rbp + 0x80]
movaps xmm6, xmmword [rsp + 0x1f0]
sub rbx, rax
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [rcx]
mov byte [rbx + rcx], al
lea rcx, [rcx + 1]
test al, al
jne 0x140858010
mov rcx, qword [rbp + 0xa8]
xor rcx, rsp
call fcn.140890ac0
add rsp, 0x218
pop rbx
pop rbp
ret