Function at 0x14012d420
Capabilities:
Encrypt data using rc4 ksa

Disassembly:
mov rax, rsp
mov qword [rax + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x1f8]
sub rsp, 0x2c0
movaps xmmword [rax - 0x48], xmm6
movaps xmmword [rax - 0x58], xmm7
movaps xmmword [rax - 0x68], xmm8
movaps xmmword [rax - 0x78], xmm9
movaps xmmword [rax - 0x88], xmm10
mov rax, qword [0x140a630a8]
xor rax, rsp
mov qword [rbp + 0x160], rax
mov rbx, r8
mov qword [rbp - 0x58], rdx
xorps xmm0, xmm0
movups xmmword [rbp], xmm0
xorps xmm1, xmm1
movups xmmword [rbp - 0x50], xmm1
mov rdx, rcx
lea rcx, [rbp + 0x30]
call fcn.1400bd780
nop
mov r8, rax
lea rdx, [0x1408cc568]
lea rcx, [rbp + 0x10]
call fcn.14011a990
nop
lea rcx, [rbp + 0x30]
call fcn.140091230
lea rcx, [rbp + 0x10]
call fcn.140108fe0
mov rdx, rax
lea rcx, [rbp - 0x50]
call rbx
xor r15d, r15d
mov qword [rbp - 0x40], 0x30
mov qword [rbp - 0x28], 0x40
mov qword [rbp - 0x38], r15
lea rax, [rbp - 0x50]
mov qword [rbp - 0x30], rax
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x20], xmm0
xorps xmm3, xmm3
movsd qword [rsp + 0x60], xmm3
movsd qword [rsp + 0x70], xmm3
movsd qword [rsp + 0x60], xmm3
movsd qword [rsp + 0x70], xmm3
movsd qword [rsp + 0x70], xmm3
movsd xmm0, qword [rsp + 0x70]
movsd xmm4, qword [0x1408cd748]
comisd xmm4, xmm0
jbe 0x14012d5e1
movsd xmm7, qword [0x1408cc888]
movsd xmm8, qword [0x1408cc6a8]
movsd xmm9, qword [0x1408cc738]
movsd xmm10, qword [0x1408cc850]
movsd xmm5, qword [0x1408cc5f0]
movsd xmm6, qword [0x1408c8248]
nop
movsd xmm2, qword [rsp + 0x70]
mulsd xmm2, xmm7
mulsd xmm2, qword [rsp + 0x70]
movsd xmm1, qword [rsp + 0x70]
movsd xmm0, qword [rsp + 0x70]
mulsd xmm1, xmm0
subsd xmm2, xmm1
movsd xmm0, qword [rsp + 0x70]
mulsd xmm0, xmm8
mulsd xmm0, qword [rsp + 0x70]
addsd xmm0, xmm9
divsd xmm2, xmm0
addsd xmm2, qword [rsp + 0x60]
movsd qword [rsp + 0x60], xmm2
movsd xmm0, qword [rsp + 0x60]
comisd xmm0, xmm10
jbe 0x14012d5c1
movsd xmm1, qword [rsp + 0x60]
movsd xmm0, qword [rsp + 0x70]
mulsd xmm0, xmm5
subsd xmm1, xmm0
movsd qword [rsp + 0x60], xmm1
movsd xmm0, qword [rsp + 0x70]
addsd xmm0, xmm6
movsd qword [rsp + 0x70], xmm0
movsd xmm1, qword [rsp + 0x70]
comisd xmm4, xmm1
ja 0x14012d550
movsd xmm0, qword [rsp + 0x60]
comisd xmm3, xmm0
jbe 0x14012d5fc
call 0x1408908e1
call fcn.1408908fb
jmp 0x14012e1ee
mov eax, r15d
lea rcx, [rbp + 0x60]
nop dword [rax]
nop word [rax + rax]
mov byte [rcx], al
inc eax
lea rcx, [rcx + 1]
cmp eax, 0x100
jb 0x14012d610
mov r9d, r15d
xor cl, cl
mov r10d, 0xff
mov r14d, 1
lea rsi, fcn.1408908fb
nop word [rax + rax]
mov edi, r15d
mov r11d, r14d
cmp r10d, r14d
jbe 0x14012d660
nop dword [rax + rax]
lea r11d, [r11*2 + 1]
cmp r11d, r10d
jb 0x14012d650
nop dword [rax]
movzx eax, cl
movzx edx, byte [rbp + rax + 0x60]
mov eax, r9d
test r9d, r9d
je 0x14012d6b9
sub eax, r14d
je 0x14012d6a9
sub eax, r14d
je 0x14012d699
cmp eax, r14d
je 0x14012d689
lea eax, [r9 - 4]
movzx eax, byte [rax + rsi]
jmp 0x14012d6c4
movsd xmm0, qword [rsp + 0x60]
cvttsd2si rax, xmm0
shr eax, 0x18
jmp 0x14012d6c4
movsd xmm0, qword [rsp + 0x60]
cvttsd2si rax, xmm0
shr eax, 0x10
jmp 0x14012d6c4
movsd xmm0, qword [rsp + 0x60]
cvttsd2si rax, xmm0
shr eax, 8
jmp 0x14012d6c4
movsd xmm0, qword [rsp + 0x60]
cvttsd2si rax, xmm0
add dl, al
lea r8d, [r9 + 1]
lea eax, [rdx + 0x14]
movzx ecx, al
cmp r8d, 0x14
cmovb ecx, edx
movzx ebx, cl
mov r9d, r15d
cmovb r9d, r8d
mov eax, ebx
and eax, r11d
inc edi
cmp edi, 0xb
jbe 0x14012d6f4
xor edx, edx
div r10d
mov eax, edx
movzx ecx, bl
cmp eax, r10d
ja 0x14012d660
je 0x14012d721
mov edx, eax
mov ecx, r10d
movzx eax, byte [rbp + rdx + 0x60]
xor al, byte [rbp + rcx + 0x60]
mov byte [rbp + rcx + 0x60], al
xor byte [rbp + rdx + 0x60], al
movzx eax, byte [rbp + rdx + 0x60]
xor byte [rbp + rcx + 0x60], al
add r10d, 0xffffffff
movzx ecx, bl
jne 0x14012d640
movzx esi, byte [rbp + 0x65]
movzx ecx, byte [rbp + 0x67]
movzx edx, byte [rbp + rbx + 0x60]
lea r12, [0x1408908e1]
movzx eax, byte [r12]
movss xmm0, dword [0x1408cdc74]
movss dword [rsp + 0x60], xmm0
movss xmm1, dword [0x1408cdb24]
movss dword [rsp + 0x78], xmm1
movss xmm0, dword [0x1408cd9dc]
movss dword [rsp + 0x70], xmm0
movss xmm1, dword [0x1408cd85c]
movss dword [rsp + 0x68], xmm1
movss xmm2, dword [rsp + 0x78]
movss xmm0, dword [rsp + 0x68]
subss xmm2, xmm0
movss dword [rsp + 0x78], xmm2
movss xmm1, dword [rsp + 0x68]
movss xmm0, dword [rsp + 0x78]
addss xmm1, xmm0
movss dword [rsp + 0x78], xmm1
movss xmm2, dword [rsp + 0x68]
movss xmm0, dword [rsp + 0x78]
addss xmm2, xmm0
movss dword [rsp + 0x78], xmm2
movss xmm1, dword [rsp + 0x68]
movss xmm0, dword [rsp + 0x60]
addss xmm1, xmm0
movss dword [rsp + 0x60], xmm1
movss xmm1, dword [rsp + 0x68]
movss xmm0, dword [rsp + 0x60]
comiss xmm1, xmm0
jbe 0x14012d82f
movss xmm1, dword [rsp + 0x70]
movss xmm0, dword [rsp + 0x60]
mulss xmm1, xmm0
movss dword [rsp + 0x70], xmm1
movss xmm2, dword [rsp + 0x78]
movss xmm0, dword [rsp + 0x68]
divss xmm2, xmm0
movss dword [rsp + 0x78], xmm2
movss xmm1, dword [rsp + 0x68]
movss xmm0, dword [rsp + 0x78]
addss xmm1, xmm0
movss dword [rsp + 0x78], xmm1
mov r14, r15
jmp 0x14012d871
movss xmm1, dword [rsp + 0x68]
movss xmm0, dword [rsp + 0x78]
mulss xmm1, xmm0
movss dword [rsp + 0x78], xmm1
movss xmm2, dword [rsp + 0x68]
movss xmm0, dword [rsp + 0x78]
mulss xmm2, xmm0
movss dword [rsp + 0x68], xmm2
movss xmm1, dword [rsp + 0x70]
movss xmm0, dword [rsp + 0x60]
subss xmm1, xmm0
movss dword [rsp + 0x70], xmm1
movss xmm2, dword [rsp + 0x68]
movss xmm0, dword [rsp + 0x78]
subss xmm2, xmm0
movss dword [rsp + 0x68], xmm2
movzx r11d, byte [r14 + r12]
add r11b, 0x69
sub al, 0x5b
shl al, 4
or r11b, al
mov r9, rdx
movzx ebx, byte [rbp + rdx + 0x60]
movzx eax, byte [rbp + 0x61]
lea r14d, [rax + 1]
movzx r15d, byte [rbp + 0x63]
add r15b, byte [rbp + rax + 0x60]
movzx r8d, r15b
movzx eax, byte [rbp + r8 + 0x60]
mov byte [rbp + rdx + 0x60], al
mov rdx, rcx
movzx eax, byte [rbp + rcx + 0x60]
mov byte [rbp + r8 + 0x60], al
movzx ecx, r14b
movzx eax, byte [rbp + rcx + 0x60]
mov byte [rbp + rdx + 0x60], al
mov byte [rbp + rcx + 0x60], bl
add sil, byte [rbp + rbx + 0x60]
movzx eax, sil
movzx ecx, byte [rbp + rax + 0x60]
movzx eax, byte [rbp + r9 + 0x60]
add rcx, rax
movzx eax, byte [rbp + rdx + 0x60]
add rcx, rax
movzx eax, cl
movzx edx, byte [rbp + rax + 0x60]
movzx ecx, byte [rbp + r8 + 0x60]
add rcx, rbx
movzx eax, cl
movzx r10d, byte [rbp + rdx + 0x60]
xor r10b, byte [rbp + rax + 0x60]
xor r10b, r11b
movzx edi, byte [r12 + 2]
add dil, 5
shl dil, 4
movzx ecx, byte [r12 + 3]
add cl, 0x69
or dil, cl
movzx r9d, r11b
movzx r11d, byte [rbp + r9 + 0x60]
inc r14b
add r15b, bl
movzx r8d, r15b
movzx eax, byte [rbp + r8 + 0x60]
mov byte [rbp + r9 + 0x60], al
movzx edx, r10b
movzx eax, byte [rbp + rdx + 0x60]
mov byte [rbp + r8 + 0x60], al
movzx ecx, r14b
movzx eax, byte [rbp + rcx + 0x60]
mov byte [rbp + rdx + 0x60], al
mov byte [rbp + rcx + 0x60], r11b
add sil, byte [rbp + r11 + 0x60]
movzx eax, sil
movzx ecx, byte [rbp + rax + 0x60]
movzx eax, byte [rbp + rdx + 0x60]
add rcx, rax
movzx eax, byte [rbp + r9 + 0x60]
add rcx, rax
movzx eax, cl
movzx edx, byte [rbp + rax + 0x60]
movzx ecx, byte [rbp + r8 + 0x60]
add rcx, r11
movzx eax, cl
movzx r8d, byte [rbp + rdx + 0x60]
xor r8b, byte [rbp + rax + 0x60]
xor r8b, dil
mov byte [rbp + 0x50], r8b
mov ebx, 2
movzx edx, byte [r12 + 4]
add dl, 5
shl dl, 4
movzx ecx, byte [r12 + 5]
add cl, 0x69
or dl, cl
mov byte [rbp - 0x80], dl
movzx r9d, dil
movzx ecx, byte [rbp + r9 + 0x60]
inc r14b
add r15b, r11b
movzx r10d, r15b
movzx eax, byte [rbp + r10 + 0x60]
mov byte [rbp + r9 + 0x60], al
movzx r8d, r8b
movzx eax, byte [rbp + r8 + 0x60]
mov byte [rbp + r10 + 0x60], al
movzx eax, r14b
lea rdi, [rbp + 0x60]
add rdi, rax
movzx eax, byte [rdi]
mov byte [rbp + r8 + 0x60], al
mov byte [rdi], cl
mov edx, ecx
add sil, byte [rbp + rcx + 0x60]
movzx eax, sil
movzx ecx, byte [rbp + rax + 0x60]
movzx eax, byte [rbp + r9 + 0x60]
add rcx, rax
movzx eax, byte [rbp + r8 + 0x60]
add rcx, rax
movzx eax, cl
movzx ecx, byte [rbp + rax + 0x60]
movzx eax, byte [rbp + r10 + 0x60]
add rax, rdx
movzx eax, al
movzx edx, byte [rbp + rcx + 0x60]
xor dl, byte [rbp + rax + 0x60]
movzx ecx, byte [rbp - 0x80]
xor dl, cl
mov byte [rbp + 0x51], dl
mov r12d, 4
mov r13d, r12d
movss xmm3, dword [0x1408cddc8]
movss xmm4, dword [0x1408cbdb0]
movss xmm5, dword [0x1408cd9c4]
nop dword [rax + rax]
mov dword [rsp + 0x70], ebx
inc ebx
add r12d, 2
movsxd rax, r12d
lea r8, [0x1408908e1]
movzx r11d, byte [rax + r8]
movss dword [rsp + 0x68], xmm3
movss dword [rsp + 0x78], xmm4
movss dword [rsp + 0x60], xmm5
movss xmm1, dword [rsp + 0x60]
movss xmm0, dword [rsp + 0x68]
mulss xmm1, xmm0
movss dword [rsp + 0x68], xmm1
movss xmm2, dword [rsp + 0x78]
movss xmm0, dword [rsp + 0x60]
subss xmm2, xmm0
movss dword [rsp + 0x78], xmm2
movss xmm1, dword [rsp + 0x60]
movss xmm0, dword [rsp + 0x78]
mulss xmm1, xmm0
movss dword [rsp + 0x78], xmm1
movss xmm1, dword [rsp + 0x68]
movss xmm0, dword [rsp + 0x60]
comiss xmm0, xmm1
jbe 0x14012db52
movss xmm1, dword [rsp + 0x60]
movss xmm0, dword [rsp + 0x68]
addss xmm1, xmm0
movss dword [rsp + 0x68], xmm1
movss xmm2, dword [rsp + 0x60]
movss xmm0, dword [rsp + 0x68]
addss xmm2, xmm0
movss dword [rsp + 0x68], xmm2
movss xmm1, dword [rsp + 0x60]
movss xmm0, dword [rsp + 0x68]
addss xmm1, xmm0
movss dword [rsp + 0x68], xmm1
jmp 0x14012db94
movss xmm1, dword [rsp + 0x78]
movss xmm0, dword [rsp + 0x68]
subss xmm1, xmm0
movss dword [rsp + 0x78], xmm1
movss xmm2, dword [rsp + 0x78]
movss xmm0, dword [rsp + 0x68]
addss xmm2, xmm0
movss dword [rsp + 0x78], xmm2
movss xmm1, dword [rsp + 0x78]
movss xmm0, dword [rsp + 0x68]
addss xmm1, xmm0
movss dword [rsp + 0x78], xmm1
add r11b, 5
shl r11b, 4
movzx eax, byte [rax + r8 + 1]
add al, 0x69
or r11b, al
movzx r10d, cl
movzx ecx, byte [rbp + r10 + 0x60]
mov byte [rbp - 0x80], cl
inc r14b
add r15b, byte [rdi]
movzx r9d, r15b
movzx eax, byte [rbp + r9 + 0x60]
mov byte [rbp + r10 + 0x60], al
movzx r8d, dl
movzx eax, byte [rbp + r8 + 0x60]
mov byte [rbp + r9 + 0x60], al
movzx eax, r14b
lea rdi, [rbp + 0x60]
add rdi, rax
movzx eax, byte [rdi]
mov byte [rbp + r8 + 0x60], al
mov byte [rdi], cl
mov edx, ecx
add sil, byte [rbp + rcx + 0x60]
movzx eax, sil
movzx ecx, byte [rbp + rax + 0x60]
movzx eax, byte [rbp + r8 + 0x60]
add rcx, rax
movzx eax, byte [rbp + r10 + 0x60]
add rcx, rax
movzx eax, cl
movzx ecx, byte [rbp + rax + 0x60]
movzx eax, byte [rbp + r9 + 0x60]
add rax, rdx
movzx eax, al
movzx edx, byte [rbp + rcx + 0x60]
xor dl, byte [rbp + rax + 0x60]
xor dl, r11b
movzx ecx, r11b
test ebx, ebx
je 0x14012dc3f
mov eax, dword [rsp + 0x70]
mov byte [rbp + rax + 0x50], dl
sub r13, 1
jne 0x14012da90
mov dword [rsp + 0x70], ebx
inc ebx
lea r13d, [rbx + rbx]
movsxd rax, r13d
lea r8, [0x1408908e1]
movzx edi, byte [rax + r8 + 1]
sub edi, 0x97
movzx r11d, byte [rax + r8]
add r11b, 5
shl r11b, 4
or r11b, dil
mov r12, rcx
movzx r9d, byte [rbp + rcx + 0x60]
inc r14b
add r15b, byte [rbp - 0x80]
movsd xmm0, qword [0x1408cd2e0]
movsd qword [rsp + 0x60], xmm0
movsd xmm1, qword [0x1408ccf50]
movsd qword [rsp + 0x68], xmm1
movsd xmm0, qword [0x1408ccb88]
movsd qword [rbp - 0x78], xmm0
movsd xmm1, qword [rbp - 0x78]
movsd xmm0, qword [rsp + 0x60]
mulsd xmm1, xmm0
movsd qword [rsp + 0x60], xmm1
movsd xmm2, qword [rsp + 0x68]
movsd xmm0, qword [rbp - 0x78]
subsd xmm2, xmm0
movsd qword [rsp + 0x68], xmm2
movsd xmm1, qword [rsp + 0x68]
movsd xmm0, qword [rbp - 0x78]
subsd xmm1, xmm0
movsd qword [rsp + 0x68], xmm1
movsd xmm2, qword [rsp + 0x68]
movzx r10d, r15b
movsd xmm0, qword [rsp + 0x60]
comisd xmm0, xmm2
jbe 0x14012dd53
movzx eax, byte [rbp + r10 + 0x60]
mov byte [rbp + rcx + 0x60], al
movsd xmm1, qword [rbp - 0x78]
movsd xmm0, qword [rsp + 0x60]
addsd xmm1, xmm0
movsd qword [rsp + 0x60], xmm1
movsd xmm2, qword [rbp - 0x78]
movsd xmm0, qword [rsp + 0x60]
addsd xmm2, xmm0
movsd qword [rsp + 0x60], xmm2
movsd xmm1, qword [rsp + 0x68]
movsd xmm0, qword [rsp + 0x60]
subsd xmm1, xmm0
movsd qword [rsp + 0x68], xmm1
jmp 0x14012dd94
movsd xmm1, qword [rsp + 0x68]
movsd xmm0, qword [rsp + 0x60]
mulsd xmm1, xmm0
movsd qword [rsp + 0x68], xmm1
movsd xmm2, qword [rsp + 0x68]
movsd xmm0, qword [rsp + 0x60]
subsd xmm2, xmm0
movsd qword [rsp + 0x68], xmm2
movsd xmm1, qword [rsp + 0x60]
movsd xmm0, qword [rbp - 0x78]
divsd xmm1, xmm0
movsd qword [rsp + 0x60], xmm1
movzx r8d, dl
movzx eax, byte [rbp + r8 + 0x60]
mov byte [rbp + r10 + 0x60], al
movzx ecx, r14b
movzx eax, byte [rbp + rcx + 0x60]
mov byte [rbp + r8 + 0x60], al
mov byte [rbp + rcx + 0x60], r9b
add sil, byte [rbp + r9 + 0x60]
movzx eax, sil
movzx ecx, byte [rbp + rax + 0x60]
movzx eax, byte [rbp + r12 + 0x60]
add rcx, rax
movzx eax, byte [rbp + r8 + 0x60]
add rcx, rax
movzx eax, cl
movzx ecx, byte [rbp + rax + 0x60]
movzx eax, byte [rbp + r10 + 0x60]
add rax, r9
movzx eax, al
movzx r8d, byte [rbp + rcx + 0x60]
xor r8b, byte [rbp + rax + 0x60]
xor r8b, r11b
movzx edx, r11b
test ebx, ebx
je 0x14012de09
mov eax, dword [rsp + 0x70]
mov byte [rbp + rax + 0x50], r8b
lea ecx, [rbx + 1]
cmp ecx, 0xd
jge 0x14012def3
mov eax, reloc.WS2_32.dll_listen
sub eax, ecx
mov ecx, eax
mov qword [rbp - 0x70], rcx
mov dword [rsp + 0x70], ebx
add r13d, 2
movsxd rax, r13d
lea rcx, [0x1408908e1]
movzx edi, byte [rax + rcx + 1]
sub edi, 0x97
movzx r11d, byte [rax + rcx]
add r11b, 5
shl r11b, 4
or r11b, dil
movzx r10d, dl
movzx r12d, byte [rbp + r10 + 0x60]
inc r14b
add r15b, r9b
movzx r9d, r15b
movzx eax, byte [rbp + r9 + 0x60]
mov byte [rbp + r10 + 0x60], al
movzx r8d, r8b
movzx eax, byte [rbp + r8 + 0x60]
mov byte [rbp + r9 + 0x60], al
movzx ecx, r14b
movzx eax, byte [rbp + rcx + 0x60]
mov byte [rbp + r8 + 0x60], al
mov byte [rbp + rcx + 0x60], r12b
add sil, byte [rbp + r12 + 0x60]
movzx eax, sil
movzx ecx, byte [rbp + rax + 0x60]
movzx eax, byte [rbp + r8 + 0x60]
add rcx, rax
movzx eax, byte [rbp + r10 + 0x60]
add rcx, rax
movzx eax, cl
movzx ecx, byte [rbp + rax + 0x60]
movzx eax, byte [rbp + r9 + 0x60]
add rax, r12
movzx eax, al
movzx r8d, byte [rbp + rcx + 0x60]
xor r8b, byte [rbp + rax + 0x60]
xor r8b, r11b
movzx edx, r11b
add ebx, 1
je 0x14012dee4
mov eax, dword [rsp + 0x70]
mov byte [rbp + rax + 0x50], r8b
sub qword [rbp - 0x70], 1
movzx r9d, r12b
jne 0x14012de22
mov r13d, ebx
inc ebx
lea eax, [rbx + rbx]
movsxd rcx, eax
lea rax, [0x1408908e1]
movzx r12d, byte [rcx + rax]
movzx edx, byte [rcx + rax + 1]
add r12d, 0xffffffa5
movsd xmm0, qword [0x1408cd158]
movsd qword [rsp + 0x68], xmm0
movsd xmm1, qword [0x1408cd028]
movsd qword [rbp - 0x68], xmm1
movsd xmm0, qword [0x1408ccee0]
movsd qword [rsp + 0x60], xmm0
movsd xmm1, qword [0x1408ccd78]
movsd qword [rbp - 0x70], xmm1
movsd xmm0, qword [0x1408ccbf8]
movsd qword [rsp + 0x78], xmm0
movsd xmm1, qword [0x1408cca90]
movsd qword [rbp - 0x78], xmm1
movsd xmm0, qword [0x1408cc940]
movsd qword [rsp + 0x70], xmm0
movsd xmm1, qword [rsp + 0x70]
movsd xmm0, qword [rsp + 0x60]
mulsd xmm1, xmm0
movsd qword [rsp + 0x60], xmm1
movsd xmm2, qword [rbp - 0x78]
movsd xmm0, qword [rsp + 0x70]
subsd xmm2, xmm0
movsd qword [rbp - 0x78], xmm2
movsd xmm1, qword [rsp + 0x68]
movsd xmm0, qword [rsp + 0x70]
subsd xmm1, xmm0
movsd qword [rsp + 0x68], xmm1
movsd xmm2, qword [rsp + 0x70]
movsd xmm0, qword [rsp + 0x78]
addsd xmm2, xmm0
movsd qword [rsp + 0x78], xmm2
movsd xmm1, qword [rsp + 0x60]
movsd xmm0, qword [rsp + 0x70]
subsd xmm1, xmm0
movsd qword [rsp + 0x60], xmm1
movsd xmm2, qword [rsp + 0x70]
movsd xmm0, qword [rsp + 0x78]
mulsd xmm2, xmm0
movsd qword [rsp + 0x78], xmm2
movsd xmm1, qword [rsp + 0x70]
movsd xmm0, qword [rbp - 0x78]
mulsd xmm1, xmm0
movsd qword [rbp - 0x78], xmm1
movsd xmm1, qword [rsp + 0x60]
movsd xmm0, qword [rsp + 0x70]
comisd xmm0, xmm1
jbe 0x14012e0b7
movsd xmm1, qword [rsp + 0x78]
movsd xmm0, qword [rsp + 0x60]
mulsd xmm1, xmm0
movsd qword [rsp + 0x60], xmm1
movsd xmm2, qword [rbp - 0x68]
movsd xmm0, qword [rbp - 0x70]
divsd xmm2, xmm0
movsd qword [rbp - 0x68], xmm2
movsd xmm1, qword [rbp - 0x78]
movsd xmm0, qword [rsp + 0x68]
addsd xmm1, xmm0
movsd qword [rbp - 0x78], xmm1
movsd xmm2, qword [rsp + 0x70]
movsd xmm0, qword [rbp - 0x68]
divsd xmm2, xmm0
movsd qword [rsp + 0x70], xmm2
movsd xmm1, qword [rsp + 0x60]
movsd xmm0, qword [rsp + 0x68]
mulsd xmm1, xmm0
movsd qword [rsp + 0x68], xmm1
movsd xmm2, qword [rsp + 0x70]
movsd xmm0, qword [rsp + 0x78]
mulsd xmm2, xmm0
movsd qword [rsp + 0x78], xmm2
movsd xmm1, qword [rsp + 0x78]
movsd xmm0, qword [rsp + 0x60]
addsd xmm1, xmm0
movsd qword [rsp + 0x60], xmm1
jmp 0x14012e151
movsd xmm1, qword [rsp + 0x70]
movsd xmm0, qword [rsp + 0x68]
mulsd xmm1, xmm0
movsd qword [rsp + 0x70], xmm1
movsd xmm2, qword [rbp - 0x78]
movsd xmm0, qword [rsp + 0x70]
subsd xmm2, xmm0
movsd qword [rbp - 0x78], xmm2
movsd xmm1, qword [rsp + 0x68]
movsd xmm0, qword [rbp - 0x68]
subsd xmm1, xmm0
movsd qword [rsp + 0x68], xmm1
movsd xmm2, qword [rsp + 0x70]
movsd xmm0, qword [rsp + 0x68]
addsd xmm2, xmm0
movsd qword [rsp + 0x70], xmm2
movsd xmm1, qword [rsp + 0x70]
movsd xmm0, qword [rsp + 0x68]
mulsd xmm1, xmm0
movsd qword [rsp + 0x70], xmm1
movsd xmm2, qword [rbp - 0x70]
movsd xmm0, qword [rsp + 0x60]
mulsd xmm2, xmm0
movsd qword [rsp + 0x60], xmm2
lea edi, [rdx - 0x97]
movsd xmm1, qword [rsp + 0x78]
movsd xmm0, qword [rbp - 0x70]
mulsd xmm1, xmm0
movsd qword [rbp - 0x70], xmm1
shl r12d, 4
or r12d, edi
movzx r9d, r11b
movzx edx, byte [rbp + r9 + 0x60]
movzx eax, r14b
inc r14b
add r15b, byte [rbp + rax + 0x60]
movzx r10d, r15b
movzx eax, byte [rbp + r10 + 0x60]
mov byte [rbp + r9 + 0x60], al
movzx r8d, r8b
movzx eax, byte [rbp + r8 + 0x60]
mov byte [rbp + r10 + 0x60], al
movzx ecx, r14b
movzx eax, byte [rbp + rcx + 0x60]
mov byte [rbp + r8 + 0x60], al
mov byte [rbp + rcx + 0x60], dl
add sil, byte [rbp + rdx + 0x60]
movzx eax, sil
movzx ecx, byte [rbp + rax + 0x60]
movzx eax, byte [rbp + r9 + 0x60]
add rcx, rax
movzx eax, byte [rbp + r8 + 0x60]
add rcx, rax
movzx eax, cl
movzx ecx, byte [rbp + rax + 0x60]
movzx eax, byte [rbp + r10 + 0x60]
add rax, rdx
movzx eax, al
movzx edx, byte [rbp + rcx + 0x60]
xor dl, byte [rbp + rax + 0x60]
xor dl, r12b
test ebx, ebx
je 0x14012e1e7
mov byte [rbp + r13 + 0x50], dl
mov byte [rbp + 0x5c], 0
xor r15d, r15d
lea rdx, [rbp + 0x50]
mov rcx, qword [rbp - 0x58]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
xorps xmm0, xmm0
movups xmmword [rbp - 0x10], xmm0
mov qword [rbp - 0x60], 0xffffffffffffffff
mov dword [rsp + 0x50], r15d
mov qword [rsp + 0x48], r15
mov dword [rsp + 0x40], 0x20
mov dword [rsp + 0x38], r15d
mov dword [rsp + 0x30], 3
mov dword [rsp + 0x28], Ordinal_133
mov qword [rsp + 0x20], r15
lea r9, [rbp - 0x10]
lea r8, [rbp - 0x40]
mov edx, 0xc0110000
lea rcx, [rbp - 0x60]
call rax
test eax, eax
jns 0x14012e260
lea rcx, [rbp + 0x10]
call fcn.140091230
mov rax, 0xffffffffffffffff
jmp 0x14012e270
mov rbx, qword [rbp - 0x60]
lea rcx, [rbp + 0x10]
call fcn.140091230
mov rax, rbx
mov rcx, qword [rbp + 0x160]
xor rcx, rsp
call fcn.140890ac0
lea r11, [rsp + 0x2c0]
mov rbx, qword [r11 + 0x58]
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]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret