Function at 0x140111fe0
Capabilities:
Encrypt data using rc4 ksa

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x178]
sub rsp, 0x250
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
movaps xmmword [rax - 0x68], xmm9
movaps xmmword [rax - 0x78], xmm10
movaps xmmword [rax - 0x88], xmm11
movaps xmmword [rax - 0x98], xmm12
movaps xmmword [rax - 0xa8], xmm13
movaps xmmword [rax - 0xb8], xmm14
movaps xmmword [rax - 0xc8], xmm15
mov rax, qword [0x140a630a8]
xor rax, rsp
mov qword [rbp + 0xa0], rax
xorps xmm3, xmm3
movsd qword [rsp + 0x30], xmm3
movsd qword [rsp + 0x48], xmm3
movsd qword [rsp + 0x30], xmm3
movsd qword [rsp + 0x48], xmm3
movsd qword [rsp + 0x48], xmm3
movsd xmm0, qword [rsp + 0x48]
movsd xmm4, qword [0x1408ca7d0]
comisd xmm4, xmm0
jbe 0x140112161
movsd xmm7, qword [0x1408c9d98]
movsd xmm8, qword [0x1408c9c08]
movsd xmm9, qword [0x1408c9c98]
movsd xmm10, qword [0x1408c9d48]
movsd xmm5, qword [0x1408c9bf8]
movsd xmm6, qword [0x1408c83a8]
nop dword [rax]
nop word [rax + rax]
movsd xmm2, qword [rsp + 0x48]
mulsd xmm2, xmm7
mulsd xmm2, qword [rsp + 0x48]
movsd xmm1, qword [rsp + 0x48]
movsd xmm0, qword [rsp + 0x48]
mulsd xmm1, xmm0
subsd xmm2, xmm1
movsd xmm0, qword [rsp + 0x48]
mulsd xmm0, xmm8
mulsd xmm0, qword [rsp + 0x48]
addsd xmm0, xmm9
divsd xmm2, xmm0
addsd xmm2, qword [rsp + 0x30]
movsd qword [rsp + 0x30], xmm2
movsd xmm0, qword [rsp + 0x30]
comisd xmm0, xmm10
jbe 0x140112141
movsd xmm1, qword [rsp + 0x30]
movsd xmm0, qword [rsp + 0x48]
mulsd xmm0, xmm5
subsd xmm1, xmm0
movsd qword [rsp + 0x30], xmm1
movsd xmm0, qword [rsp + 0x48]
addsd xmm0, xmm6
movsd qword [rsp + 0x48], xmm0
movsd xmm1, qword [rsp + 0x48]
comisd xmm4, xmm1
ja 0x1401120d0
movsd xmm0, qword [rsp + 0x30]
xor r15d, r15d
comisd xmm3, xmm0
jbe 0x14011217f
call fcn.140889ad3
call fcn.140889ab9
jmp 0x140113625
movsd xmm0, qword [0x1408ca5d0]
movsd qword [rsp + 0x38], xmm0
movsd xmm1, qword [0x1408ca430]
movsd qword [rsp + 0x60], xmm1
movsd xmm0, qword [0x1408ca250]
movsd qword [rsp + 0x48], xmm0
movsd xmm1, qword [0x1408ca090]
movsd qword [rsp + 0x50], xmm1
movsd xmm0, qword [0x1408c9ea0]
movsd qword [rsp + 0x28], xmm0
movsd xmm1, qword [rsp + 0x60]
movsd xmm0, qword [rsp + 0x28]
subsd xmm1, xmm0
movsd qword [rsp + 0x60], xmm1
movsd xmm2, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x38]
addsd xmm2, xmm0
movsd qword [rsp + 0x38], xmm2
movsd xmm1, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x48]
mulsd xmm1, xmm0
movsd qword [rsp + 0x48], xmm1
movsd xmm2, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x60]
addsd xmm2, xmm0
movsd qword [rsp + 0x60], xmm2
movsd xmm1, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x50]
mulsd xmm1, xmm0
movsd qword [rsp + 0x50], xmm1
movsd xmm1, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x48]
comisd xmm0, xmm1
jbe 0x1401122bc
movsd xmm1, qword [rsp + 0x50]
movsd xmm0, qword [rsp + 0x48]
mulsd xmm1, xmm0
movsd qword [rsp + 0x48], xmm1
movsd xmm2, qword [rsp + 0x48]
movsd xmm0, qword [rsp + 0x50]
subsd xmm2, xmm0
movsd qword [rsp + 0x48], xmm2
movsd xmm1, qword [rsp + 0x50]
movsd xmm0, qword [rsp + 0x48]
mulsd xmm1, xmm0
movsd qword [rsp + 0x48], xmm1
movsd xmm2, qword [rsp + 0x60]
movsd xmm0, qword [rsp + 0x38]
mulsd xmm2, xmm0
movsd qword [rsp + 0x38], xmm2
lea rax, [fcn.140889ab9]
movsd xmm1, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x50]
addsd xmm1, xmm0
movsd qword [rsp + 0x50], xmm1
jmp 0x14011232f
movsd xmm1, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x38]
subsd xmm1, xmm0
movsd qword [rsp + 0x28], xmm1
movsd xmm2, qword [rsp + 0x60]
movsd xmm0, qword [rsp + 0x38]
addsd xmm2, xmm0
movsd qword [rsp + 0x38], xmm2
movsd xmm1, qword [rsp + 0x48]
movsd xmm0, qword [rsp + 0x50]
subsd xmm1, xmm0
movsd qword [rsp + 0x48], xmm1
movsd xmm2, qword [rsp + 0x60]
movsd xmm0, qword [rsp + 0x38]
addsd xmm2, xmm0
movsd qword [rsp + 0x38], xmm2
movsd xmm1, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x38]
subsd xmm1, xmm0
movsd qword [rsp + 0x28], xmm1
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x60], rax
mov eax, r15d
lea rcx, [rbp - 0x80]
nop dword [rax + rax]
mov byte [rcx], al
inc eax
lea rcx, [rcx + 1]
cmp eax, 0x100
jb 0x140112340
mov r9d, r15d
xor cl, cl
mov esi, 1
mov r10d, 0xff
lea r14, [fcn.140889ad3]
nop word [rax + rax]
mov edi, r15d
mov r11d, esi
cmp r10d, esi
jbe 0x140112390
nop dword [rax + rax]
lea r11d, [r11*2 + 1]
cmp r11d, r10d
jb 0x140112380
nop dword [rax]
movzx eax, cl
movzx edx, byte [rbp + rax - 0x80]
mov eax, r9d
test r9d, r9d
je 0x1401123e7
sub eax, esi
je 0x1401123d7
sub eax, esi
je 0x1401123c7
cmp eax, esi
je 0x1401123b7
lea eax, [r9 - 4]
movzx eax, byte [rax + r14]
jmp 0x1401123f2
movsd xmm0, qword [rsp + 0x30]
cvttsd2si rax, xmm0
shr eax, 0x18
jmp 0x1401123f2
movsd xmm0, qword [rsp + 0x30]
cvttsd2si rax, xmm0
shr eax, 0x10
jmp 0x1401123f2
movsd xmm0, qword [rsp + 0x30]
cvttsd2si rax, xmm0
shr eax, 8
jmp 0x1401123f2
movsd xmm0, qword [rsp + 0x30]
cvttsd2si rax, xmm0
add dl, al
lea r8d, [r9 + 1]
lea eax, [rdx + 0x23]
movzx ecx, al
cmp r8d, 0x23
cmovb ecx, edx
movzx ebx, cl
mov r9d, r15d
cmovb r9d, r8d
mov eax, ebx
and eax, r11d
inc edi
cmp edi, 0xb
jbe 0x140112422
xor edx, edx
div r10d
mov eax, edx
movzx ecx, bl
cmp eax, r10d
ja 0x140112390
je 0x14011244f
mov edx, eax
mov ecx, r10d
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
add r10d, 0xffffffff
movzx ecx, bl
jne 0x140112370
movzx r14d, byte [rbp - 0x7b]
movzx edx, byte [rbp - 0x79]
movzx ecx, byte [rbp + rbx - 0x80]
mov r11, qword [rsp + 0x60]
movzx r10d, byte [r11 + 1]
add r10b, 0x60
movzx eax, byte [r11]
sub al, 6
shl al, 4
or r10b, al
mov r9d, ecx
movzx ebx, byte [rbp + rcx - 0x80]
movzx eax, byte [rbp - 0x7f]
lea edi, [rax + 1]
movzx r15d, byte [rbp - 0x7d]
add r15b, byte [rbp + rax - 0x80]
movzx r8d, r15b
movzx eax, byte [rbp + r8 - 0x80]
mov byte [rbp + rcx - 0x80], al
movzx eax, byte [rbp + rdx - 0x80]
mov byte [rbp + r8 - 0x80], al
movzx ecx, dil
movzx eax, byte [rbp + rcx - 0x80]
mov byte [rbp + rdx - 0x80], al
mov byte [rbp + rcx - 0x80], bl
add r14b, byte [rbp + rbx - 0x80]
movzx eax, r14b
movzx ecx, byte [rbp + rax - 0x80]
movzx eax, byte [rbp + r9 - 0x80]
add rcx, rax
movzx eax, byte [rbp + rdx - 0x80]
add rcx, rax
movzx eax, cl
movzx edx, byte [rbp + rax - 0x80]
movzx ecx, byte [rbp + r8 - 0x80]
add rcx, rbx
movzx eax, cl
movzx r8d, byte [rbp + rdx - 0x80]
xor r8b, byte [rbp + rax - 0x80]
xor r8b, r10b
movzx ecx, byte [r11 + 2]
movsd xmm0, qword [0x1408ca558]
movsd qword [rsp + 0x40], xmm0
movsd xmm1, qword [0x1408ca400]
movsd qword [rsp + 0x50], xmm1
movsd xmm0, qword [0x1408ca288]
movsd qword [rsp + 0x30], xmm0
movsd xmm1, qword [0x1408ca128]
movsd qword [rsp + 0x38], xmm1
movsd xmm0, qword [0x1408c9f90]
movsd qword [rsp + 0x48], xmm0
movsd xmm1, qword [0x1408c9e28]
movsd qword [rsp + 0x28], xmm1
movsd xmm2, qword [rsp + 0x48]
movsd xmm0, qword [rsp + 0x28]
subsd xmm2, xmm0
movsd qword [rsp + 0x48], xmm2
movsd xmm1, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x48]
mulsd xmm1, xmm0
movsd qword [rsp + 0x48], xmm1
movsd xmm2, qword [rsp + 0x30]
movsd xmm0, qword [rsp + 0x28]
subsd xmm2, xmm0
movsd qword [rsp + 0x30], xmm2
movsd xmm1, qword [rsp + 0x30]
movsd xmm0, qword [rsp + 0x28]
subsd xmm1, xmm0
movsd qword [rsp + 0x30], xmm1
movsd xmm2, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x48]
addsd xmm2, xmm0
movsd qword [rsp + 0x48], xmm2
movsd xmm1, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x50]
addsd xmm1, xmm0
movsd qword [rsp + 0x50], xmm1
movsd xmm1, qword [rsp + 0x48]
movsd xmm0, qword [rsp + 0x28]
comisd xmm0, xmm1
jbe 0x140112686
movsd xmm1, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x48]
addsd xmm1, xmm0
movsd qword [rsp + 0x48], xmm1
movsd xmm2, qword [rsp + 0x30]
movsd xmm0, qword [rsp + 0x50]
mulsd xmm2, xmm0
movsd qword [rsp + 0x50], xmm2
movsd xmm1, qword [rsp + 0x30]
movsd xmm0, qword [rsp + 0x38]
subsd xmm1, xmm0
movsd qword [rsp + 0x30], xmm1
movsd xmm2, qword [rsp + 0x48]
movsd xmm0, qword [rsp + 0x28]
divsd xmm2, xmm0
movsd qword [rsp + 0x48], xmm2
movsd xmm1, qword [rsp + 0x40]
movsd xmm0, qword [rsp + 0x50]
divsd xmm1, xmm0
movsd qword [rsp + 0x40], xmm1
movsd xmm2, qword [rsp + 0x38]
movsd xmm0, qword [rsp + 0x30]
addsd xmm2, xmm0
movsd qword [rsp + 0x30], xmm2
mov rax, rsi
jmp 0x14011270f
movsd xmm1, qword [rsp + 0x48]
movsd xmm0, qword [rsp + 0x38]
addsd xmm1, xmm0
movsd qword [rsp + 0x38], xmm1
movsd xmm2, qword [rsp + 0x48]
movsd xmm0, qword [rsp + 0x28]
subsd xmm2, xmm0
movsd qword [rsp + 0x48], xmm2
movsd xmm1, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x48]
mulsd xmm1, xmm0
movsd qword [rsp + 0x48], xmm1
movsd xmm2, qword [rsp + 0x48]
movsd xmm0, qword [rsp + 0x38]
mulsd xmm2, xmm0
movsd qword [rsp + 0x38], xmm2
movsd xmm1, qword [rsp + 0x48]
movsd xmm0, qword [rsp + 0x38]
addsd xmm1, xmm0
movsd qword [rsp + 0x38], xmm1
movsd xmm2, qword [rsp + 0x50]
movsd xmm0, qword [rsp + 0x40]
mulsd xmm2, xmm0
movsd qword [rsp + 0x40], xmm2
mov eax, 3
movzx eax, byte [rax + r11]
add al, 0x60
add cl, 0xa
shl cl, 4
or al, cl
mov byte [rsp + 0x58], al
movzx r9d, r10b
movzx r13d, byte [rbp + r9 - 0x80]
inc dil
add r15b, bl
movzx r10d, r15b
movzx eax, byte [rbp + r10 - 0x80]
mov byte [rbp + r9 - 0x80], al
movzx r8d, r8b
movzx eax, byte [rbp + r8 - 0x80]
mov byte [rbp + r10 - 0x80], al
movzx ecx, dil
movzx eax, byte [rbp + rcx - 0x80]
mov byte [rbp + r8 - 0x80], al
mov byte [rbp + rcx - 0x80], r13b
add r14b, byte [rbp + r13 - 0x80]
movzx eax, r14b
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, r13
movzx eax, al
movzx edx, byte [rbp + rcx - 0x80]
xor dl, byte [rbp + rax - 0x80]
movzx r8d, byte [rsp + 0x58]
xor dl, r8b
movsx eax, dl
mov word [rbp + 0x80], ax
mov eax, 2
lea r12d, [rax + 2]
jmp 0x1401127c5
mov r11, qword [rsp + 0x60]
mov dword [rsp + 0x48], esi
inc esi
mov dword [rsp + 0x30], esi
add eax, 2
mov dword [rsp + 0x28], eax
cdqe
movzx r11d, byte [rax + r11]
sub r11b, 6
shl r11b, 4
mov rcx, qword [rsp + 0x60]
movzx eax, byte [rax + rcx + 1]
add al, 0x60
or r11b, al
movzx r9d, r8b
movzx ebx, byte [rbp + r9 - 0x80]
inc dil
add r15b, r13b
movzx r10d, r15b
movzx eax, byte [rbp + r10 - 0x80]
mov byte [rbp + r9 - 0x80], al
movzx r8d, dl
movzx eax, byte [rbp + r8 - 0x80]
mov byte [rbp + r10 - 0x80], al
movzx ecx, dil
movzx eax, byte [rbp + rcx - 0x80]
mov byte [rbp + r8 - 0x80], al
mov byte [rbp + rcx - 0x80], bl
add r14b, byte [rbp + rbx - 0x80]
movzx eax, r14b
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
movzx r8d, r11b
test esi, esi
je 0x14011288b
movsx ecx, dl
mov eax, dword [rsp + 0x48]
mov word [rbp + rax*2 + 0x80], cx
sub r12, 1
movzx r13d, bl
mov eax, dword [rsp + 0x28]
jne 0x1401127c0
inc esi
mov dword [rsp + 0x28], esi
lea eax, [rsi + rsi]
movsxd rcx, eax
mov r13, qword [rsp + 0x60]
movzx r10d, byte [rcx + r13 + 1]
add r10b, 0x60
movzx eax, byte [rcx + r13]
sub al, 6
shl al, 4
or r10b, al
mov r9, r8
movzx r11d, byte [rbp + r8 - 0x80]
mov byte [rsp + 0x58], r11b
inc dil
add r15b, bl
movzx r8d, r15b
movzx eax, byte [rbp + r8 - 0x80]
mov byte [rbp + r9 - 0x80], al
movzx edx, dl
movzx eax, byte [rbp + rdx - 0x80]
mov byte [rbp + r8 - 0x80], al
movzx ecx, dil
movzx eax, byte [rbp + rcx - 0x80]
mov byte [rbp + rdx - 0x80], al
mov byte [rbp + rcx - 0x80], r11b
add r14b, byte [rbp + r11 - 0x80]
movzx eax, r14b
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 edx, byte [rbp + rax - 0x80]
movzx ecx, byte [rbp + r8 - 0x80]
add rcx, r11
movzx eax, cl
movzx r8d, byte [rbp + rdx - 0x80]
xor r8b, byte [rbp + rax - 0x80]
xor r8b, r10b
test esi, esi
je 0x14011295c
movsx ecx, r8b
mov eax, dword [rsp + 0x30]
mov word [rbp + rax*2 + 0x80], cx
inc esi
lea r12d, [rsi + rsi]
movsxd rax, r12d
movzx r13d, byte [rax + r13]
mov dword [rsp + 0x48], r13d
add r13d, 0xffffffea
shl r13d, 4
mov rcx, qword [rsp + 0x60]
movzx r11d, byte [rax + rcx + 1]
sub r11d, 0xa0
or r11d, r13d
movzx ebx, r11b
movzx r10d, r10b
movzx ecx, byte [rbp + r10 - 0x80]
inc dil
add r15b, byte [rsp + 0x58]
movzx r9d, r15b
movzx eax, byte [rbp + r9 - 0x80]
mov byte [rbp + r10 - 0x80], al
movzx r8d, r8b
movzx eax, byte [rbp + r8 - 0x80]
mov byte [rbp + r9 - 0x80], al
movzx eax, dil
lea rdx, [rbp - 0x80]
add rdx, rax
mov qword [rsp + 0x70], rdx
movzx eax, byte [rdx]
mov byte [rbp + r8 - 0x80], al
mov byte [rdx], cl
mov edx, ecx
add r14b, byte [rbp + rcx - 0x80]
movzx eax, r14b
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, rdx
movzx eax, al
movzx r8d, byte [rbp + rcx - 0x80]
xor r8b, byte [rbp + rax - 0x80]
xor r8b, r11b
movzx r9d, r11b
test esi, esi
je 0x140112a36
movsx ecx, r8b
mov eax, dword [rsp + 0x28]
mov word [rbp + rax*2 + 0x80], cx
lea ecx, [rsi + 1]
cmp ecx, 0xd
jge 0x140113562
mov eax, reloc.WS2_32.dll_listen
sub eax, ecx
mov ecx, eax
mov qword [rsp + 0x68], rcx
movss xmm10, dword [0x1408cacec]
movss xmm11, dword [0x1408caca8]
movss xmm12, dword [0x1408cac10]
movss xmm13, dword [0x1408caaf8]
movss xmm14, dword [0x1408ca9e8]
movss xmm15, dword [0x1408ca8b4]
movsd xmm3, qword [0x1408ca768]
movsd xmm4, qword [0x1408ca5b8]
movsd xmm5, qword [0x1408ca168]
movss xmm6, dword [0x1408cac90]
movss xmm7, dword [0x1408cabbc]
movss xmm8, dword [0x1408caa6c]
movss xmm9, dword [0x1408ca900]
movss dword [rsp + 0x20], xmm10
movss dword [rsp + 0x38], xmm11
movss dword [rsp + 0x30], xmm12
movss dword [rsp + 0x28], xmm13
movss dword [rsp + 0x40], xmm14
movss dword [rsp + 0x24], xmm15
movss xmm1, dword [rsp + 0x24]
movss xmm0, dword [rsp + 0x28]
mulss xmm1, xmm0
movss dword [rsp + 0x28], xmm1
movss xmm2, dword [rsp + 0x40]
movss xmm0, dword [rsp + 0x24]
subss xmm2, xmm0
movss dword [rsp + 0x40], xmm2
movss xmm1, dword [rsp + 0x24]
movss xmm0, dword [rsp + 0x40]
mulss xmm1, xmm0
movss dword [rsp + 0x40], xmm1
movss xmm2, dword [rsp + 0x24]
movss xmm0, dword [rsp + 0x40]
mulss xmm2, xmm0
movss dword [rsp + 0x40], xmm2
movss xmm1, dword [rsp + 0x20]
movss xmm0, dword [rsp + 0x24]
subss xmm1, xmm0
movss dword [rsp + 0x20], xmm1
movss xmm2, dword [rsp + 0x38]
movss xmm0, dword [rsp + 0x24]
subss xmm2, xmm0
movss dword [rsp + 0x38], xmm2
movss xmm1, dword [rsp + 0x40]
movss xmm0, dword [rsp + 0x24]
comiss xmm1, xmm0
jbe 0x140112c12
movss xmm1, dword [rsp + 0x24]
movss xmm0, dword [rsp + 0x38]
mulss xmm1, xmm0
movss dword [rsp + 0x24], xmm1
movss xmm2, dword [rsp + 0x40]
movss xmm0, dword [rsp + 0x20]
mulss xmm2, xmm0
movss dword [rsp + 0x40], xmm2
movss xmm1, dword [rsp + 0x28]
movss xmm0, dword [rsp + 0x24]
subss xmm1, xmm0
movss dword [rsp + 0x28], xmm1
inc esi
add r12d, 2
movss xmm1, dword [rsp + 0x30]
movss xmm0, dword [rsp + 0x20]
mulss xmm1, xmm0
movss dword [rsp + 0x20], xmm1
movss xmm2, dword [rsp + 0x40]
movss xmm0, dword [rsp + 0x20]
mulss xmm2, xmm0
movss dword [rsp + 0x40], xmm2
movss xmm1, dword [rsp + 0x28]
movss xmm0, dword [rsp + 0x38]
addss xmm1, xmm0
movss dword [rsp + 0x38], xmm1
jmp 0x140112e3c
movss xmm1, dword [rsp + 0x30]
movss xmm0, dword [rsp + 0x20]
mulss xmm1, xmm0
movss dword [rsp + 0x20], xmm1
movss xmm2, dword [rsp + 0x28]
movss xmm0, dword [rsp + 0x24]
divss xmm2, xmm0
movss dword [rsp + 0x28], xmm2
movss xmm1, dword [rsp + 0x30]
movss xmm0, dword [rsp + 0x20]
mulss xmm1, xmm0
movss dword [rsp + 0x20], xmm1
movss xmm2, dword [rsp + 0x30]
movss xmm0, dword [rsp + 0x40]
divss xmm2, xmm0
movss dword [rsp + 0x30], xmm2
movss xmm1, dword [rsp + 0x20]
movss xmm0, dword [rsp + 0x30]
divss xmm1, xmm0
movss dword [rsp + 0x20], xmm1
movss xmm2, dword [rsp + 0x24]
movss xmm0, dword [rsp + 0x38]
subss xmm2, xmm0
movss dword [rsp + 0x24], xmm2
movss xmm1, dword [rsp + 0x38]
movss xmm0, dword [rsp + 0x20]
mulss xmm1, xmm0
movss dword [rsp + 0x20], xmm1
movss xmm2, dword [rsp + 0x20]
movss xmm0, dword [rsp + 0x38]
subss xmm2, xmm0
movss dword [rsp + 0x20], xmm2
movss xmm1, dword [rsp + 0x24]
movss xmm0, dword [rsp + 0x20]
mulss xmm1, xmm0
movss dword [rsp + 0x24], xmm1
movss xmm2, dword [rsp + 0x40]
movss xmm0, dword [rsp + 0x28]
mulss xmm2, xmm0
movss dword [rsp + 0x28], xmm2
movss xmm1, dword [rsp + 0x24]
movss xmm0, dword [rsp + 0x20]
subss xmm1, xmm0
movss dword [rsp + 0x24], xmm1
movss xmm2, dword [rsp + 0x40]
movss xmm0, dword [rsp + 0x24]
divss xmm2, xmm0
movss dword [rsp + 0x40], xmm2
movss xmm1, dword [rsp + 0x38]
movss xmm0, dword [rsp + 0x28]
comiss xmm1, xmm0
jbe 0x140112db8
movss xmm1, dword [rsp + 0x30]
movss xmm0, dword [rsp + 0x20]
mulss xmm1, xmm0
movss dword [rsp + 0x20], xmm1
movss xmm2, dword [rsp + 0x38]
movss xmm0, dword [rsp + 0x28]
divss xmm2, xmm0
movss dword [rsp + 0x38], xmm2
movss xmm1, dword [rsp + 0x40]
movss xmm0, dword [rsp + 0x20]
mulss xmm1, xmm0
movss dword [rsp + 0x40], xmm1
movss xmm2, dword [rsp + 0x24]
movss xmm0, dword [rsp + 0x38]
subss xmm2, xmm0
movss dword [rsp + 0x24], xmm2
movss xmm1, dword [rsp + 0x24]
movss xmm0, dword [rsp + 0x38]
divss xmm1, xmm0
movss dword [rsp + 0x24], xmm1
movss xmm2, dword [rsp + 0x38]
movss xmm0, dword [rsp + 0x28]
subss xmm2, xmm0
movss dword [rsp + 0x38], xmm2
jmp 0x140112e3c
movss xmm1, dword [rsp + 0x40]
movss xmm0, dword [rsp + 0x20]
mulss xmm1, xmm0
movss dword [rsp + 0x40], xmm1
movss xmm2, dword [rsp + 0x20]
movss xmm0, dword [rsp + 0x30]
subss xmm2, xmm0
movss dword [rsp + 0x20], xmm2
movss xmm1, dword [rsp + 0x30]
movss xmm0, dword [rsp + 0x40]
divss xmm1, xmm0
movss dword [rsp + 0x30], xmm1
movss xmm2, dword [rsp + 0x40]
movss xmm0, dword [rsp + 0x20]
addss xmm2, xmm0
movss dword [rsp + 0x40], xmm2
movss xmm1, dword [rsp + 0x30]
movss xmm0, dword [rsp + 0x20]
mulss xmm1, xmm0
movss dword [rsp + 0x20], xmm1
movss xmm2, dword [rsp + 0x24]
movss xmm0, dword [rsp + 0x38]
subss xmm2, xmm0
movss dword [rsp + 0x24], xmm2
movsd qword [rsp + 0x28], xmm3
movsd qword [rsp + 0x38], xmm4
movsd qword [rsp + 0x30], xmm5
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]
mulsd xmm2, xmm0
movsd qword [rsp + 0x28], xmm2
movsd xmm1, qword [rsp + 0x30]
movsd xmm0, qword [rsp + 0x28]
mulsd xmm1, xmm0
movsd qword [rsp + 0x28], xmm1
movsd xmm1, qword [rsp + 0x30]
movsd xmm0, qword [rsp + 0x28]
movsxd rax, r12d
mov rcx, qword [rsp + 0x60]
comisd xmm1, xmm0
movsd xmm1, qword [rsp + 0x30]
movsd xmm0, qword [rsp + 0x28]
jbe 0x140112ef2
mulsd xmm1, xmm0
movsd qword [rsp + 0x28], xmm1
movsd xmm2, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x30]
subsd xmm2, xmm0
movsd qword [rsp + 0x28], xmm2
movsd xmm1, qword [rsp + 0x38]
movsd xmm0, qword [rsp + 0x28]
mulsd xmm1, xmm0
movsd qword [rsp + 0x38], xmm1
mov edx, dword [rsp + 0x48]
jmp 0x140112f30
addsd xmm1, xmm0
movsd qword [rsp + 0x28], xmm1
movsd xmm2, qword [rsp + 0x30]
movsd xmm0, qword [rsp + 0x38]
addsd xmm2, xmm0
movsd qword [rsp + 0x30], xmm2
movzx edx, byte [rax + rcx]
mov dword [rsp + 0x48], edx
movsd xmm1, qword [rsp + 0x30]
movsd xmm0, qword [rsp + 0x38]
addsd xmm1, xmm0
movsd qword [rsp + 0x30], xmm1
movzx ecx, byte [rax + rcx + 1]
sub ecx, 0xa0
movss xmm0, dword [0x1408cac4c]
movss dword [rsp + 0x30], xmm0
movss xmm0, dword [0x1408cabe4]
movss dword [rsp + 0x38], xmm0
movss xmm0, dword [0x1408cab38]
movss dword [rsp + 0x20], xmm0
movss xmm0, dword [0x1408caa88]
movss dword [rsp + 0x50], xmm0
movss xmm0, dword [0x1408ca9d4]
movss dword [rsp + 0x28], xmm0
movss xmm0, dword [0x1408ca914]
movss dword [rsp + 0x40], xmm0
movss xmm0, dword [0x1408ca844]
movss dword [rsp + 0x24], xmm0
movss xmm1, dword [rsp + 0x24]
movss xmm0, dword [rsp + 0x40]
mulss xmm1, xmm0
movss dword [rsp + 0x40], xmm1
movss xmm2, dword [rsp + 0x24]
movss xmm0, dword [rsp + 0x28]
mulss xmm2, xmm0
movss dword [rsp + 0x28], xmm2
movss xmm1, dword [rsp + 0x20]
movss xmm0, dword [rsp + 0x24]
subss xmm1, xmm0
movss dword [rsp + 0x20], xmm1
movss xmm2, dword [rsp + 0x40]
movss xmm0, dword [rsp + 0x24]
subss xmm2, xmm0
movss dword [rsp + 0x40], xmm2
movss xmm1, dword [rsp + 0x40]
movss xmm0, dword [rsp + 0x24]
subss xmm1, xmm0
movss dword [rsp + 0x40], xmm1
movss xmm2, dword [rsp + 0x24]
movss xmm0, dword [rsp + 0x20]
addss xmm2, xmm0
movss dword [rsp + 0x20], xmm2
movss xmm1, dword [rsp + 0x24]
movss xmm0, dword [rsp + 0x50]
addss xmm1, xmm0
movss dword [rsp + 0x50], xmm1
movss xmm1, dword [rsp + 0x28]
movss xmm0, dword [rsp + 0x24]
comiss xmm1, xmm0
jbe 0x1401130f3
movss xmm1, dword [rsp + 0x40]
movss xmm0, dword [rsp + 0x30]
addss xmm1, xmm0
movss dword [rsp + 0x40], xmm1
movss xmm2, dword [rsp + 0x30]
movss xmm0, dword [rsp + 0x20]
subss xmm2, xmm0
movss dword [rsp + 0x30], xmm2
movss xmm1, dword [rsp + 0x50]
movss xmm0, dword [rsp + 0x38]
addss xmm1, xmm0
movss dword [rsp + 0x38], xmm1
lea r13d, [rdx - 0x16]
shl r13d, 4
movss xmm1, dword [rsp + 0x24]
movss xmm0, dword [rsp + 0x38]
addss xmm1, xmm0
movss dword [rsp + 0x24], xmm1
movss xmm2, dword [rsp + 0x24]
movss xmm0, dword [rsp + 0x28]
mulss xmm2, xmm0
movss dword [rsp + 0x28], xmm2
movss xmm1, dword [rsp + 0x30]
movss xmm0, dword [rsp + 0x20]
subss xmm1, xmm0
movss dword [rsp + 0x30], xmm1
movss xmm2, dword [rsp + 0x30]
movss xmm0, dword [rsp + 0x20]
subss xmm2, xmm0
movss dword [rsp + 0x30], xmm2
jmp 0x14011336f
movss xmm1, dword [rsp + 0x30]
movss xmm0, dword [rsp + 0x38]
divss xmm1, xmm0
movss dword [rsp + 0x30], xmm1
movss xmm2, dword [rsp + 0x24]
movss xmm0, dword [rsp + 0x30]
subss xmm2, xmm0
movss dword [rsp + 0x24], xmm2
movss xmm1, dword [rsp + 0x20]
movss xmm0, dword [rsp + 0x50]
divss xmm1, xmm0
movss dword [rsp + 0x20], xmm1
movss xmm2, dword [rsp + 0x24]
movss xmm0, dword [rsp + 0x40]
addss xmm2, xmm0
movss dword [rsp + 0x40], xmm2
movss xmm1, dword [rsp + 0x40]
movss xmm0, dword [rsp + 0x24]
subss xmm1, xmm0
movss dword [rsp + 0x40], xmm1
movss xmm2, dword [rsp + 0x50]
movss xmm0, dword [rsp + 0x28]
subss xmm2, xmm0
movss dword [rsp + 0x50], xmm2
movss xmm1, dword [rsp + 0x28]
movss xmm0, dword [rsp + 0x40]
subss xmm1, xmm0
movss dword [rsp + 0x28], xmm1
movss xmm2, dword [rsp + 0x20]
movss xmm0, dword [rsp + 0x50]
divss xmm2, xmm0
movss dword [rsp + 0x20], xmm2
movss xmm1, dword [rsp + 0x24]
movss xmm0, dword [rsp + 0x30]
subss xmm1, xmm0
movss dword [rsp + 0x24], xmm1
movss xmm2, dword [rsp + 0x20]
movss xmm0, dword [rsp + 0x50]
subss xmm2, xmm0
movss dword [rsp + 0x20], xmm2
movss xmm1, dword [rsp + 0x24]
movss xmm0, dword [rsp + 0x40]
addss xmm1, xmm0
movss dword [rsp + 0x40], xmm1
movss xmm2, dword [rsp + 0x20]
movss xmm0, dword [rsp + 0x50]
divss xmm2, xmm0
movss dword [rsp + 0x20], xmm2
movss xmm1, dword [rsp + 0x20]
movss xmm0, dword [rsp + 0x38]
addss xmm1, xmm0
movss dword [rsp + 0x38], xmm1
movss xmm2, dword [rsp + 0x50]
movss xmm0, dword [rsp + 0x28]
divss xmm2, xmm0
movss dword [rsp + 0x50], xmm2
movss xmm1, dword [rsp + 0x38]
movss xmm0, dword [rsp + 0x50]
comiss xmm0, xmm1
jbe 0x1401132d5
movss xmm1, dword [rsp + 0x24]
movss xmm0, dword [rsp + 0x30]
mulss xmm1, xmm0
movss dword [rsp + 0x24], xmm1
movss xmm2, dword [rsp + 0x28]
movss xmm0, dword [rsp + 0x40]
subss xmm2, xmm0
movss dword [rsp + 0x28], xmm2
movss xmm1, dword [rsp + 0x38]
movss xmm0, dword [rsp + 0x30]
mulss xmm1, xmm0
movss dword [rsp + 0x30], xmm1
movss xmm2, dword [rsp + 0x20]
movss xmm0, dword [rsp + 0x38]
addss xmm2, xmm0
movss dword [rsp + 0x38], xmm2
movss xmm1, dword [rsp + 0x20]
movss xmm0, dword [rsp + 0x38]
mulss xmm1, xmm0
movss dword [rsp + 0x38], xmm1
movss xmm2, dword [rsp + 0x40]
movss xmm0, dword [rsp + 0x24]
divss xmm2, xmm0
movss dword [rsp + 0x40], xmm2
movss xmm1, dword [rsp + 0x28]
movss xmm0, dword [rsp + 0x50]
addss xmm1, xmm0
jmp 0x140113369
movss xmm1, dword [rsp + 0x38]
movss xmm0, dword [rsp + 0x20]
divss xmm1, xmm0
movss dword [rsp + 0x38], xmm1
movss xmm2, dword [rsp + 0x50]
movss xmm0, dword [rsp + 0x28]
subss xmm2, xmm0
movss dword [rsp + 0x50], xmm2
movss xmm1, dword [rsp + 0x30]
movss xmm0, dword [rsp + 0x38]
divss xmm1, xmm0
movss dword [rsp + 0x30], xmm1
movss xmm2, dword [rsp + 0x24]
movss xmm0, dword [rsp + 0x40]
mulss xmm2, xmm0
movss dword [rsp + 0x40], xmm2
movss xmm1, dword [rsp + 0x24]
movss xmm0, dword [rsp + 0x40]
mulss xmm1, xmm0
movss dword [rsp + 0x40], xmm1
movss xmm2, dword [rsp + 0x38]
movss xmm0, dword [rsp + 0x20]
subss xmm2, xmm0
movss dword [rsp + 0x38], xmm2
movss xmm1, dword [rsp + 0x28]
movss xmm0, dword [rsp + 0x50]
mulss xmm1, xmm0
movss dword [rsp + 0x50], xmm1
movss dword [rsp + 0x28], xmm6
movss dword [rsp + 0x50], xmm7
movss dword [rsp + 0x38], xmm8
movss dword [rsp + 0x30], xmm9
movss xmm1, dword [rsp + 0x50]
movss xmm0, dword [rsp + 0x30]
subss xmm1, xmm0
movss dword [rsp + 0x50], xmm1
movss xmm2, dword [rsp + 0x30]
movss xmm0, dword [rsp + 0x38]
addss xmm2, xmm0
movss dword [rsp + 0x38], xmm2
movss xmm1, dword [rsp + 0x30]
movss xmm0, dword [rsp + 0x38]
addss xmm1, xmm0
movss dword [rsp + 0x38], xmm1
movss xmm2, dword [rsp + 0x28]
movss xmm0, dword [rsp + 0x30]
subss xmm2, xmm0
movss dword [rsp + 0x28], xmm2
movss xmm1, dword [rsp + 0x30]
movss xmm0, dword [rsp + 0x38]
comiss xmm0, xmm1
jbe 0x140113452
movss xmm1, dword [rsp + 0x50]
movss xmm0, dword [rsp + 0x28]
mulss xmm1, xmm0
movss dword [rsp + 0x28], xmm1
mov r11d, r13d
or r11d, ecx
movss xmm1, dword [rsp + 0x30]
movss xmm0, dword [rsp + 0x28]
subss xmm1, xmm0
movss dword [rsp + 0x30], xmm1
movss xmm2, dword [rsp + 0x50]
movss xmm0, dword [rsp + 0x28]
mulss xmm2, xmm0
movss dword [rsp + 0x28], xmm2
movss xmm1, dword [rsp + 0x50]
movss xmm0, dword [rsp + 0x28]
mulss xmm1, xmm0
movss dword [rsp + 0x28], xmm1
jmp 0x1401134aa
movss xmm1, dword [rsp + 0x30]
movss xmm0, dword [rsp + 0x38]
mulss xmm1, xmm0
movss dword [rsp + 0x38], xmm1
movss xmm2, dword [rsp + 0x50]
movss xmm0, dword [rsp + 0x38]
subss xmm2, xmm0
movss dword [rsp + 0x50], xmm2
movss xmm1, dword [rsp + 0x30]
movss xmm0, dword [rsp + 0x28]
divss xmm1, xmm0
movss dword [rsp + 0x30], xmm1
movss xmm2, dword [rsp + 0x38]
movss xmm0, dword [rsp + 0x50]
mulss xmm2, xmm0
movss dword [rsp + 0x50], xmm2
movzx ebx, r11b
movzx r9d, r9b
movzx ecx, byte [rbp + r9 - 0x80]
inc dil
mov rax, qword [rsp + 0x70]
add r15b, byte [rax]
movzx r10d, r15b
movzx eax, byte [rbp + r10 - 0x80]
mov byte [rbp + r9 - 0x80], al
movzx r8d, r8b
movzx eax, byte [rbp + r8 - 0x80]
mov byte [rbp + r10 - 0x80], al
movzx eax, dil
lea rdx, [rbp - 0x80]
add rdx, rax
mov qword [rsp + 0x70], rdx
movzx eax, byte [rdx]
mov byte [rbp + r8 - 0x80], al
mov byte [rdx], cl
mov edx, ecx
add r14b, byte [rbp + rcx - 0x80]
movzx eax, r14b
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, rdx
movzx eax, al
movzx r8d, byte [rbp + rcx - 0x80]
xor r8b, byte [rbp + rax - 0x80]
xor r8b, r11b
movzx r9d, r11b
test esi, esi
je 0x140113556
movsx edx, r8b
lea eax, [rsi - 1]
mov word [rbp + rax*2 + 0x80], dx
sub qword [rsp + 0x68], 1
jne 0x140112ac0
mov r12d, esi
inc esi
movzx r10d, bl
movzx edx, byte [rbp + r10 - 0x80]
movzx eax, dil
inc dil
add r15b, byte [rbp + rax - 0x80]
movzx r11d, r15b
movzx eax, byte [rbp + r11 - 0x80]
mov byte [rbp + r10 - 0x80], al
movzx r9d, r8b
movzx eax, byte [rbp + r9 - 0x80]
mov byte [rbp + r11 - 0x80], al
movzx ecx, dil
movzx eax, byte [rbp + rcx - 0x80]
mov byte [rbp + r9 - 0x80], al
mov byte [rbp + rcx - 0x80], dl
mov r8d, edx
add r14b, byte [rbp + rdx - 0x80]
lea eax, [rsi + rsi]
movsxd rcx, eax
mov rax, qword [rsp + 0x60]
movzx edx, byte [rcx + rax + 1]
add dl, 0x60
movzx eax, byte [rcx + rax]
sub al, 6
shl al, 4
or dl, al
movzx eax, r14b
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]
xor dl, byte [rbp + rcx - 0x80]
movzx eax, byte [rbp + r11 - 0x80]
add rax, r8
movzx ecx, al
xor dl, byte [rbp + rcx - 0x80]
test esi, esi
je 0x14011361a
movsx ecx, dl
mov word [rbp + r12*2 + 0x80], cx
xor r15d, r15d
mov word [rbp + 0x98], r15w
mov ecx, 8
call fcn.140890c80
mov qword [rsp + 0x68], rax
test rax, rax
je 0x14011364b
lea rdx, [rbp + 0x80]
mov rcx, rax
call fcn.1400a6900
nop
jmp 0x14011364e
mov rax, r15
mov rcx, qword [rbp + 0xa0]
xor rcx, rsp
call fcn.140890ac0
lea r11, [rsp + 0x250]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x70]
movaps xmm13, xmmword [r11 - 0x80]
movaps xmm14, xmmword [r11 - 0x90]
movaps xmm15, xmmword [r11 - 0xa0]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret