Function at 0x140831cf0
Capabilities:
Encrypt data using rc4 ksa

Disassembly:
mov r11, rsp
push rbp
push rbx
lea rbp, [r11 - 0x108]
sub rsp, 0x1f8
mov rax, qword [0x140a7a0a8]
xor rax, rsp
mov qword [rbp + 0x80], rax
movaps xmmword [r11 - 0x38], xmm6
mov rbx, rcx
movaps xmmword [r11 - 0x48], xmm7
movaps xmmword [r11 - 0x58], xmm8
mov qword [rsp + 0x68], rcx
call fcn.140831900
mov ecx, 0x2000
call fcn.1400e3e10
mov edx, 0x2000
mov qword [rbx], rax
mov rcx, rax
call fcn.1400e57d0
movsd xmm4, qword [0x1408e4cc8]
xorps xmm3, xmm3
movsd qword [rsp + 0x28], xmm3
movsd qword [rsp + 0x20], xmm3
movsd qword [rsp + 0x28], xmm3
movsd qword [rsp + 0x20], xmm3
movsd qword [rsp + 0x20], xmm3
movsd xmm0, qword [rsp + 0x20]
comisd xmm4, xmm0
jbe 0x140831e73
movsd xmm7, qword [0x1408e44f0]
movsd xmm8, qword [0x1408e4360]
movsd xmm5, qword [0x1408e42c0]
movsd xmm6, qword [0x1408e4240]
movaps xmmword [rsp + 0x1a0], xmm9
movsd xmm9, qword [0x1408e43d0]
movaps xmmword [rsp + 0x190], xmm10
movsd xmm10, qword [0x1408e4498]
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 + 0x28]
movsd qword [rsp + 0x28], xmm2
movsd xmm0, qword [rsp + 0x28]
comisd xmm0, xmm10
jbe 0x140831e41
movsd xmm1, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x20]
mulsd xmm0, xmm5
subsd xmm1, xmm0
movsd qword [rsp + 0x28], xmm1
movsd xmm0, qword [rsp + 0x20]
addsd xmm0, xmm6
movsd qword [rsp + 0x20], xmm0
movsd xmm1, qword [rsp + 0x20]
comisd xmm4, xmm1
ja 0x140831dd0
movaps xmm10, xmmword [rsp + 0x190]
movaps xmm9, xmmword [rsp + 0x1a0]
movsd xmm0, qword [rsp + 0x28]
comisd xmm3, xmm0
jbe 0x140831e8e
call fcn.1408a41ac
call int.1408a41ba
jmp 0x140833260
mov qword [rsp + 0x218], rsi
lea rcx, [rbp - 0x80]
mov qword [rsp + 0x220], rdi
mov qword [rsp + 0x228], r12
mov qword [rsp + 0x1f0], r13
mov qword [rsp + 0x1e8], r14
mov qword [rsp + 0x1e0], r15
xor r15d, r15d
mov eax, r15d
nop dword [rax + rax]
mov byte [rcx], al
lea rcx, [rcx + 1]
inc eax
cmp eax, 0x100
jb 0x140831ed0
mov r9d, r15d
lea r14, [int.1408a41ba]
xor cl, cl
mov esi, 1
mov r10d, 0xff
nop word [rax + rax]
mov edi, r15d
mov r11d, esi
cmp r10d, esi
jbe 0x140831f20
nop dword [rax + rax]
lea r11d, [r11*2 + 1]
cmp r11d, r10d
jb 0x140831f10
nop dword [rax]
movzx eax, cl
movzx edx, byte [rbp + rax - 0x80]
mov eax, r9d
test r9d, r9d
je 0x140831f77
sub eax, esi
je 0x140831f67
sub eax, esi
je 0x140831f57
cmp eax, esi
je 0x140831f47
lea eax, [r9 - 4]
movzx eax, byte [rax + r14]
jmp 0x140831f82
movsd xmm0, qword [rsp + 0x28]
cvttsd2si rax, xmm0
shr eax, 0x18
jmp 0x140831f82
movsd xmm0, qword [rsp + 0x28]
cvttsd2si rax, xmm0
shr eax, 0x10
jmp 0x140831f82
movsd xmm0, qword [rsp + 0x28]
cvttsd2si rax, xmm0
shr eax, 8
jmp 0x140831f82
movsd xmm0, qword [rsp + 0x28]
cvttsd2si rax, xmm0
add al, dl
lea r8d, [r9 + 1]
movzx edx, al
cmp r8d, 0x17
mov r9d, r15d
cmovb r9d, r8d
lea eax, [rdx + 0x17]
movzx ecx, al
cmovb ecx, edx
inc edi
movzx ebx, cl
mov eax, ebx
and eax, r11d
cmp edi, 0xb
jbe 0x140831fb5
xor edx, edx
div r10d
mov eax, edx
movzx ecx, bl
cmp eax, r10d
ja 0x140831f20
je 0x140831fe2
mov edx, eax
mov ecx, r10d
movzx eax, byte [rbp + rdx - 0x80]
xor al, byte [rbp + rcx - 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 r10d, 0xffffffff
jne 0x140831f00
movzx r14d, byte [rbp - 0x7b]
movzx edx, byte [rbp - 0x79]
movzx r8d, byte [rbp + rbx - 0x80]
movsd xmm0, qword [0x1408e4c58]
movsd xmm1, qword [0x1408e4b50]
movsd qword [rsp + 0x28], xmm0
movsd xmm0, qword [0x1408e4918]
movsd qword [rsp + 0x30], xmm1
movsd xmm1, qword [0x1408e46c8]
movsd qword [rsp + 0x20], xmm0
movsd qword [rsp + 0x38], xmm1
movsd xmm2, qword [rsp + 0x38]
movsd xmm0, qword [rsp + 0x20]
mulsd xmm2, xmm0
movsd qword [rsp + 0x20], xmm2
movsd xmm1, qword [rsp + 0x38]
movsd xmm0, qword [rsp + 0x20]
mulsd xmm1, xmm0
movsd qword [rsp + 0x20], 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]
mulsd xmm1, xmm0
movsd qword [rsp + 0x20], xmm1
movsd xmm1, qword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x38]
comisd xmm1, xmm0
jbe 0x1408320fd
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 + 0x38]
movsd xmm0, qword [rsp + 0x28]
mulsd xmm1, xmm0
movsd qword [rsp + 0x38], xmm1
movsd xmm2, qword [rsp + 0x30]
movsd xmm0, qword [rsp + 0x20]
subsd xmm2, xmm0
movsd qword [rsp + 0x30], xmm2
jmp 0x140832265
movsd xmm1, qword [rsp + 0x30]
movsd xmm0, qword [rsp + 0x20]
subsd xmm1, xmm0
movsd qword [rsp + 0x30], xmm1
movsd xmm2, qword [rsp + 0x38]
movsd xmm0, qword [rsp + 0x20]
addsd xmm2, xmm0
movsd qword [rsp + 0x20], xmm2
movsd xmm1, qword [rsp + 0x38]
movsd xmm0, qword [rsp + 0x28]
subsd xmm1, xmm0
movsd qword [rsp + 0x38], xmm1
movsd xmm2, qword [rsp + 0x30]
movsd xmm0, qword [rsp + 0x28]
mulsd xmm2, xmm0
movsd qword [rsp + 0x28], xmm2
movsd xmm1, qword [rsp + 0x38]
movsd xmm0, qword [rsp + 0x20]
mulsd xmm1, xmm0
movsd qword [rsp + 0x20], xmm1
movsd xmm2, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x30]
divsd xmm2, xmm0
movsd qword [rsp + 0x28], xmm2
movsd xmm1, qword [rsp + 0x38]
movsd xmm0, qword [rsp + 0x28]
addsd xmm1, 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 + 0x28]
movsd xmm0, qword [rsp + 0x20]
comisd xmm0, xmm1
movsd xmm1, qword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x28]
jbe 0x140832219
addsd xmm1, xmm0
movsd qword [rsp + 0x28], xmm1
movsd xmm2, qword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x28]
addsd xmm2, xmm0
movsd qword [rsp + 0x28], xmm2
movsd xmm1, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x20]
subsd xmm1, xmm0
movsd qword [rsp + 0x28], xmm1
movsd xmm2, qword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x28]
addsd xmm2, xmm0
movsd qword [rsp + 0x28], xmm2
jmp 0x140832265
mulsd 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 + 0x20]
movsd xmm0, qword [rsp + 0x28]
mulsd xmm1, xmm0
movsd qword [rsp + 0x28], xmm1
movsd xmm2, qword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x28]
addsd xmm2, xmm0
movsd qword [rsp + 0x20], xmm2
movsd xmm0, qword [0x1408e4aa8]
lea r13, [fcn.1408a41ac]
movzx r10d, byte [r13]
movsd xmm1, qword [0x1408e49a0]
movsd qword [rsp + 0x30], xmm0
movsd qword [rsp + 0x38], xmm1
movsd xmm0, qword [0x1408e48c0]
movsd xmm1, qword [0x1408e47e8]
movsd qword [rsp + 0x58], xmm0
movsd xmm0, qword [0x1408e4708]
movsd qword [rsp + 0x40], xmm1
movsd xmm1, qword [0x1408e4600]
movsd qword [rsp + 0x28], xmm0
movsd xmm0, qword [0x1408e4538]
movsd qword [rsp + 0x48], xmm1
movsd qword [rsp + 0x20], xmm0
movsd xmm1, qword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x30]
addsd xmm1, xmm0
movsd qword [rsp + 0x30], xmm1
movsd xmm2, qword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x40]
addsd xmm2, xmm0
movsd qword [rsp + 0x40], 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 + 0x20]
subsd xmm2, xmm0
movsd qword [rsp + 0x28], xmm2
movsd xmm1, qword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x38]
addsd xmm1, xmm0
movsd qword [rsp + 0x38], xmm1
movsd xmm2, qword [rsp + 0x48]
movsd xmm0, qword [rsp + 0x20]
subsd xmm2, xmm0
movsd qword [rsp + 0x48], xmm2
movsd xmm1, qword [rsp + 0x38]
movsd xmm0, qword [rsp + 0x20]
subsd xmm1, xmm0
movsd qword [rsp + 0x38], xmm1
movsd xmm1, qword [rsp + 0x40]
movsd xmm0, qword [rsp + 0x48]
comisd xmm0, xmm1
movsd xmm1, qword [rsp + 0x28]
jbe 0x140832424
movsd xmm0, qword [rsp + 0x48]
xor cl, cl
subsd xmm1, xmm0
movsd qword [rsp + 0x28], xmm1
movsd xmm2, qword [rsp + 0x48]
movsd xmm0, qword [rsp + 0x28]
mulsd xmm2, xmm0
movsd qword [rsp + 0x28], xmm2
movsd xmm1, qword [rsp + 0x38]
movsd xmm0, qword [rsp + 0x58]
subsd xmm1, xmm0
movsd qword [rsp + 0x38], xmm1
movsd xmm2, qword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x30]
subsd xmm2, xmm0
movsd qword [rsp + 0x20], xmm2
movsd xmm1, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x48]
divsd xmm1, xmm0
movsd qword [rsp + 0x28], xmm1
movsd xmm2, qword [rsp + 0x38]
movsd xmm0, qword [rsp + 0x30]
addsd xmm2, xmm0
movsd qword [rsp + 0x30], xmm2
movsd xmm1, qword [rsp + 0x30]
movsd xmm0, qword [rsp + 0x38]
divsd xmm1, xmm0
movsd qword [rsp + 0x30], xmm1
jmp 0x1408324bd
movsd xmm0, qword [rsp + 0x20]
subsd xmm1, xmm0
movsd qword [rsp + 0x28], xmm1
movsd xmm2, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x58]
mulsd xmm2, xmm0
movsd qword [rsp + 0x58], xmm2
movsd xmm1, qword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x28]
mulsd xmm1, xmm0
movsd qword [rsp + 0x28], xmm1
movsd xmm2, qword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x38]
mulsd xmm2, xmm0
movsd qword [rsp + 0x20], xmm2
movsd xmm1, qword [rsp + 0x40]
movsd xmm0, qword [rsp + 0x38]
movzx ecx, byte [r13 + 1]
addsd xmm1, xmm0
movsd qword [rsp + 0x38], xmm1
movsd xmm1, qword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x28]
mulsd xmm1, xmm0
movsd qword [rsp + 0x28], xmm1
movsd xmm2, qword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x38]
addsd xmm2, xmm0
movsd qword [rsp + 0x20], xmm2
movsd xmm0, qword [0x1408e4c48]
movsd xmm1, qword [0x1408e4b28]
movsd qword [rsp + 0x30], xmm0
movsd xmm0, qword [0x1408e4908]
movsd qword [rsp + 0x20], xmm1
movsd xmm1, qword [0x1408e46b8]
movsd qword [rsp + 0x38], xmm0
movsd qword [rsp + 0x28], 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 + 0x38]
movsd xmm0, qword [rsp + 0x28]
subsd xmm2, xmm0
movsd qword [rsp + 0x38], xmm2
movsd xmm1, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x20]
addsd xmm1, xmm0
movsd qword [rsp + 0x20], xmm1
movsd xmm1, qword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x38]
comisd xmm1, xmm0
movsd xmm1, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x20]
jbe 0x1408325be
mulsd xmm1, xmm0
mov al, reloc.WS2_32.dll_ntohs
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 + 0x28]
subsd 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
jmp 0x140832728
divsd xmm1, xmm0
xor al, al
movsd qword [rsp + 0x28], xmm1
movsd xmm2, qword [rsp + 0x38]
movsd xmm0, qword [rsp + 0x30]
divsd xmm2, xmm0
movsd qword [rsp + 0x38], xmm2
movsd xmm1, qword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x28]
divsd xmm1, xmm0
movsd qword [rsp + 0x20], xmm1
movsd xmm2, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x20]
subsd xmm2, xmm0
movsd qword [rsp + 0x28], xmm2
movsd xmm1, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x38]
mulsd xmm1, xmm0
movsd qword [rsp + 0x38], xmm1
movsd xmm2, qword [rsp + 0x30]
movsd xmm0, qword [rsp + 0x20]
subsd xmm2, xmm0
movsd qword [rsp + 0x30], xmm2
movsd xmm1, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x38]
mulsd 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 + 0x38]
movsd xmm0, qword [rsp + 0x30]
comisd xmm0, xmm1
jbe 0x1408326d0
movsd xmm1, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x20]
divsd xmm1, xmm0
movsd qword [rsp + 0x28], xmm1
movsd xmm2, qword [rsp + 0x38]
movsd xmm0, qword [rsp + 0x30]
subsd 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 + 0x28]
movsd xmm0, qword [rsp + 0x20]
mulsd xmm2, xmm0
movsd qword [rsp + 0x28], xmm2
jmp 0x140832728
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 + 0x30]
addsd xmm2, xmm0
movsd qword [rsp + 0x28], xmm2
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]
mulsd xmm2, xmm0
movsd qword [rsp + 0x20], xmm2
movsd xmm0, qword [0x1408e4af8]
movsd xmm1, qword [0x1408e49e8]
movsd qword [rsp + 0x30], xmm0
movsd xmm0, qword [0x1408e48e0]
movsd qword [rsp + 0x20], xmm1
movsd xmm1, qword [0x1408e47c0]
movsd qword [rsp + 0x40], xmm0
movsd xmm0, qword [0x1408e4698]
movsd qword [rsp + 0x48], xmm1
movsd xmm1, qword [0x1408e4578]
movsd qword [rsp + 0x28], xmm0
movsd qword [rsp + 0x38], xmm1
movsd xmm2, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x38]
subsd xmm2, xmm0
movsd qword [rsp + 0x28], xmm2
movsd xmm1, qword [rsp + 0x38]
movsd xmm0, qword [rsp + 0x30]
addsd xmm1, xmm0
movsd qword [rsp + 0x30], xmm1
movsd xmm2, qword [rsp + 0x38]
movsd xmm0, qword [rsp + 0x20]
addsd xmm2, xmm0
movsd qword [rsp + 0x20], xmm2
movsd xmm1, qword [rsp + 0x38]
movsd xmm0, qword [rsp + 0x48]
addsd xmm1, xmm0
movsd qword [rsp + 0x48], xmm1
movsd xmm2, qword [rsp + 0x38]
movsd xmm0, qword [rsp + 0x28]
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 xmm1, qword [rsp + 0x30]
movsd xmm0, qword [rsp + 0x38]
comisd xmm1, xmm0
jbe 0x14083289f
movsd xmm1, qword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x48]
subsd xmm1, xmm0
movsd qword [rsp + 0x20], xmm1
movsd xmm2, qword [rsp + 0x48]
movsd xmm0, qword [rsp + 0x20]
addsd xmm2, xmm0
movsd qword [rsp + 0x20], xmm2
movsd xmm1, qword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x48]
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 + 0x40]
movsd xmm0, qword [rsp + 0x30]
mulsd xmm1, xmm0
movsd qword [rsp + 0x30], xmm1
movsd xmm2, qword [rsp + 0x48]
movsd xmm0, qword [rsp + 0x20]
mulsd xmm2, xmm0
movsd qword [rsp + 0x20], xmm2
jmp 0x140832923
movsd xmm1, qword [rsp + 0x48]
movsd xmm0, qword [rsp + 0x38]
divsd xmm1, xmm0
movsd qword [rsp + 0x48], xmm1
movsd xmm2, qword [rsp + 0x38]
movsd xmm0, qword [rsp + 0x20]
subsd xmm2, xmm0
movsd qword [rsp + 0x38], xmm2
movsd xmm1, qword [rsp + 0x40]
movsd xmm0, qword [rsp + 0x28]
subsd xmm1, xmm0
movsd qword [rsp + 0x40], xmm1
movsd xmm2, qword [rsp + 0x40]
movsd xmm0, qword [rsp + 0x30]
mulsd xmm2, xmm0
movsd qword [rsp + 0x30], xmm2
movsd xmm1, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x30]
mulsd xmm1, xmm0
movsd qword [rsp + 0x28], xmm1
movsd xmm2, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x30]
addsd xmm2, xmm0
movsd qword [rsp + 0x28], xmm2
movzx edi, byte [rbp + r8 - 0x80]
lea ebx, [r10 - 0x44]
movzx r12d, byte [rbp - 0x7d]
sub cl, al
movzx eax, byte [rbp - 0x7f]
mov r9, r8
movsd xmm0, qword [0x1408e4c50]
mov r11d, 2
movsd xmm1, qword [0x1408e4ab8]
shl bl, 4
add r12b, byte [rbp + rax - 0x80]
lea r15d, [rax + 1]
or bl, cl
movzx r8d, r12b
movzx ecx, r15b
mov qword [rsp + 0x60], r11
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], dil
add r14b, byte [rbp + rdi - 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 ecx, byte [rbp + r8 - 0x80]
add rcx, rdi
movzx edx, byte [rbp + rax - 0x80]
movzx eax, cl
movzx r8d, byte [rbp + rdx - 0x80]
xor r8b, byte [rbp + rax - 0x80]
movsd qword [rsp + 0x28], xmm0
xor r8b, bl
movsd xmm0, qword [0x1408e4798]
movsd qword [rsp + 0x20], xmm1
movsd qword [rsp + 0x38], xmm0
movsd xmm1, qword [rsp + 0x38]
movsd xmm0, qword [rsp + 0x28]
mulsd xmm1, xmm0
movsd qword [rsp + 0x28], xmm1
movsd xmm2, qword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x38]
subsd xmm2, xmm0
movsd qword [rsp + 0x20], xmm2
movsd xmm1, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x38]
subsd xmm1, xmm0
movsd qword [rsp + 0x28], xmm1
movsd xmm1, qword [rsp + 0x28]
movsd xmm0, qword [rsp + 0x20]
comisd xmm1, xmm0
movsd xmm1, qword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x28]
addsd xmm1, xmm0
jbe 0x140832a87
movzx r10d, byte [r13 + 2]
movsd qword [rsp + 0x28], xmm1
movsd xmm1, qword [rsp + 0x38]
movsd xmm0, qword [rsp + 0x28]
addsd xmm1, xmm0
movsd qword [rsp + 0x38], xmm1
movsd xmm2, qword [rsp + 0x20]
movsd xmm0, qword [rsp + 0x38]
subsd xmm2, xmm0
movsd qword [rsp + 0x20], xmm2
jmp 0x140832ab9
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 + 0x38]
movsd xmm0, qword [rsp + 0x20]
subsd xmm1, xmm0
movsd qword [rsp + 0x38], xmm1
movzx ecx, byte [r13 + 3]
lea rdx, [rbp - 0x80]
movss xmm3, dword [0x1408e4fec]
sub cl, 0xf
movss xmm4, dword [0x1408e4ef0]
sub r10b, 4
movss xmm5, dword [0x1408e4dcc]
add r12b, dil
movzx r9d, bl
inc r15b
movzx r8d, r8b
mov ebx, r11d
shl r10b, 4
mov rdi, r11
or r10b, cl
movzx ecx, byte [rbp + r9 - 0x80]
mov byte [rsp + 0x50], r10b
movzx r10d, r12b
movzx eax, byte [rbp + r10 - 0x80]
mov byte [rbp + r9 - 0x80], al
movzx eax, byte [rbp + r8 - 0x80]
mov byte [rbp + r10 - 0x80], al
movzx eax, r15b
add rdx, rax
mov qword [rsp + 0x58], 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]
movzx r8d, byte [rsp + 0x50]
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]
xor dl, r8b
movsx eax, dl
mov word [rsp + 0x70], ax
nop word [rax + rax]
movss dword [rsp + 0x30], xmm3
add ebx, 2
movss dword [rsp + 0x40], xmm4
movss dword [rsp + 0x48], xmm5
movss xmm1, dword [rsp + 0x48]
movss xmm0, dword [rsp + 0x40]
mulss xmm1, xmm0
mov r13d, esi
inc esi
movss dword [rsp + 0x40], xmm1
movss xmm2, dword [rsp + 0x48]
movss xmm0, dword [rsp + 0x30]
mulss xmm2, xmm0
movss dword [rsp + 0x30], xmm2
movss xmm1, dword [rsp + 0x48]
movss xmm0, dword [rsp + 0x40]
addss xmm1, xmm0
movss dword [rsp + 0x40], xmm1
movss xmm1, dword [rsp + 0x30]
movss xmm0, dword [rsp + 0x48]
comiss xmm1, xmm0
movss xmm1, dword [rsp + 0x40]
movss xmm0, dword [rsp + 0x30]
jbe 0x140832c43
addss xmm1, xmm0
mov r11d, ebx
mov qword [rsp + 0x60], r11
movss dword [rsp + 0x30], xmm1
movss xmm2, dword [rsp + 0x48]
movss xmm0, dword [rsp + 0x40]
addss xmm2, xmm0
movss dword [rsp + 0x40], xmm2
movss xmm1, dword [rsp + 0x48]
movss xmm0, dword [rsp + 0x30]
addss xmm1, xmm0
jmp 0x140832c73
mulss xmm1, xmm0
movss dword [rsp + 0x30], 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 + 0x30]
mulss xmm1, xmm0
lea r9, [fcn.1408a41ac]
movsxd rax, ebx
inc r15b
movss dword [rsp + 0x48], xmm1
movzx ecx, byte [rax + r9 + 1]
sub ecx, 0xf
movsxd rax, r11d
mov dword [rsp + 0x28], ecx
movzx r11d, byte [rax + r9]
movzx r9d, r8b
sub r11b, 4
movzx r8d, dl
shl r11b, 4
or r11b, cl
lea rcx, [rbp - 0x80]
movzx eax, byte [rbp + r9 - 0x80]
mov byte [rsp + 0x50], al
mov rax, qword [rsp + 0x58]
add r12b, byte [rax]
movzx r10d, r12b
movzx eax, byte [rbp + r10 - 0x80]
mov byte [rbp + r9 - 0x80], al
movzx eax, byte [rbp + r8 - 0x80]
mov byte [rbp + r10 - 0x80], al
movzx eax, r15b
add rcx, rax
mov qword [rsp + 0x58], rcx
movzx eax, byte [rcx]
mov byte [rbp + r8 - 0x80], al
movzx eax, byte [rsp + 0x50]
mov byte [rcx], al
mov edx, eax
add r14b, byte [rbp + rax - 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 r8d, r11b
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]
xor dl, r11b
test esi, esi
je 0x140832d4c
movsx ecx, dl
mov word [rsp + r13*2 + 0x70], cx
mov r11, qword [rsp + 0x60]
sub rdi, 1
jne 0x140832b90
movss xmm0, dword [0x1408e5030]
lea rcx, [fcn.1408a41ac]
movss xmm1, dword [0x1408e4f80]
mov dword [rsp + 0x20], esi
inc esi
lea ebx, [rsi + rsi]
movsxd rax, ebx
add rax, rcx
movzx ecx, byte [rax + 1]
movzx r13d, byte [rax]
movss dword [rsp + 0x40], xmm0
sub r13d, 0x44
movss xmm0, dword [0x1408e4e20]
mov r11d, r13d
movss dword [rsp + 0x48], xmm1
movss dword [rsp + 0x30], xmm0
movss xmm1, dword [rsp + 0x30]
movss xmm0, dword [rsp + 0x48]
addss xmm1, xmm0
shl r11d, 4
mov dword [rsp + 0x38], ecx
movss dword [rsp + 0x48], xmm1
movss xmm2, dword [rsp + 0x40]
movss xmm0, dword [rsp + 0x30]
subss xmm2, xmm0
movss dword [rsp + 0x40], xmm2
movss xmm1, dword [rsp + 0x48]
movss xmm0, dword [rsp + 0x30]
subss xmm1, xmm0
movss dword [rsp + 0x48], xmm1
movss xmm1, dword [rsp + 0x30]
movss xmm0, dword [rsp + 0x48]
comiss xmm0, xmm1
jbe 0x140832e46
movss xmm1, dword [rsp + 0x48]
lea eax, [rcx - 0xf]
movss xmm0, dword [rsp + 0x40]
subss xmm1, xmm0
movss dword [rsp + 0x48], 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 + 0x40]
mulss xmm1, xmm0
jmp 0x140832e86
movss xmm1, dword [rsp + 0x30]
movss xmm0, dword [rsp + 0x40]
mov eax, dword [rsp + 0x28]
addss 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 + 0x40]
addss xmm1, xmm0
movzx ecx, byte [rbp + r8 - 0x80]
or r11b, al
add r12b, byte [rsp + 0x50]
mov r10, r8
movzx r9d, r12b
inc r15b
movss dword [rsp + 0x40], xmm1
mov dword [rsp + 0x28], r11d
movzx eax, byte [rbp + r9 - 0x80]
mov byte [rbp + r8 - 0x80], al
movzx r8d, dl
lea rdx, [rbp - 0x80]
movzx eax, byte [rbp + r8 - 0x80]
mov byte [rbp + r9 - 0x80], al
movzx eax, r15b
add rdx, rax
mov qword [rsp + 0x60], 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 edx, byte [rbp + rcx - 0x80]
xor dl, byte [rbp + rax - 0x80]
xor dl, r11b
test esi, esi
je 0x140832f2f
mov eax, dword [rsp + 0x20]
movsx ecx, dl
mov word [rsp + rax*2 + 0x70], cx
lea ecx, [rsi + 1]
cmp ecx, 8
jge 0x140833224
movss xmm6, dword [0x1408e504c]
mov edi, 8
movss xmm7, dword [0x1408e4fa0]
sub edi, ecx
movss xmm8, dword [0x1408e4e34]
movss xmm3, dword [0x1408e4ff4]
movss xmm4, dword [0x1408e4ef8]
movss xmm5, dword [0x1408e4dd4]
mov r8d, dword [rsp + 0x28]
nop dword [rax + rax]
add ebx, 2
mov dword [rsp + 0x20], esi
lea rcx, [fcn.1408a41ac]
movsxd rax, ebx
add rax, rcx
inc esi
movzx ecx, byte [rax]
movss dword [rsp + 0x40], xmm6
movss dword [rsp + 0x30], xmm7
movss dword [rsp + 0x48], xmm8
movss xmm1, dword [rsp + 0x48]
movss xmm0, dword [rsp + 0x30]
addss xmm1, xmm0
movss dword [rsp + 0x30], xmm1
movss xmm2, dword [rsp + 0x40]
movss xmm0, dword [rsp + 0x48]
subss xmm2, xmm0
movss dword [rsp + 0x40], xmm2
movss xmm1, dword [rsp + 0x40]
movss xmm0, dword [rsp + 0x48]
subss xmm1, xmm0
movss dword [rsp + 0x40], xmm1
movss xmm1, dword [rsp + 0x30]
movss xmm0, dword [rsp + 0x40]
comiss xmm1, xmm0
jbe 0x14083304b
movss xmm1, dword [rsp + 0x48]
movss xmm0, dword [rsp + 0x40]
movzx eax, byte [rax + 1]
mulss xmm1, xmm0
mov dword [rsp + 0x38], eax
movss dword [rsp + 0x48], xmm1
movss xmm2, dword [rsp + 0x48]
movss xmm0, dword [rsp + 0x40]
subss xmm2, xmm0
movss dword [rsp + 0x48], xmm2
movss xmm1, dword [rsp + 0x48]
movss xmm0, dword [rsp + 0x30]
addss xmm1, xmm0
movss dword [rsp + 0x30], xmm1
jmp 0x140833091
movss xmm1, dword [rsp + 0x40]
movss xmm0, dword [rsp + 0x30]
mov eax, dword [rsp + 0x38]
divss xmm1, xmm0
movss dword [rsp + 0x40], 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 + 0x30]
subss xmm1, xmm0
movss dword [rsp + 0x40], xmm1
movss dword [rsp + 0x40], xmm3
movss dword [rsp + 0x30], xmm4
movss dword [rsp + 0x48], xmm5
movss xmm1, dword [rsp + 0x30]
movss xmm0, dword [rsp + 0x48]
subss xmm1, xmm0
movss dword [rsp + 0x30], xmm1
movss xmm2, dword [rsp + 0x48]
movss xmm0, dword [rsp + 0x40]
addss xmm2, xmm0
movss dword [rsp + 0x40], xmm2
movss xmm1, dword [rsp + 0x48]
movss xmm0, dword [rsp + 0x40]
mulss xmm1, xmm0
movss dword [rsp + 0x40], xmm1
movss xmm1, dword [rsp + 0x30]
movss xmm0, dword [rsp + 0x40]
comiss xmm1, xmm0
movss xmm1, dword [rsp + 0x30]
movss xmm0, dword [rsp + 0x40]
addss xmm1, xmm0
jbe 0x140833134
movss dword [rsp + 0x30], xmm1
movss xmm2, dword [rsp + 0x48]
movss xmm0, dword [rsp + 0x40]
mulss xmm2, xmm0
movss dword [rsp + 0x40], xmm2
movss xmm1, dword [rsp + 0x40]
movss xmm0, dword [rsp + 0x48]
subss xmm1, xmm0
jmp 0x140833164
movss dword [rsp + 0x40], xmm1
lea r13d, [rcx - 0x44]
movss xmm2, dword [rsp + 0x30]
movss xmm0, dword [rsp + 0x48]
subss xmm2, xmm0
movss dword [rsp + 0x30], xmm2
movss xmm1, dword [rsp + 0x30]
movss xmm0, dword [rsp + 0x40]
addss xmm1, xmm0
sub al, 0xf
movzx r9d, r8b
movzx r8d, dl
inc r15b
movzx r11d, r13b
movss dword [rsp + 0x40], xmm1
shl r11b, 4
lea rdx, [rbp - 0x80]
movzx ecx, byte [rbp + r9 - 0x80]
or r11b, al
mov rax, qword [rsp + 0x60]
add r12b, byte [rax]
movzx r10d, r12b
movzx eax, byte [rbp + r10 - 0x80]
mov byte [rbp + r9 - 0x80], al
movzx eax, byte [rbp + r8 - 0x80]
mov byte [rbp + r10 - 0x80], al
movzx eax, r15b
add rdx, rax
mov qword [rsp + 0x60], 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 r8d, r11b
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]
xor dl, r11b
test esi, esi
je 0x14083321a
mov eax, dword [rsp + 0x20]
movsx ecx, dl
mov word [rsp + rax*2 + 0x70], cx
sub rdi, 1
jne 0x140832f80
mov rbx, qword [rsp + 0x68]
xor eax, eax
mov r15, qword [rsp + 0x1e0]
mov r14, qword [rsp + 0x1e8]
mov r13, qword [rsp + 0x1f0]
mov r12, qword [rsp + 0x228]
mov rdi, qword [rsp + 0x220]
mov rsi, qword [rsp + 0x218]
mov word [rsp + 0x7c], ax
mov r8, qword [rbx]
lea rdx, [rsp + 0x70]
movaps xmm8, xmmword [rsp + 0x1b0]
movaps xmm7, xmmword [rsp + 0x1c0]
movaps xmm6, xmmword [rsp + 0x1d0]
movzx ecx, word [rdx]
lea rdx, [rdx + 2]
mov word [r8], cx
lea r8, [r8 + 2]
test cx, cx
jne 0x140833281
mov rax, qword [rbx]
mov rcx, qword [rbp + 0x80]
xor rcx, rsp
call fcn.1408ac9a0
add rsp, 0x1f8
pop rbx
pop rbp
ret