Function at 0x140096f50
Capabilities:
Check for software breakpoints
Encode data using xor
Encrypt data using rc4 ksa
Enumerate process modules
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x2500]
mov eax, 0x2600
call fcn.140191300
sub rsp, rax
mov rax, qword [0x140221880]
xor rax, rsp
mov qword [rbp + 0x24f0], rax
xor ebx, ebx
mov qword [rbp - 0x70], rcx
mov dword [rsp + 0x48], ebx
mov byte [rsp + 0x58], 1
lea ecx, [rbx + 0x30]
call fcn.140190b18
mov qword [rsp + 0x40], rax
lea r12, [rbp + 0x271]
mov dword [rsp + 0x38], ebx
xor cl, cl
mov qword [rbp + 0x270], rbx
mov r13d, ebx
mov qword [rax + 4], rbx
mov qword [rax + 0x10], rbx
mov qword [rax + 0x28], rbx
mov byte [rax], 0xdc
mov qword [rax + 0x18], rbx
mov qword [rax + 0x20], rbx
nop dword [rax + rax]
movzx r9d, byte [r12 - 1]
mov eax, 0x80808081
movzx r10d, byte [r12]
movzx r11d, byte [r12 + 1]
movzx ebx, byte [r12 + 2]
movzx edi, byte [r12 + 3]
movzx esi, byte [r12 + 4]
movzx r14d, byte [r12 + 5]
movzx r15d, byte [r12 + 6]
movzx ecx, cl
add ecx, r9d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
movabs rax, 0xfc9215ddfa245
movzx r8d, cl
add r8, rax
movabs rax, 0x8080808080808081
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
add ecx, r9d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
movabs rax, 0xd9103fc58343e
movzx r8d, cl
add r8, rax
movabs rax, 0x8080808080808081
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
inc ecx
xor ecx, r9d
movabs r9, 0x8080808080808081
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
movabs rax, 0xa9422cffde495
movzx ecx, cl
add rcx, rax
mov rax, r9
mul rcx
shr rdx, 7
imul rax, rdx, 0xff
sub rcx, rax
mov eax, 0x80808081
movzx ecx, cl
add ecx, r10d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
movabs rax, 0xfc9215ddfa245
movzx r8d, cl
add r8, rax
mov rax, r9
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
add ecx, r10d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
movabs rax, 0xd9103fc58343e
movzx r8d, cl
add r8, rax
mov rax, r9
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
inc ecx
xor ecx, r10d
movabs r10, 0xfc9215ddfa245
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
movabs rax, 0xa9422cffde495
movzx ecx, cl
add rcx, rax
mov rax, r9
mul rcx
shr rdx, 7
imul rax, rdx, 0xff
sub rcx, rax
mov eax, 0x80808081
movzx ecx, cl
add ecx, r11d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r9
movzx r8d, cl
add r8, r10
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
add ecx, r11d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
movabs rax, 0xd9103fc58343e
movzx r8d, cl
add r8, rax
mov rax, r9
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
inc ecx
xor ecx, r11d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
movabs rax, 0xa9422cffde495
movzx ecx, cl
add rcx, rax
mov rax, r9
mul rcx
shr rdx, 7
imul rax, rdx, 0xff
sub rcx, rax
mov eax, 0x80808081
movzx ecx, cl
add ecx, ebx
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r9
movzx r8d, cl
add r8, r10
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
movzx ecx, r8b
add ecx, ebx
mov eax, 0x80808081
mul ecx
movabs r11, 0xd9103fc58343e
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r9
movzx r8d, cl
add r8, r11
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
inc ecx
xor ecx, ebx
movabs rbx, 0xa9422cffde495
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r9
movzx ecx, cl
add rcx, rbx
mul rcx
shr rdx, 7
imul rax, rdx, 0xff
sub rcx, rax
mov eax, 0x80808081
movzx ecx, cl
add ecx, edi
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r9
movzx r8d, cl
add r8, r10
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
add ecx, edi
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r9
movzx r8d, cl
add r8, r11
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
inc ecx
xor ecx, edi
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r9
movzx ecx, cl
add rcx, rbx
mul rcx
shr rdx, 7
imul rax, rdx, 0xff
sub rcx, rax
mov eax, 0x80808081
movzx ecx, cl
add ecx, esi
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
movzx r8d, cl
add r8, r10
mov rax, r9
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
add ecx, esi
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r9
movzx r8d, cl
add r8, r11
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
inc ecx
xor ecx, esi
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r9
movzx ecx, cl
add rcx, rbx
mul rcx
shr rdx, 7
imul rax, rdx, 0xff
sub rcx, rax
mov eax, 0x80808081
movzx ecx, cl
add ecx, r14d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r9
movzx r8d, cl
add r8, r10
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
add ecx, r14d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r9
movzx r8d, cl
add r8, r11
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
inc ecx
xor ecx, r14d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r9
movzx ecx, cl
add rcx, rbx
mul rcx
shr rdx, 7
imul rax, rdx, 0xff
sub rcx, rax
mov eax, 0x80808081
movzx ecx, cl
add ecx, r15d
mul ecx
add r13d, 8
lea r12, [r12 + 8]
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r9
movzx r8d, cl
add r8, r10
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
add ecx, r15d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r9
movzx r8d, cl
add r8, r11
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
inc ecx
xor ecx, r15d
mov r15, r9
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r9
movzx ecx, cl
add rcx, rbx
mul rcx
shr rdx, 7
imul rax, rdx, 0xff
sub rcx, rax
cmp r13d, 8
jb 0x140096fe0
mov rsi, qword [rsp + 0x40]
lea rdi, [rbp + 0x1d9]
mov r12, r10
mov r13, r11
mov eax, dword [rsi + 4]
mov byte [rsi + 1], cl
xor cl, cl
xor r14d, r14d
mov dword [rbp + 0x1d8], eax
mov rsi, rbx
nop dword [rax + rax]
movzx r9d, byte [rdi - 1]
mov eax, 0x80808081
movzx r10d, byte [rdi]
movzx r11d, byte [rdi + 1]
movzx ebx, byte [rdi + 2]
movzx ecx, cl
add ecx, r9d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx r8d, cl
add r8, r12
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
add ecx, r9d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx r8d, cl
add r8, r13
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
inc ecx
xor ecx, r9d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx ecx, cl
add rcx, rsi
mul rcx
shr rdx, 7
imul rax, rdx, 0xff
sub rcx, rax
mov eax, 0x80808081
movzx ecx, cl
add ecx, r10d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx r8d, cl
add r8, r12
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
add ecx, r10d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx r8d, cl
add r8, r13
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
inc ecx
xor ecx, r10d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx ecx, cl
add rcx, rsi
mul rcx
shr rdx, 7
imul rax, rdx, 0xff
sub rcx, rax
mov eax, 0x80808081
movzx ecx, cl
add ecx, r11d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx r8d, cl
add r8, r12
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
add ecx, r11d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx r8d, cl
add r8, r13
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
inc ecx
xor ecx, r11d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx ecx, cl
add rcx, rsi
mul rcx
shr rdx, 7
imul rax, rdx, 0xff
sub rcx, rax
mov eax, 0x80808081
movzx ecx, cl
add ecx, ebx
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx r8d, cl
add r8, r12
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
add ecx, ebx
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx r8d, cl
add r8, r13
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
movzx ecx, r8b
inc ecx
lea rdi, [rdi + 4]
xor ecx, ebx
mov eax, 0x80808081
mul ecx
add r14d, 4
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx ecx, cl
add rcx, rsi
mul rcx
shr rdx, 7
imul rax, rdx, 0xff
sub rcx, rax
cmp r14d, 4
jb 0x1400975b0
mov rsi, qword [rsp + 0x40]
lea rdi, [rbp + 0x1d9]
mov eax, dword [rsp + 0x38]
mov dword [rbp + 0x1d8], eax
mov byte [rsi + 2], cl
xor cl, cl
xor r14d, r14d
movabs rsi, 0xa9422cffde495
nop dword [rax]
movzx r9d, byte [rdi - 1]
mov eax, 0x80808081
movzx r10d, byte [rdi]
movzx r11d, byte [rdi + 1]
movzx ebx, byte [rdi + 2]
movzx ecx, cl
add ecx, r9d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx r8d, cl
add r8, r12
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
add ecx, r9d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx r8d, cl
add r8, r13
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
inc ecx
xor ecx, r9d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx ecx, cl
add rcx, rsi
mul rcx
shr rdx, 7
imul rax, rdx, 0xff
sub rcx, rax
mov eax, 0x80808081
movzx ecx, cl
add ecx, r10d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx r8d, cl
add r8, r12
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
add ecx, r10d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx r8d, cl
add r8, r13
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
inc ecx
xor ecx, r10d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx ecx, cl
add rcx, rsi
mul rcx
shr rdx, 7
imul rax, rdx, 0xff
sub rcx, rax
mov eax, 0x80808081
movzx ecx, cl
add ecx, r11d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx r8d, cl
add r8, r12
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
add ecx, r11d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx r8d, cl
add r8, r13
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
inc ecx
xor ecx, r11d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx ecx, cl
add rcx, rsi
mul rcx
shr rdx, 7
imul rax, rdx, 0xff
sub rcx, rax
mov eax, 0x80808081
movzx ecx, cl
add ecx, ebx
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx r8d, cl
add r8, r12
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
add ecx, ebx
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx r8d, cl
add r8, r13
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
movzx ecx, r8b
inc ecx
lea rdi, [rdi + 4]
xor ecx, ebx
mov eax, 0x80808081
mul ecx
add r14d, 4
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx ecx, cl
add rcx, rsi
mul rcx
shr rdx, 7
imul rax, rdx, 0xff
sub rcx, rax
cmp r14d, 4
jb 0x140097870
mov rsi, qword [rsp + 0x40]
mov byte [rsi + 3], cl
mov rcx, qword [rsi + 0x10]
test rcx, rcx
je 0x140097b17
call fcn.1401a6090
mov ecx, 0x5d2
call fcn.1401ab860
mov qword [rsi + 0x10], rax
test rax, rax
je 0x140097b42
xor edx, edx
mov qword [rsi + 0x28], 0x5d2
mov r8d, 0x5d2
mov rcx, rax
call fcn.1401d1c40
cmp qword [0x140328d28], 0
mov qword [rsp + 0x60], rsi
jne 0x140097b77
mov ecx, 0x26b0
call fcn.1401ab860
xor r13d, r13d
test rax, rax
je 0x140097b7a
mov qword [rax], r13
mov qword [rax + 8], 0x19c
mov qword [0x140328d28], rax
jmp 0x140097b7a
xor r13d, r13d
mov rcx, qword [0x140328b88]
lea r9, [rbp + 0x228]
mov r8d, 0x2000
lea rdx, [rbp + 0x3e0]
call qword [sym.imp.KERNEL32.dll_K32EnumProcessModules]
test eax, eax
je 0x14009a6e9
xorps xmm0, xmm0
mov qword [rbp - 0x10], r13
mov r8d, recv
mov qword [rbp - 8], r13
lea rdx, str.advapi32.dll
lea rcx, [rbp - 0x20]
movups xmmword [rbp - 0x20], xmm0
call fcn.14003ce50
xorps xmm0, xmm0
mov qword [rbp + 0x10], r13
mov r8d, recv
mov qword [rbp + 0x18], r13
lea rdx, str.kernel32.dll
lea rcx, [rbp]
movups xmmword [rbp], xmm0
call fcn.14003ce50
xorps xmm0, xmm0
mov qword [rbp + 0x30], r13
mov r8d, 9
mov qword [rbp + 0x38], r13
lea rdx, [0x1401fded8]
lea rcx, [rbp + 0x20]
movups xmmword [rbp + 0x20], xmm0
call fcn.14003ce50
xorps xmm0, xmm0
mov qword [rbp + 0x50], r13
mov r8d, 8
mov qword [rbp + 0x58], r13
lea rdx, str.d3d9.dll
lea rcx, [rbp + 0x40]
movups xmmword [rbp + 0x40], xmm0
call fcn.14003ce50
xorps xmm0, xmm0
mov qword [rbp + 0x70], r13
mov r8d, 0xa
mov qword [rbp + 0x78], r13
lea rdx, str.urlmon.dll
lea rcx, [rbp + 0x60]
movups xmmword [rbp + 0x60], xmm0
call fcn.14003ce50
xorps xmm0, xmm0
mov qword [rbp + 0x90], r13
mov r8d, 0xa
mov qword [rbp + 0x98], r13
lea rdx, str.win32u.dll
lea rcx, [rbp + 0x80]
movups xmmword [rbp + 0x80], xmm0
call fcn.14003ce50
xorps xmm0, xmm0
mov qword [rbp + 0xb0], r13
mov r8d, send
mov qword [rbp + 0xb8], r13
lea rdx, str.KernelBase.dll
lea rcx, [rbp + 0xa0]
movups xmmword [rbp + 0xa0], xmm0
call fcn.14003ce50
xorps xmm0, xmm0
mov qword [rbp + 0xd0], r13
mov r8d, recv
mov qword [rbp + 0xd8], r13
lea rdx, str.ucrtbase.dll
lea rcx, [rbp + 0xc0]
movups xmmword [rbp + 0xc0], xmm0
call fcn.14003ce50
xorps xmm0, xmm0
mov qword [rbp + 0xf0], r13
mov r8d, recv
mov qword [rbp + 0xf8], r13
lea rdx, str.crypt32.dll
lea rcx, [rbp + 0xe0]
movups xmmword [rbp + 0xe0], xmm0
call fcn.14003ce50
xorps xmm0, xmm0
mov qword [rbp + 0x110], r13
mov r8d, 9
mov qword [rbp + 0x118], r13
lea rdx, str.gdi32.dll
lea rcx, [rbp + 0x100]
movups xmmword [rbp + 0x100], xmm0
call fcn.14003ce50
xorps xmm0, xmm0
mov r8d, recv
mov qword [rbp + 0x130], r13
lea rdx, str.shlwapi.dll
mov qword [rbp + 0x138], r13
lea rcx, [rbp + 0x120]
movups xmmword [rbp + 0x120], xmm0
call fcn.14003ce50
xorps xmm0, xmm0
mov qword [rbp + 0x150], r13
mov r8d, recv
mov qword [rbp + 0x158], r13
lea rdx, str.sechost.dll
lea rcx, [rbp + 0x140]
movups xmmword [rbp + 0x140], xmm0
call fcn.14003ce50
xorps xmm0, xmm0
mov qword [rbp + 0x170], r13
mov r8d, 0xa
mov qword [rbp + 0x178], r13
lea rdx, str.user32.dll
lea rcx, [rbp + 0x160]
movups xmmword [rbp + 0x160], xmm0
call fcn.14003ce50
xorps xmm0, xmm0
mov qword [rbp + 0x190], r13
mov r8d, recv
mov qword [rbp + 0x198], r13
lea rdx, str.combase.dll
lea rcx, [rbp + 0x180]
movups xmmword [rbp + 0x180], xmm0
call fcn.14003ce50
xorps xmm0, xmm0
mov qword [rbp + 0x1b0], r13
mov r8d, 0xa
mov qword [rbp + 0x1b8], r13
lea rdx, str.rpcrt4.dll
lea rcx, [rbp + 0x1a0]
movups xmmword [rbp + 0x1a0], xmm0
call fcn.14003ce50
xorps xmm0, xmm0
mov qword [rbp + 0x2b8], r13
mov edx, reloc.WS2_32.dll_ntohs
lea rcx, [rbp + 0x2a8]
movdqu xmmword [rbp + 0x2a8], xmm0
call fcn.140102290
mov rdi, qword [rbp + 0x2a8]
lea rbx, [rbp - 0x20]
mov rdx, rbx
mov rcx, rdi
call fcn.140040c90
lea rax, [rbp + 0x1c0]
add rdi, 0x20
add rbx, 0x20
cmp rbx, rax
jne 0x140097e74
mov rdx, rdi
mov rcx, rdi
call fcn.1400fdeb0
mov qword [rbp + 0x2b0], rdi
lea rbx, [rbp + 0x1d8]
mov r14d, reloc.WS2_32.dll_ntohs
nop dword [rax]
nop word [rax + rax]
mov rdx, qword [rbx - 0x20]
lea rbx, [rbx - 0x20]
dec r14
cmp rdx, 0xf
jbe 0x140097f02
mov rcx, qword [rbx - 0x18]
inc rdx
cmp rdx, 0x1000
jb 0x140097efd
mov r8, qword [rcx - 8]
add rdx, 0x27
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14009a731
mov rcx, r8
call fcn.140190a2c
mov qword [rbx - 8], r13
mov qword [rbx], reloc.WS2_32.dll_ntohs
mov byte [rbx - 0x18], 0
test r14, r14
jne 0x140097ec0
test dword [rbp + 0x228], 0xfffffff8
mov r12d, r13d
mov dword [rbp + 0x1d8], r13d
jbe 0x14009a4b7
mov rcx, qword [0x140328b88]
lea rbx, [rbp + 0x3e0]
mov eax, r12d
lea r8, [rbp + 0x23e0]
mov rdx, qword [rbx + rax*8]
lea rbx, [rbx + rax*8]
mov r9d, 0x104
call qword [sym.imp.KERNEL32.dll_K32GetModuleFileNameExA]
test eax, eax
je 0x14009a49b
mov rdx, qword [rbx]
lea r8, [rbp + 0x1c0]
mov rcx, qword [0x140328b88]
mov r9d, Ordinal_27
call qword [sym.imp.KERNEL32.dll_K32GetModuleInformation]
test eax, eax
je 0x14009a49b
xorps xmm0, xmm0
mov qword [rbp + 0x1f8], r13
movups xmmword [rbp + 0x1e8], xmm0
mov qword [rbp + 0x200], r13
lea rax, [rbp + 0x23e0]
mov r8, 0xffffffffffffffff
nop
inc r8
cmp byte [rax + r8], 0
jne 0x140097fb0
lea rdx, [rbp + 0x23e0]
lea rcx, [rbp + 0x1e8]
call fcn.14003ce50
mov r11, qword [rbp + 0x200]
lea rdx, [rbp + 0x1e8]
mov r10, qword [rbp + 0x1e8]
cmp r11, 0xf
mov r9, qword [rbp + 0x1f8]
cmova rdx, r10
test r9, r9
je 0x140098022
lea rax, [r9 - 1]
mov rcx, 0xffffffffffffffff
cmp rax, rcx
cmovb rcx, rax
add rcx, rdx
cmp byte [rcx], 0x5c
je 0x14009801d
cmp rcx, rdx
je 0x140098022
dec rcx
cmp byte [rcx], 0x5c
jne 0x140098010
sub rcx, rdx
jmp 0x140098029
mov rcx, 0xffffffffffffffff
inc rcx
mov qword [rbp + 0x258], r13
mov qword [rbp + 0x260], r13
xorps xmm0, xmm0
movups xmmword [rbp + 0x248], xmm0
cmp r9, rcx
jb 0x14009a725
sub r9, rcx
lea rdx, [rbp + 0x1e8]
mov r8, 0xffffffffffffffff
cmp r9, r8
cmovb r8, r9
cmp r11, 0xf
cmova rdx, r10
add rdx, rcx
lea rcx, [rbp + 0x248]
call fcn.14003ce50
mov rdx, qword [rbp + 0x200]
cmp rdx, 0xf
jbe 0x1400980bd
mov rcx, qword [rbp + 0x1e8]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400980b8
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14009a79d
call fcn.140190a2c
movups xmm0, xmmword [rbp + 0x248]
xor edx, edx
mov r8d, 0x110
movups xmm1, xmmword [rbp + 0x258]
lea rcx, [rbp + 0x2d0]
movups xmmword [rbp + 0x1e8], xmm0
movups xmmword [rbp + 0x1f8], xmm1
call fcn.1401d1c40
lea rdx, [rbp + 0x23e0]
lea rcx, [rbp + 0x2d0]
call fcn.1400b44b0
cmp qword [rbp + 0x360], 0
mov r15d, dword [rsp + 0x48]
je 0x14009820b
mov r11, qword [rbp + 0x200]
lea rdx, [rbp + 0x1e8]
mov r10, qword [rbp + 0x1e8]
or r15d, 1
mov r9, qword [rbp + 0x1f8]
cmp r11, 0xf
mov dword [rsp + 0x48], r15d
cmova rdx, r10
test r9, r9
je 0x140098172
lea rax, [r9 - 1]
mov rcx, 0xffffffffffffffff
cmp rax, rcx
cmovb rcx, rax
add rcx, rdx
cmp byte [rcx], 0x2e
je 0x14009816d
nop
cmp rcx, rdx
je 0x140098172
dec rcx
cmp byte [rcx], 0x2e
jne 0x140098160
sub rcx, rdx
jmp 0x140098179
mov rcx, 0xffffffffffffffff
inc rcx
mov qword [rbp + 0x280], r13
mov qword [rbp + 0x288], r13
xorps xmm0, xmm0
movups xmmword [rbp + 0x270], xmm0
cmp r9, rcx
jb 0x14009a725
sub r9, rcx
lea rdx, [rbp + 0x1e8]
mov r8, 0xffffffffffffffff
cmp r9, r8
cmovb r8, r9
cmp r11, 0xf
cmova rdx, r10
add rdx, rcx
lea rcx, [rbp + 0x270]
call fcn.14003ce50
mov rdi, qword [rbp + 0x288]
lea rcx, [rbp + 0x270]
mov rbx, qword [rbp + 0x270]
cmp rdi, 0xf
mov r8, qword [rbp + 0x280]
cmova rcx, rbx
cmp r8, 3
jne 0x140098206
lea rdx, [0x1402006c4]
call fcn.1401d1fe0
test eax, eax
je 0x140098219
xor r14b, r14b
jmp 0x14009821c
mov rdi, qword [rbp + 0x288]
mov rbx, qword [rbp + 0x270]
mov r14b, 1
test r15b, 1
je 0x140098262
and r15d, 0xfffffffe
mov dword [rsp + 0x48], r15d
cmp rdi, 0xf
jbe 0x140098262
lea rdx, [rdi + 1]
mov rax, rbx
cmp rdx, 0x1000
jb 0x14009825a
mov rbx, qword [rbx - 8]
add rdx, 0x27
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14009a79d
mov rcx, rbx
call fcn.140190a2c
test r14b, r14b
jne 0x14009a3d3
mov r14, qword [rbp + 0x2b0]
xor dil, dil
mov rbx, qword [rbp + 0x2a8]
cmp rbx, r14
je 0x14009a56f
mov r15d, 1
nop dword [rax + rax]
cmp qword [rbp + 0x200], 0xf
lea rdx, [rbp + 0x1e8]
mov rcx, rbx
cmova rdx, qword [rbp + 0x1e8]
cmp qword [rbx + 0x18], 0xf
jbe 0x1400982b4
mov rcx, qword [rbx]
call fcn.1401af250
test eax, eax
movzx edi, dil
cmove edi, r15d
add rbx, 0x20
cmp rbx, r14
jne 0x140098290
test dil, dil
je 0x14009a56f
mov rax, qword [rbp + 0x2d0]
lea r8, [rbp + 0x270]
xorps xmm0, xmm0
mov qword [rbp + 0x240], r13
movdqu xmmword [rbp + 0x230], xmm0
mov qword [rbp - 0x80], r13
movsxd rcx, dword [rax + 4]
mov word [rbp - 0x78], r15w
mov byte [rbp + 0x2c9], 0
mov rdx, qword [rbp + rcx + 0x318]
mov ecx, dword [rsp + 0x62]
test rdx, rdx
mov dword [rbp - 0x76], ecx
movzx ecx, word [rsp + 0x66]
sete al
mov byte [rbp + 0x2c8], al
mov eax, dword [rsp + 0x62]
mov dword [rbp + 0x2ca], eax
movzx eax, word [rsp + 0x66]
mov word [rbp - 0x72], cx
lea rcx, [rbp + 0x230]
movaps xmm0, xmmword [rbp - 0x80]
mov qword [rbp + 0x2c0], rdx
lea rdx, [rbp - 0x50]
mov word [rbp + 0x2ce], ax
movaps xmm1, xmmword [rbp + 0x2c0]
movdqa xmmword [rbp - 0x50], xmm1
movdqa xmmword [rbp + 0x270], xmm0
call fcn.140104ce0
lea rcx, [rbp + 0x2e0]
call fcn.1400baff0
test rax, rax
jne 0x1400983c1
mov rax, qword [rbp + 0x2d0]
movsxd rcx, dword [rax + 4]
mov eax, 4
cmp qword [rbp + rcx + 0x318], 0
cmovne eax, r13d
or eax, dword [rbp + rcx + 0x2e0]
and eax, 0x15
or eax, 2
mov dword [rbp + rcx + 0x2e0], eax
and eax, dword [rbp + rcx + 0x2e4]
jne 0x14009a737
mov r10, qword [rbp + 0x238]
mov r8, qword [rbp + 0x230]
mov rax, r10
sub rax, r8
cmp rax, 0x1000
jb 0x14009a379
movsxd r11, dword [r8 + 0x3c]
mov edx, r13d
add r11, r8
mov qword [rbp - 0x58], r11
movzx eax, word [r11 + 0x14]
lea r14, [r11 + 0x18]
movzx r9d, word [r11 + 6]
add r14, rax
mov qword [rbp + 0x270], r14
test r9d, r9d
je 0x14009a379
lea rbx, str..text
nop word [rax + rax]
mov rcx, r13
movzx eax, byte [r14 + rcx]
inc rcx
cmp al, byte [rbx + rcx - 1]
jne 0x140098539
cmp rcx, 6
jne 0x140098423
mov ebx, dword [r14 + 0xc]
mov r9d, r13d
mov rcx, qword [rbp + 0x1c0]
mov edx, dword [r14 + 0x14]
add rbx, rcx
add rdx, r8
mov qword [rbp - 0x50], rbx
cmp dword [r14 + 0x10], 0
mov qword [rbp - 0x60], rdx
mov dword [rsp + 0x38], r13d
jbe 0x14009a379
nop dword [rax + rax]
mov eax, r9d
lea r14, [rbx + rax]
movzx eax, byte [rdx + rax]
cmp byte [r14], al
je 0x14009a0e0
mov r15d, dword [r11 + 0x88]
lea eax, [r9 + 1]
add r15, rcx
xor r8d, r8d
mov edi, r8d
mov r12d, dword [r15 + 0x1c]
mov r13d, dword [r15 + 0x20]
add r12, rcx
mov ebx, dword [r15 + 0x24]
add r13, rcx
add rbx, rcx
movsxd rcx, eax
cmp rcx, 1
jle 0x1400984c8
cmp byte [rcx + rdx], 0xcc
je 0x1400984c8
inc rdi
dec rcx
cmp rcx, 1
jg 0x1400984b6
xorps xmm0, xmm0
mov qword [rbp + 0x218], r8
mov qword [rbp + 0x220], r8
lea rdx, [0x1401f89d8]
mov r8d, 4
lea rcx, [rbp + 0x208]
movups xmmword [rbp + 0x208], xmm0
call fcn.14003ce50
mov r9d, dword [r15 + 0x18]
xor eax, eax
mov edx, eax
test r9d, r9d
je 0x1400985b8
mov r8, qword [rbp + 0x1c0]
movzx eax, word [rbx]
mov ecx, dword [r12 + rax*4]
add rcx, r8
cmp r14, rcx
jb 0x140098529
lea rax, [rcx + rdi]
cmp r14, rax
jbe 0x140098554
inc edx
add rbx, 2
cmp edx, r9d
jb 0x140098511
jmp 0x1400985b8
add r14, 0x28
inc edx
mov qword [rbp + 0x270], r14
cmp edx, r9d
jne 0x140098420
jmp 0x14009a379
mov eax, edx
mov rdi, 0xffffffffffffffff
mov r9d, dword [r13 + rax*4]
add r9, r8
inc rdi
cmp byte [r9 + rdi], 0
jne 0x140098565
mov rax, qword [rbp + 0x220]
cmp rdi, rax
ja 0x1400985a9
cmp rax, 0xf
mov qword [rbp + 0x218], rdi
lea rbx, [rbp + 0x208]
mov r8, rdi
cmova rbx, qword [rbp + 0x208]
mov rdx, r9
mov rcx, rbx
call fcn.1401d15a0
mov byte [rbx + rdi], 0
jmp 0x1400985b8
mov rdx, rdi
lea rcx, [rbp + 0x208]
call fcn.1400ff8b0
mov rdi, qword [rbp + 0x208]
lea rcx, [rbp + 0x208]
mov r15, qword [rbp + 0x220]
mov rbx, qword [rbp + 0x218]
cmp r15, 0xf
mov qword [rbp - 0x68], rdi
cmova rcx, rdi
cmp rbx, 0xe
jne 0x1400985fd
mov r8, rbx
lea rdx, [0x1402006d0]
call fcn.1401d1fe0
test eax, eax
je 0x14009a32a
cmp r15, 0xf
lea rcx, [rbp + 0x208]
cmova rcx, rdi
cmp rbx, 0x18
jne 0x140098629
mov r8, rbx
lea rdx, str.ChangeDisplaySettingsExW
call fcn.1401d1fe0
test eax, eax
je 0x14009a32a
cmp r15, 0xf
lea rcx, [rbp + 0x208]
cmova rcx, rdi
cmp rbx, 0xe
jne 0x140098655
mov r8, rbx
lea rdx, str.CreateProcessA
call fcn.1401d1fe0
test eax, eax
je 0x14009a32a
cmp r15, 0xf
lea rcx, [rbp + 0x208]
cmova rcx, rdi
cmp rbx, 0x1b
jne 0x140098681
mov r8, rbx
lea rdx, str.RtlQueryEnvironmentVariable
call fcn.1401d1fe0
test eax, eax
je 0x14009a32a
cmp r15, 0xf
lea rcx, [rbp + 0x208]
cmova rcx, rdi
cmp rbx, 0x13
jne 0x1400986ad
mov r8, rbx
lea rdx, str.NtAcceptConnectPort
call fcn.1401d1fe0
test eax, eax
je 0x14009a32a
cmp r15, 0xf
mov dword [rsp + 0x68], 0xfcc5edf1
lea r14, [rbp + 0x208]
mov dword [rsp + 0x6c], 0xa96284dc
cmova r14, rdi
mov dword [rsp + 0x70], 0xb134c943
xor r8d, r8d
mov dword [rsp + 0x74], 0x92c85f5d
mov r12d, r8d
mov dword [rsp + 0x34], r8d
mov rcx, 0xffffffffffffffff
nop
inc rcx
cmp byte [r14 + rcx], r8b
jne 0x1400986f0
xor dl, dl
mov edi, r8d
test ecx, ecx
je 0x140098902
mov r13, r14
mov qword [rbp + 0x1e0], r14
movzx esi, byte [r13]
mov r15d, 0xfffffffe
sub r15d, esi
mov r13d, 0xffffffff
lea ebx, [rsi + 2]
nop word [rax + rax]
movzx r10d, dl
mov r11d, ebx
xor edx, edx
lea r8d, [rsi + r10]
lea eax, [r12 + r8]
div r13d
lea eax, [rdx + 1]
lea edx, [r8 + 1]
imul eax, edx
lea r8d, [r10 + 1]
xor edx, edx
div r13d
mov r9d, edx
lea eax, [rdx + 1]
xor edx, edx
imul eax, r8d
div r13d
lea rax, [r11 - 2]
and eax, 3
mov r8d, edx
xor edx, edx
xor r8d, dword [rsp + rax*4 + 0x68]
lea eax, [r8 + r9]
div r13d
lea eax, [rdx + 1]
lea edx, [r8 + 1]
imul eax, edx
xor edx, edx
div r13d
mov r9d, edx
lea eax, [rdi + rdx]
xor edx, edx
div ecx
movzx r10d, byte [rdx + r14]
xor edx, edx
lea r8d, [rsi + r10]
lea eax, [r9 + r8]
div r13d
lea eax, [rdx + 1]
lea edx, [r8 + 1]
imul eax, edx
lea r8d, [r10 + 1]
xor edx, edx
div r13d
mov r9d, edx
lea eax, [rdx + 1]
xor edx, edx
imul eax, r8d
div r13d
lea rax, [r11 - 1]
and eax, 3
mov r8d, edx
xor edx, edx
xor r8d, dword [rsp + rax*4 + 0x68]
lea eax, [r8 + r9]
div r13d
lea eax, [rdx + 1]
lea edx, [r8 + 1]
imul eax, edx
xor edx, edx
div r13d
mov r9d, edx
lea eax, [rdi + rdx]
xor edx, edx
div ecx
movzx r10d, byte [rdx + r14]
xor edx, edx
lea r8d, [rsi + r10]
lea eax, [r9 + r8]
div r13d
lea eax, [rdx + 1]
lea edx, [r8 + 1]
imul eax, edx
lea r8d, [r10 + 1]
xor edx, edx
div r13d
mov r9d, edx
lea eax, [rdx + 1]
xor edx, edx
imul eax, r8d
div r13d
mov r8d, edx
mov rax, rbx
and eax, 3
xor edx, edx
add ebx, 4
xor r8d, dword [rsp + rax*4 + 0x68]
lea eax, [r8 + r9]
div r13d
lea eax, [rdx + 1]
lea edx, [r8 + 1]
imul eax, edx
xor edx, edx
div r13d
mov r9d, edx
lea eax, [rdi + rdx]
xor edx, edx
div ecx
movzx r10d, byte [rdx + r14]
xor edx, edx
lea r8d, [rsi + r10]
lea eax, [r9 + r8]
div r13d
lea eax, [rdx + 1]
lea edx, [r8 + 1]
imul eax, edx
lea r8d, [r10 + 1]
xor edx, edx
div r13d
mov r9d, edx
lea eax, [rdx + 1]
xor edx, edx
imul eax, r8d
div r13d
lea rax, [r11 + 1]
and eax, 3
mov r8d, edx
xor edx, edx
xor r8d, dword [rsp + rax*4 + 0x68]
lea eax, [r8 + r9]
div r13d
lea eax, [rdx + 1]
lea edx, [r8 + 1]
imul eax, edx
xor edx, edx
div r13d
mov r12d, edx
lea eax, [rdi + rdx]
xor edx, edx
div ecx
lea eax, [rbx + r15]
movzx edx, byte [rdx + r14]
cmp eax, 4
jb 0x140098730
mov r13, qword [rbp + 0x1e0]
inc edi
inc r13
mov dword [rsp + 0x34], r12d
mov qword [rbp + 0x1e0], r13
cmp edi, ecx
jb 0x140098710
mov rsi, qword [rsp + 0x40]
xor r8d, r8d
mov ecx, dword [rsi + 4]
mov eax, ecx
shr eax, 4
mov dword [rbp + 0x1e0], eax
test eax, eax
je 0x14009a0fe
mov eax, dword [rsi + 8]
lea r13, [rbp + 0x2a1]
add eax, ecx
mov byte [rsp + 0x4c], 0xdc
mov qword [rbp + 0x2a0], rax
xor cl, cl
mov r12d, r8d
nop word [rax + rax]
movzx r9d, byte [r13 - 1]
mov eax, 0x80808081
movzx r10d, byte [r13]
movzx r11d, byte [r13 + 1]
movzx ebx, byte [r13 + 2]
movzx edi, byte [r13 + 3]
movzx esi, byte [r13 + 4]
movzx r14d, byte [r13 + 5]
movzx r15d, byte [r13 + 6]
movzx ecx, cl
add ecx, r9d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
movabs rax, 0xfc9215ddfa245
movzx r8d, cl
add r8, rax
movabs rax, 0x8080808080808081
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
add ecx, r9d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
movabs rax, 0xd9103fc58343e
movzx r8d, cl
add r8, rax
movabs rax, 0x8080808080808081
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
inc ecx
xor ecx, r9d
movabs r9, 0x8080808080808081
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
movabs rax, 0xa9422cffde495
movzx ecx, cl
add rcx, rax
mov rax, r9
mul rcx
shr rdx, 7
imul rax, rdx, 0xff
sub rcx, rax
mov eax, 0x80808081
movzx ecx, cl
add ecx, r10d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
movabs rax, 0xfc9215ddfa245
movzx r8d, cl
add r8, rax
mov rax, r9
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
add ecx, r10d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
movabs rax, 0xd9103fc58343e
movzx r8d, cl
add r8, rax
mov rax, r9
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
inc ecx
xor ecx, r10d
movabs r10, 0xfc9215ddfa245
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
movabs rax, 0xa9422cffde495
movzx ecx, cl
add rcx, rax
mov rax, r9
mul rcx
shr rdx, 7
imul rax, rdx, 0xff
sub rcx, rax
mov eax, 0x80808081
movzx ecx, cl
add ecx, r11d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r9
movzx r8d, cl
add r8, r10
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
add ecx, r11d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
movabs rax, 0xd9103fc58343e
movzx r8d, cl
add r8, rax
mov rax, r9
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
inc ecx
xor ecx, r11d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
movabs rax, 0xa9422cffde495
movzx ecx, cl
add rcx, rax
mov rax, r9
mul rcx
shr rdx, 7
imul rax, rdx, 0xff
sub rcx, rax
mov eax, 0x80808081
movzx ecx, cl
add ecx, ebx
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r9
movzx r8d, cl
add r8, r10
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
movzx ecx, r8b
add ecx, ebx
mov eax, 0x80808081
mul ecx
movabs r11, 0xd9103fc58343e
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r9
movzx r8d, cl
add r8, r11
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
inc ecx
xor ecx, ebx
movabs rbx, 0xa9422cffde495
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r9
movzx ecx, cl
add rcx, rbx
mul rcx
shr rdx, 7
imul rax, rdx, 0xff
sub rcx, rax
mov eax, 0x80808081
movzx ecx, cl
add ecx, edi
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r9
movzx r8d, cl
add r8, r10
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
add ecx, edi
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r9
movzx r8d, cl
add r8, r11
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
inc ecx
xor ecx, edi
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r9
movzx ecx, cl
add rcx, rbx
mul rcx
shr rdx, 7
imul rax, rdx, 0xff
sub rcx, rax
mov eax, 0x80808081
movzx ecx, cl
add ecx, esi
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
movzx r8d, cl
add r8, r10
mov rax, r9
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
add ecx, esi
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r9
movzx r8d, cl
add r8, r11
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
inc ecx
xor ecx, esi
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r9
movzx ecx, cl
add rcx, rbx
mul rcx
shr rdx, 7
imul rax, rdx, 0xff
sub rcx, rax
mov eax, 0x80808081
movzx ecx, cl
add ecx, r14d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r9
movzx r8d, cl
add r8, r10
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
add ecx, r14d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r9
movzx r8d, cl
add r8, r11
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
inc ecx
xor ecx, r14d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r9
movzx ecx, cl
add rcx, rbx
mul rcx
shr rdx, 7
imul rax, rdx, 0xff
sub rcx, rax
mov eax, 0x80808081
movzx ecx, cl
add ecx, r15d
mul ecx
add r12d, 8
lea r13, [r13 + 8]
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r9
movzx r8d, cl
add r8, r10
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
add ecx, r15d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r9
movzx r8d, cl
add r8, r11
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
inc ecx
xor ecx, r15d
mov r15, r9
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r9
movzx ecx, cl
add rcx, rbx
mul rcx
shr rdx, 7
imul rax, rdx, 0xff
sub rcx, rax
cmp r12d, 8
jb 0x140098940
mov rsi, qword [rsp + 0x40]
lea rdi, [rbp + 0x2a1]
mov byte [rsp + 0x4d], cl
mov r13, r10
xor cl, cl
mov eax, dword [rsi + 4]
mov rsi, r11
mov dword [rbp + 0x2a0], eax
xor eax, eax
mov r14d, eax
movzx r9d, byte [rdi - 1]
mov eax, 0x80808081
movzx r10d, byte [rdi]
movzx r11d, byte [rdi + 1]
movzx ebx, byte [rdi + 2]
movzx ecx, cl
add ecx, r9d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx r8d, cl
add r8, r13
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
add ecx, r9d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx r8d, cl
add r8, rsi
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
inc ecx
xor ecx, r9d
movabs r9, 0xa9422cffde495
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx ecx, cl
add rcx, r9
mul rcx
shr rdx, 7
imul rax, rdx, 0xff
sub rcx, rax
mov eax, 0x80808081
movzx ecx, cl
add ecx, r10d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx r8d, cl
add r8, r13
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
add ecx, r10d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx r8d, cl
add r8, rsi
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
inc ecx
xor ecx, r10d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx ecx, cl
add rcx, r9
mul rcx
shr rdx, 7
imul rax, rdx, 0xff
sub rcx, rax
mov eax, 0x80808081
movzx ecx, cl
add ecx, r11d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx r8d, cl
add r8, r13
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
add ecx, r11d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx r8d, cl
add r8, rsi
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
inc ecx
xor ecx, r11d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx ecx, cl
add rcx, r9
mul rcx
shr rdx, 7
imul rax, rdx, 0xff
sub rcx, rax
mov eax, 0x80808081
movzx ecx, cl
add ecx, ebx
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx r8d, cl
add r8, r13
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
add ecx, ebx
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx r8d, cl
add r8, rsi
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
movzx ecx, r8b
lea rdi, [rdi + 4]
inc ecx
mov eax, 0x80808081
xor ecx, ebx
add r14d, 4
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx ecx, cl
add rcx, r9
mul rcx
shr rdx, 7
imul rax, rdx, 0xff
sub rcx, rax
cmp r14d, 4
jb 0x140098f00
mov rsi, qword [rsp + 0x40]
lea rdi, [rbp + 0x299]
mov byte [rsp + 0x4e], cl
movabs r12, 0xd9103fc58343e
xor cl, cl
mov eax, dword [rsi + 8]
mov rsi, r9
mov dword [rbp + 0x298], eax
xor eax, eax
mov r14d, eax
nop dword [rax + rax]
movzx r9d, byte [rdi - 1]
mov eax, 0x80808081
movzx r10d, byte [rdi]
movzx r11d, byte [rdi + 1]
movzx ebx, byte [rdi + 2]
movzx ecx, cl
add ecx, r9d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx r8d, cl
add r8, r13
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
add ecx, r9d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx r8d, cl
add r8, r12
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
inc ecx
xor ecx, r9d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx ecx, cl
add rcx, rsi
mul rcx
shr rdx, 7
imul rax, rdx, 0xff
sub rcx, rax
mov eax, 0x80808081
movzx ecx, cl
add ecx, r10d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx r8d, cl
add r8, r13
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
add ecx, r10d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx r8d, cl
add r8, r12
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
inc ecx
xor ecx, r10d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx ecx, cl
add rcx, rsi
mul rcx
shr rdx, 7
imul rax, rdx, 0xff
sub rcx, rax
mov eax, 0x80808081
movzx ecx, cl
add ecx, r11d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx r8d, cl
add r8, r13
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
add ecx, r11d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx r8d, cl
add r8, r12
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
inc ecx
xor ecx, r11d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx ecx, cl
add rcx, rsi
mul rcx
shr rdx, 7
imul rax, rdx, 0xff
sub rcx, rax
mov eax, 0x80808081
movzx ecx, cl
add ecx, ebx
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx r8d, cl
add r8, r13
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
add ecx, ebx
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx r8d, cl
add r8, r12
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
movzx ecx, r8b
inc ecx
lea rdi, [rdi + 4]
xor ecx, ebx
mov eax, 0x80808081
mul ecx
add r14d, 4
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx ecx, cl
add rcx, rsi
mul rcx
shr rdx, 7
imul rax, rdx, 0xff
sub rcx, rax
cmp r14d, 4
jb 0x1400991d0
mov rsi, qword [rsp + 0x40]
mov r12d, dword [rsp + 0x34]
mov byte [rsp + 0x4f], cl
mov eax, dword [rsi]
cmp dword [rsp + 0x4c], eax
jne 0x14009a0fe
mov edx, dword [rbp + 0x1e0]
xor r9d, r9d
mov dword [rsp + 0x34], r9d
mov r13d, r9d
test edx, edx
je 0x14009a079
mov r8d, dword [rsi + 4]
shr r8d, 4
nop dword [rax]
cmp r13d, r8d
ja 0x1400994c0
mov rax, qword [rsi + 0x10]
mov ecx, r13d
add rcx, rcx
mov rax, qword [rax + rcx*8]
test al, al
je 0x1400994c0
shr rax, 0x20
cmp eax, r12d
je 0x1400994d2
inc r13d
mov dword [rsp + 0x34], r13d
cmp r13d, edx
jb 0x1400994a0
jmp 0x14009a079
mov ecx, dword [rsi + 4]
mov eax, ecx
shr eax, 4
cmp r13d, eax
ja 0x14009a073
mov eax, dword [rsi + 8]
lea r12, [rbp + 0x1e1]
add eax, ecx
mov byte [rsp + 0x50], 0xdc
mov qword [rbp + 0x1e0], rax
xor cl, cl
mov r13d, r9d
movzx r9d, byte [r12 - 1]
mov eax, 0x80808081
movzx r10d, byte [r12]
movzx r11d, byte [r12 + 1]
movzx ebx, byte [r12 + 2]
movzx edi, byte [r12 + 3]
movzx esi, byte [r12 + 4]
movzx r14d, byte [r12 + 5]
movzx r15d, byte [r12 + 6]
movzx ecx, cl
add ecx, r9d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
movabs rax, 0xfc9215ddfa245
movzx r8d, cl
add r8, rax
movabs rax, 0x8080808080808081
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
add ecx, r9d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
movabs rax, 0xd9103fc58343e
movzx r8d, cl
add r8, rax
movabs rax, 0x8080808080808081
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
inc ecx
xor ecx, r9d
movabs r9, 0x8080808080808081
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
movabs rax, 0xa9422cffde495
movzx ecx, cl
add rcx, rax
mov rax, r9
mul rcx
shr rdx, 7
imul rax, rdx, 0xff
sub rcx, rax
mov eax, 0x80808081
movzx ecx, cl
add ecx, r10d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
movabs rax, 0xfc9215ddfa245
movzx r8d, cl
add r8, rax
mov rax, r9
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
add ecx, r10d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
movabs rax, 0xd9103fc58343e
movzx r8d, cl
add r8, rax
mov rax, r9
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
inc ecx
xor ecx, r10d
movabs r10, 0xfc9215ddfa245
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
movabs rax, 0xa9422cffde495
movzx ecx, cl
add rcx, rax
mov rax, r9
mul rcx
shr rdx, 7
imul rax, rdx, 0xff
sub rcx, rax
mov eax, 0x80808081
movzx ecx, cl
add ecx, r11d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r9
movzx r8d, cl
add r8, r10
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
add ecx, r11d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
movabs rax, 0xd9103fc58343e
movzx r8d, cl
add r8, rax
mov rax, r9
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
inc ecx
xor ecx, r11d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
movabs rax, 0xa9422cffde495
movzx ecx, cl
add rcx, rax
mov rax, r9
mul rcx
shr rdx, 7
imul rax, rdx, 0xff
sub rcx, rax
mov eax, 0x80808081
movzx ecx, cl
add ecx, ebx
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r9
movzx r8d, cl
add r8, r10
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
movzx ecx, r8b
add ecx, ebx
mov eax, 0x80808081
mul ecx
movabs r11, 0xd9103fc58343e
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r9
movzx r8d, cl
add r8, r11
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
inc ecx
xor ecx, ebx
movabs rbx, 0xa9422cffde495
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r9
movzx ecx, cl
add rcx, rbx
mul rcx
shr rdx, 7
imul rax, rdx, 0xff
sub rcx, rax
mov eax, 0x80808081
movzx ecx, cl
add ecx, edi
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r9
movzx r8d, cl
add r8, r10
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
add ecx, edi
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r9
movzx r8d, cl
add r8, r11
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
inc ecx
xor ecx, edi
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r9
movzx ecx, cl
add rcx, rbx
mul rcx
shr rdx, 7
imul rax, rdx, 0xff
sub rcx, rax
mov eax, 0x80808081
movzx ecx, cl
add ecx, esi
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
movzx r8d, cl
add r8, r10
mov rax, r9
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
add ecx, esi
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r9
movzx r8d, cl
add r8, r11
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
inc ecx
xor ecx, esi
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r9
movzx ecx, cl
add rcx, rbx
mul rcx
shr rdx, 7
imul rax, rdx, 0xff
sub rcx, rax
mov eax, 0x80808081
movzx ecx, cl
add ecx, r14d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r9
movzx r8d, cl
add r8, r10
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
add ecx, r14d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r9
movzx r8d, cl
add r8, r11
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
inc ecx
xor ecx, r14d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r9
movzx ecx, cl
add rcx, rbx
mul rcx
shr rdx, 7
imul rax, rdx, 0xff
sub rcx, rax
mov eax, 0x80808081
movzx ecx, cl
add ecx, r15d
mul ecx
add r13d, 8
lea r12, [r12 + 8]
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r9
movzx r8d, cl
add r8, r10
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
add ecx, r15d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r9
movzx r8d, cl
add r8, r11
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
inc ecx
xor ecx, r15d
mov r15, r9
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r9
movzx ecx, cl
add rcx, rbx
mul rcx
shr rdx, 7
imul rax, rdx, 0xff
sub rcx, rax
cmp r13d, 8
jb 0x140099500
mov rsi, qword [rsp + 0x40]
lea rdi, [rbp + 0x1e1]
mov byte [rsp + 0x51], cl
mov r12, r10
xor cl, cl
mov eax, dword [rsi + 4]
mov rsi, r11
mov dword [rbp + 0x1e0], eax
xor eax, eax
mov r14d, eax
nop dword [rax + rax]
movzx r9d, byte [rdi - 1]
mov eax, 0x80808081
movzx r10d, byte [rdi]
movzx r11d, byte [rdi + 1]
movzx ebx, byte [rdi + 2]
movzx ecx, cl
add ecx, r9d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx r8d, cl
add r8, r12
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
add ecx, r9d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx r8d, cl
add r8, rsi
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
inc ecx
xor ecx, r9d
movabs r9, 0xa9422cffde495
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx ecx, cl
add rcx, r9
mul rcx
shr rdx, 7
imul rax, rdx, 0xff
sub rcx, rax
mov eax, 0x80808081
movzx ecx, cl
add ecx, r10d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx r8d, cl
add r8, r12
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
add ecx, r10d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx r8d, cl
add r8, rsi
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
inc ecx
xor ecx, r10d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx ecx, cl
add rcx, r9
mul rcx
shr rdx, 7
imul rax, rdx, 0xff
sub rcx, rax
mov eax, 0x80808081
movzx ecx, cl
add ecx, r11d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx r8d, cl
add r8, r12
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
add ecx, r11d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx r8d, cl
add r8, rsi
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
inc ecx
xor ecx, r11d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx ecx, cl
add rcx, r9
mul rcx
shr rdx, 7
imul rax, rdx, 0xff
sub rcx, rax
mov eax, 0x80808081
movzx ecx, cl
add ecx, ebx
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx r8d, cl
add r8, r12
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
add ecx, ebx
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx r8d, cl
add r8, rsi
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
movzx ecx, r8b
lea rdi, [rdi + 4]
inc ecx
mov eax, 0x80808081
xor ecx, ebx
add r14d, 4
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx ecx, cl
add rcx, r9
mul rcx
shr rdx, 7
imul rax, rdx, 0xff
sub rcx, rax
cmp r14d, 4
jb 0x140099ad0
mov rsi, qword [rsp + 0x40]
lea rdi, [rbp + 0x291]
mov byte [rsp + 0x52], cl
movabs r13, 0xd9103fc58343e
xor cl, cl
mov eax, dword [rsi + 8]
mov rsi, r9
mov dword [rbp + 0x290], eax
xor eax, eax
mov r14d, eax
nop dword [rax + rax]
movzx r9d, byte [rdi - 1]
mov eax, 0x80808081
movzx r10d, byte [rdi]
movzx r11d, byte [rdi + 1]
movzx ebx, byte [rdi + 2]
movzx ecx, cl
add ecx, r9d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx r8d, cl
add r8, r12
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
add ecx, r9d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx r8d, cl
add r8, r13
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
inc ecx
xor ecx, r9d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx ecx, cl
add rcx, rsi
mul rcx
shr rdx, 7
imul rax, rdx, 0xff
sub rcx, rax
mov eax, 0x80808081
movzx ecx, cl
add ecx, r10d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx r8d, cl
add r8, r12
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
add ecx, r10d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx r8d, cl
add r8, r13
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
inc ecx
xor ecx, r10d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx ecx, cl
add rcx, rsi
mul rcx
shr rdx, 7
imul rax, rdx, 0xff
sub rcx, rax
mov eax, 0x80808081
movzx ecx, cl
add ecx, r11d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx r8d, cl
add r8, r12
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
add ecx, r11d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx r8d, cl
add r8, r13
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
inc ecx
xor ecx, r11d
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx ecx, cl
add rcx, rsi
mul rcx
shr rdx, 7
imul rax, rdx, 0xff
sub rcx, rax
mov eax, 0x80808081
movzx ecx, cl
add ecx, ebx
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx r8d, cl
add r8, r12
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
mov eax, 0x80808081
movzx ecx, r8b
add ecx, ebx
mul ecx
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx r8d, cl
add r8, r13
mul r8
shr rdx, 7
imul rax, rdx, 0xff
sub r8, rax
movzx ecx, r8b
inc ecx
lea rdi, [rdi + 4]
xor ecx, ebx
mov eax, 0x80808081
mul ecx
add r14d, 4
shr edx, 7
imul eax, edx, 0xff
sub ecx, eax
mov rax, r15
movzx ecx, cl
add rcx, rsi
mul rcx
shr rdx, 7
imul rax, rdx, 0xff
sub rcx, rax
cmp r14d, 4
jb 0x140099da0
mov rsi, qword [rsp + 0x40]
mov r13d, dword [rsp + 0x34]
mov byte [rsp + 0x53], cl
mov eax, dword [rsi]
cmp dword [rsp + 0x50], eax
jne 0x14009a073
mov eax, dword [rsi + 4]
shr eax, 4
cmp r13d, eax
jbe 0x14009a05d
xor al, al
test al, al
setne byte [rsp + 0x30]
jmp 0x14009a079
mov rax, qword [rsi + 0x10]
mov rcx, r13
add rcx, rcx
mov eax, dword [rax + rcx*8]
test al, al
setne byte [rsp + 0x30]
jmp 0x14009a079
xor al, al
mov byte [rsp + 0x30], al
cmp byte [rsp + 0x30], 0
je 0x14009a104
mov rcx, qword [rbp - 0x68]
mov rax, qword [rbp + 0x220]
mov byte [rsp + 0x58], 0
cmp rax, 0xf
jbe 0x14009a0c8
lea rdx, [rax + 1]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14009a0c3
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14009a791
call fcn.140190a2c
mov rbx, qword [rbp - 0x50]
mov r11, qword [rbp - 0x58]
mov r9d, dword [rsp + 0x38]
mov rdx, qword [rbp - 0x60]
mov rcx, qword [rbp + 0x1c0]
mov rax, qword [rbp + 0x270]
inc r9d
mov dword [rsp + 0x38], r9d
cmp r9d, dword [rax + 0x10]
jb 0x140098470
jmp 0x14009a361
xor al, al
mov byte [rsp + 0x30], al
mov rdi, qword [rbp + 0x1f8]
lea r14, [rbp + 0x1e8]
xor r13d, r13d
movabs r15, 0x7fffffffffffffff
cmp qword [rbp + 0x200], 0xf
mov qword [rbp - 0x38], r13
cmova r14, qword [rbp + 0x1e8]
cmp rdi, r15
ja 0x14009a797
cmp rdi, 0xf
ja 0x14009a15f
movups xmm0, xmmword [r14]
mov rcx, qword [rbp - 0x68]
mov qword [rbp - 0x30], rdi
movups xmmword [rbp - 0x40], xmm0
mov qword [rbp - 0x28], reloc.WS2_32.dll_ntohs
jmp 0x14009a1f8
mov rbx, rdi
or rbx, 0xf
cmp rbx, r15
jbe 0x14009a17e
movabs rax, 0x8000000000000000
mov rbx, r15
add rax, 0x27
jmp 0x14009a1a5
cmp rbx, 0x16
mov eax, reloc.WLDAP32.dll_Ordinal_22
cmovb rbx, rax
lea rcx, [rbx + 1]
cmp rcx, 0x1000
jb 0x14009a1c7
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x14009a78b
mov rcx, rax
call fcn.140190b18
mov rcx, rax
test rax, rax
je 0x14009a791
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x14009a1d6
test rcx, rcx
je 0x14009a1d3
call fcn.140190b18
jmp 0x14009a1d6
mov rax, r13
lea r8, [rdi + 1]
mov qword [rbp - 0x40], rax
mov rdx, r14
mov qword [rbp - 0x30], rdi
mov rcx, rax
mov qword [rbp - 0x28], rbx
call fcn.1401d15a0
mov rcx, qword [rbp + 0x208]
cmp qword [rbp + 0x220], 0xf
lea rdx, [rbp + 0x208]
lea r8, [rbp - 0x40]
cmova rdx, rcx
mov rcx, rsi
call fcn.1400f2970
cmp qword [rbp + 0x220], 0xf
lea r14, [rbp + 0x208]
mov rdi, qword [rbp + 0x218]
cmova r14, qword [rbp + 0x208]
mov qword [rbp + 0x250], r13
cmp rdi, r15
ja 0x14009a797
cmp rdi, 0xf
ja 0x14009a26d
movups xmm0, xmmword [r14]
mov qword [rbp + 0x258], rdi
mov qword [rbp + 0x260], reloc.WS2_32.dll_ntohs
movups xmmword [rbp + 0x248], xmm0
jmp 0x14009a308
mov rbx, rdi
or rbx, 0xf
cmp rbx, r15
jbe 0x14009a28c
movabs rax, 0x8000000000000000
mov rbx, r15
add rax, 0x27
jmp 0x14009a2b3
cmp rbx, 0x16
mov eax, reloc.WLDAP32.dll_Ordinal_22
cmovb rbx, rax
lea rcx, [rbx + 1]
cmp rcx, 0x1000
jb 0x14009a2d5
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x14009a78b
mov rcx, rax
call fcn.140190b18
mov rcx, rax
test rax, rax
je 0x14009a791
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x14009a2e4
test rcx, rcx
je 0x14009a2e1
call fcn.140190b18
jmp 0x14009a2e4
mov rax, r13
lea r8, [rdi + 1]
mov qword [rbp + 0x248], rax
mov rdx, r14
mov qword [rbp + 0x258], rdi
mov rcx, rax
mov qword [rbp + 0x260], rbx
call fcn.1401d15a0
lea r8, [rbp + 0x248]
mov rcx, rsi
lea rdx, [0x1401f821e]
call fcn.1400f2970
mov rcx, qword [rbp + 0x208]
jmp 0x14009a088
cmp r15, 0xf
jbe 0x14009a361
lea rdx, [r15 + 1]
mov rax, rdi
cmp rdx, 0x1000
jb 0x14009a359
mov rdi, qword [rdi - 8]
add rdx, 0x27
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14009a791
mov rcx, rdi
call fcn.140190a2c
mov r12d, dword [rbp + 0x1d8]
xor r13d, r13d
mov r8, qword [rbp + 0x230]
mov r10, qword [rbp + 0x238]
cmp r8, r10
je 0x14009a385
mov qword [rbp + 0x238], r8
test r8, r8
je 0x14009a3d3
mov rdx, qword [rbp + 0x240]
mov rax, r8
sub rdx, r8
cmp rdx, 0x1000
jb 0x14009a3b9
mov r8, qword [r8 - 8]
add rdx, 0x27
sub rax, r8
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14009a79d
mov rcx, r8
call fcn.140190a2c
xorps xmm0, xmm0
mov qword [rbp + 0x240], r13
movdqu xmmword [rbp + 0x230], xmm0
mov rax, qword [rbp + 0x2d0]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx + 0x2d0], rax
mov rax, qword [rbp + 0x2d0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rbp + rcx + 0x2cc], edx
lea rcx, [rbp + 0x2e0]
call fcn.1400b54b0
mov rax, qword [rbp + 0x2d0]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_istream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx + 0x2d0], rax
mov rax, qword [rbp + 0x2d0]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::ios_base.0
lea edx, [rcx - 0x18]
mov dword [rbp + rcx + 0x2cc], edx
lea rcx, [rbp + 0x380]
mov qword [rbp + 0x380], rax
call fcn.140192034
mov rdx, qword [rbp + 0x200]
cmp rdx, 0xf
jbe 0x14009a49b
mov rcx, qword [rbp + 0x1e8]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x14009a496
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14009a79d
call fcn.140190a2c
mov eax, dword [rbp + 0x228]
inc r12d
shr eax, 3
mov dword [rbp + 0x1d8], r12d
cmp r12d, eax
jb 0x140097f30
mov rdx, qword [rbp + 0x2b0]
mov rax, qword [rbp + 0x2a8]
cmp rax, rdx
je 0x14009a4ed
nop word [rax + rax]
mov qword [rax + 0x10], r13
mov rcx, rax
cmp qword [rax + 0x18], 0xf
jbe 0x14009a4e1
mov rcx, qword [rax]
add rax, 0x20
mov byte [rcx], 0
cmp rax, rdx
jne 0x14009a4d0
mov r14, qword [0x140328d28]
mov edi, r13d
mov rax, qword [r14 + 8]
mov rsi, qword [r14]
lea rcx, [rax + rax*2]
lea r15, [rcx*8 + 0x10]
test rsi, rsi
jle 0x14009a6c1
lea rbx, [r14 + 0x10]
nop word [rax + rax]
movups xmm1, xmmword [rbx]
movsd xmm0, qword [rbx + 0x10]
movq rax, xmm1
movsd qword [rbp + 0x1d0], xmm0
test rax, rax
je 0x14009a6af
psrldq xmm1, 8
movq r8, xmm1
test r8, r8
je 0x14009a6af
movzx ecx, byte [rbp + 0x1d0]
test cl, cl
jne 0x14009a640
xor edx, edx
mov rcx, rax
call fcn.1401d1c40
jmp 0x14009a6af
mov rax, qword [rbp + 0x2d0]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx + 0x2d0], rax
mov rax, qword [rbp + 0x2d0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rbp + rcx + 0x2cc], edx
lea rcx, [rbp + 0x2e0]
call fcn.1400b54b0
mov rax, qword [rbp + 0x2d0]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_istream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx + 0x2d0], rax
mov rax, qword [rbp + 0x2d0]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::ios_base.0
lea edx, [rcx - 0x18]
mov dword [rbp + rcx + 0x2cc], edx
lea rcx, [rbp + 0x380]
mov qword [rbp + 0x380], rax
call fcn.140192034
mov rdx, qword [rbp + 0x200]
cmp rdx, 0xf
jbe 0x14009a4b7
mov rcx, qword [rbp + 0x1e8]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x14009a636
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14009a79d
call fcn.140190a2c
jmp 0x14009a4b7
cmp cl, 1
jne 0x14009a6af
mov rdx, rax
lea rcx, [rbp + 0x248]
call fcn.140040c90
cmp qword [rbp + 0x260], 0xf
lea rax, [rbp + 0x248]
cmova rax, qword [rbp + 0x248]
mov byte [rax], 0
mov rdx, qword [rbp + 0x260]
cmp rdx, 0xf
jbe 0x14009a6af
mov rcx, qword [rbp + 0x248]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x14009a6aa
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14009a72b
call fcn.140190a2c
inc edi
add rbx, 0x18
movsxd rax, edi
cmp rax, rsi
jl 0x14009a520
mov r8, r15
xor edx, edx
mov rcx, r14
call fcn.1401d1c40
mov rcx, r14
call fcn.1401a6090
lea rcx, [rbp + 0x2a8]
mov qword [0x140328d28], r13
call fcn.1400bb3a0
mov rax, qword [rbp - 0x70]
movups xmm0, xmmword [rsp + 0x58]
movups xmmword [rax], xmm0
mov rcx, qword [rbp + 0x24f0]
xor rcx, rsp
call fcn.140190770
lea r11, [rsp + 0x2600]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.1400beea0
int3
call fcn.1401ac538
int3
call fcn.1401ac538
int3
test al, 4
je 0x14009a744
lea rbx, str.ios_base::badbit_set
jmp 0x14009a758
test al, 2
lea rbx, str.ios_base::failbit_set
lea rax, str.ios_base::eofbit_set
cmove rbx, rax
mov edx, r15d
lea rcx, [rsp + 0x58]
call fcn.14003ba70
mov r8, rax
lea rcx, [rbp + 0x248]
mov rdx, rbx
call fcn.14003c0e0
lea rdx, [0x14021e110]
lea rcx, [rbp + 0x248]
call fcn.140192fb4
int3
call fcn.140031190
int3
call fcn.1401ac538
int3
call fcn.14003b930
int3
call fcn.1401ac538
int3