Function at 0x140a738b0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x160]
sub rsp, 0x260
mov rax, qword [0x140db81c0]
xor rax, rsp
mov qword [rbp + 0x150], rax
mov qword [rsp + 0x78], r8
mov dword [rbp - 0x80], edx
mov rsi, rcx
mov dword [rsp + 0x40], 0
mov r9, qword [rcx + 0x48]
mov rcx, qword [rcx + 0x40]
mov rdx, r9
sub rdx, rcx
cmp rdx, 2
jb 0x140a749b1
mov r11, rcx
mov r10, rcx
movzx r15d, byte [rcx]
movzx r14d, r15b
shr r14b, 7
mov byte [rsp + 0x30], r14b
mov byte [rsp + 0x54], r14b
movzx r14d, r15b
shr r14b, 6
and r14b, 1
mov byte [rsp + 0x55], r14b
movzx ebx, r15b
shr bl, 5
and bl, 1
mov byte [rsp + 0x56], bl
movzx edi, r15b
shr dil, 4
and dil, 1
mov byte [rsp + 0x57], dil
and r15d, 0xf
mov dword [rsp + 0x5c], r15d
movzx r8d, byte [rcx + 1]
movzx eax, r8b
shr al, 7
movzx r13d, al
mov dword [rsp + 0x38], r13d
mov byte [rsp + 0x58], r13b
and r8d, 0x7f
mov dword [rsp + 0x60], r8d
xor ecx, ecx
mov eax, 8
cmp r8d, 0x7f
cmove ecx, eax
mov eax, 2
mov r12d, 4
mov qword [rbp - 0x78], r12
cmp r8d, 0x7e
cmove eax, r12d
add ecx, eax
lea eax, [rcx + r13*4]
mov dword [rsp + 0x50], eax
mov rcx, r10
cmp rdx, rax
jb 0x140a749b1
movabs r9, 0x7fffffffffffffff
test r14b, r14b
je 0x140a73a07
movzx eax, byte [rsi + 0x20d]
nop
test al, al
je 0x140a7498c
mov r8d, dword [rsp + 0x60]
mov r15d, dword [rsp + 0x5c]
movzx r13d, byte [rsp + 0x58]
mov dword [rsp + 0x38], r13d
movzx edi, byte [rsp + 0x57]
movzx ebx, byte [rsp + 0x56]
movzx edx, byte [rsp + 0x54]
mov byte [rsp + 0x30], dl
jmp 0x140a73a0c
movzx edx, byte [rsp + 0x30]
test bl, bl
jne 0x140a7498c
test dil, dil
jne 0x140a7498c
cmp r8d, 0x7e
jge 0x140a73a2d
movsxd r12, r8d
mov ecx, 2
jmp 0x140a73aa8
jne 0x140a73a40
movzx r12d, byte [r10 + 2]
movzx eax, byte [r10 + 3]
mov ecx, 4
jmp 0x140a73aa1
cmp r8d, 0x7f
jne 0x140a74a0c
movzx r12d, byte [r10 + 2]
shl r12, 8
movzx eax, byte [r10 + 3]
or r12, rax
shl r12, 8
movzx eax, byte [r10 + 4]
or r12, rax
shl r12, 8
movzx eax, byte [r10 + 5]
or r12, rax
shl r12, 8
movzx eax, byte [r10 + 6]
or r12, rax
shl r12, 8
movzx eax, byte [r10 + 7]
or r12, rax
shl r12, 8
movzx eax, byte [r10 + 8]
or r12, rax
movzx eax, byte [r10 + 9]
mov ecx, 0xa
shl r12, 8
or r12, rax
mov qword [rsp + 0x68], r12
test r13b, r13b
je 0x140a73adb
movzx eax, byte [rcx + r10]
mov byte [rsp + 0x70], al
movzx eax, byte [r11 + rcx + 1]
mov byte [rsp + 0x71], al
movzx eax, byte [r11 + rcx + 2]
mov byte [rsp + 0x72], al
movzx eax, byte [r11 + rcx + 3]
mov byte [rsp + 0x73], al
jmp 0x140a73ae3
mov dword [rsp + 0x70], 0
movabs r8, 0x8000000000000000
cmp r12, r8
ja 0x140a74a0c
mov r13d, dword [rsp + 0x50]
lea rcx, [r12 + r13]
mov rax, qword [rsi + 0x48]
sub rax, qword [rsi + 0x40]
cmp rax, rcx
jb 0x140a74a0c
test dl, dl
jne 0x140a73b21
lea eax, [r15 - 8]
cmp eax, 2
jbe 0x140a74900
cmp byte [rsp + 0x38], 0
je 0x140a73b4d
xor edx, edx
test r12, r12
je 0x140a73b4d
nop
mov rcx, qword [rsi + 0x40]
add rcx, r13
mov rax, rdx
and eax, 3
movzx eax, byte [rsp + rax + 0x70]
xor byte [rcx + rdx], al
inc rdx
cmp rdx, r12
jne 0x140a73b30
mov rdx, qword [rsi + 0x40]
add rdx, r13
mov qword [rsp + 0x38], rdx
lea r14, [rdx + r12]
xorps xmm0, xmm0
movups xmmword [rbp + 0x130], xmm0
cmp rdx, r14
jne 0x140a73b8f
xor r8d, r8d
mov qword [rbp + 0x140], r8
mov r9d, reloc.WS2_32.dll_ntohs
mov qword [rbp + 0x148], r9
mov byte [rbp + 0x130], r8b
jmp 0x140a73c9c
sub r14, rdx
mov qword [rbp + 0x140], 0
mov qword [rbp + 0x148], reloc.WS2_32.dll_ntohs
cmp r14, r9
ja 0x140a74a36
mov edi, reloc.WS2_32.dll_ntohs
cmp r14, rdi
jbe 0x140a73c61
mov rdi, r14
or rdi, 0xf
cmp rdi, r9
jbe 0x140a73bd4
mov rdi, r9
lea rax, [r8 + 0x27]
jmp 0x140a73c12
cmp rdi, 0x16
mov eax, reloc.WS2_32.dll_shutdown
cmovb rdi, rax
lea rcx, [rdi + 1]
test rcx, rcx
jne 0x140a73bfc
xor eax, eax
mov qword [rbp + 0x130], rax
mov qword [rbp + 0x148], rdi
jmp 0x140a73c68
cmp rcx, 0x1000
jb 0x140a73c47
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140a74a3c
mov rcx, rax
call fcn.140c4b84c
mov rcx, rax
test rax, rax
je 0x140a74a99
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
mov rdx, qword [rsp + 0x38]
mov qword [rbp + 0x130], rax
mov qword [rbp + 0x148], rdi
jmp 0x140a73c68
call fcn.140c4b84c
mov rdx, qword [rsp + 0x38]
mov qword [rbp + 0x130], rax
mov qword [rbp + 0x148], rdi
jmp 0x140a73c68
mov rax, qword [rbp + 0x130]
lea rbx, [rbp + 0x130]
cmp rdi, 0xf
cmova rbx, rax
mov r8, r14
mov rcx, rbx
call fcn.140c85940
mov qword [rbp + 0x140], r14
mov byte [rbx + r14], 0
mov r9, qword [rbp + 0x148]
mov r8, qword [rbp + 0x140]
lea eax, [r15 - 1]
cmp eax, 1
jbe 0x140a7436a
test r15d, r15d
je 0x140a743d5
cmp r15d, 9
jne 0x140a73d7e
cmp r8, 0x7d
ja 0x140a74923
movzx eax, byte [rsi + 0x360]
nop
test al, al
je 0x140a73d28
mov qword [rbp - 0x18], 0
lea rax, [rbp + 0x130]
cmp qword [rbp + 0x148], 0xf
cmova rax, qword [rbp + 0x130]
mov qword [rbp - 0x60], rax
mov rax, qword [rbp + 0x140]
mov qword [rbp - 0x58], rax
lea rax, [rbp - 0x50]
mov qword [rsp + 0x28], rax
mov byte [rsp + 0x20], 0
lea r9, [rbp - 0x60]
mov r8d, 0xa
lea rdx, [rbp + 0x110]
mov rcx, rsi
call fcn.140a75300
nop
mov dword [rsp + 0x38], 2
mov byte [rsp + 0x30], 0
mov rax, qword [rbp + 0x140]
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x78]
mov rcx, qword [rax + 0x38]
test rcx, rcx
je 0x140a74a42
mov rax, qword [rcx]
lea rdx, [rsp + 0x38]
mov qword [rsp + 0x20], rdx
lea r9, [rsp + 0x30]
lea r8, [rsp + 0x48]
lea rdx, [rbp + 0x130]
call qword [rax + reloc.WS2_32.dll_recv]
mov r12, qword [rsp + 0x68]
jmp 0x140a747cb
cmp r15d, 0xa
jne 0x140a73de5
mov eax, 1
xchg byte [rsi + 0x368], al
mov dword [rsp + 0x38], 3
mov byte [rsp + 0x30], 0
mov rax, qword [rbp + 0x140]
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x78]
mov rcx, qword [rax + 0x38]
test rcx, rcx
je 0x140a74a48
mov rax, qword [rcx]
lea rdx, [rsp + 0x38]
mov qword [rsp + 0x20], rdx
lea r9, [rsp + 0x30]
lea r8, [rsp + 0x48]
lea rdx, [rbp + 0x130]
call qword [rax + reloc.WS2_32.dll_recv]
mov r12, qword [rsp + 0x68]
jmp 0x140a747cb
cmp r15d, 8
jne 0x140a74342
xorps xmm0, xmm0
movups xmmword [rbp + 0xf0], xmm0
xor r15d, r15d
mov r11d, r15d
mov qword [rbp + 0x100], r15
mov r10d, reloc.WS2_32.dll_ntohs
mov qword [rbp + 0x108], r10
mov byte [rbp + 0xf0], r11b
cmp r12, 2
jb 0x140a74113
mov rdx, qword [rsi + 0x40]
mov eax, dword [rsp + 0x50]
inc eax
movzx edi, byte [rax + rdx]
movzx eax, byte [rdx + r13]
shl ax, 8
or di, ax
cmp r12, 2
jbe 0x140a73f09
movups xmmword [rbp + 0x110], xmm0
mov qword [rbp + 0x120], r15
mov qword [rbp + 0x128], r15
cmp r8, 2
jb 0x140a74a54
lea rax, [r8 - 2]
cmp rax, r8
cmovb r8, rax
lea rdx, [rbp + 0x130]
cmp r9, r10
cmova rdx, qword [rbp + 0x130]
add rdx, 2
lea rcx, [rbp + 0x110]
call fcn.140131988
or dword [rsp + 0x40], 2
mov rdx, qword [rbp + 0x108]
cmp rdx, 0xf
jbe 0x140a73eda
inc rdx
mov rcx, qword [rbp + 0xf0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140a73ed5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140a74a4e
call fcn.140c4bba0
movups xmm0, xmmword [rbp + 0x110]
movups xmmword [rbp + 0xf0], xmm0
movups xmm1, xmmword [rbp + 0x120]
movups xmmword [rbp + 0x100], xmm1
movdqa xmm0, xmm1
psrldq xmm0, 8
movq r10, xmm0
movq r11, xmm1
mov r9d, r15d
lea rcx, [rbp + 0xf0]
cmp r10, 0xf
cmova rcx, qword [rbp + 0xf0]
add rcx, r11
lea rax, [rbp + 0xf0]
cmp r10, 0xf
cmova rax, qword [rbp + 0xf0]
cmp rax, rcx
je 0x140a73f66
lea r10, [0x140c90530]
movzx edx, byte [rax]
movzx r8d, byte [rdx + r10]
lea edx, [r9 + 0x10]
shl edx, 4
add edx, r8d
movzx r9d, byte [rdx + r10]
cmp r9d, 1
je 0x140a73f6b
inc rax
cmp rax, rcx
jne 0x140a73f41
test r9d, r9d
je 0x140a73f9c
movzx edi, word [0x140c907a4]
lea rdx, [0x140dbb4d0]
cmp qword [0x140dbb4e8], 0xf
cmova rdx, qword [0x140dbb4d0]
mov r8, qword [0x140dbb4e0]
lea rcx, [rbp + 0xf0]
call fcn.14012db64
mov eax, 0x3e8
cmp di, ax
jb 0x140a73fd3
mov eax, 0x3ec
cmp di, ax
je 0x140a73fd3
mov eax, 0x3ee
cmp di, ax
je 0x140a73fd3
movzx eax, di
mov ecx, 0x3f6
sub ax, cx
mov ecx, 0x7c1
cmp ax, cx
ja 0x140a74144
mov edx, 1
lea rcx, [rbp - 0x10]
call fcn.14013efb4
nop
lea rdx, [0x140dbb4f0]
cmp qword [0x140dbb508], 0xf
cmova rdx, qword [0x140dbb4f0]
mov r8, qword [0x140dbb500]
lea rcx, [rbp]
call fcn.140a62fa0
lea rdx, [0x140d82520]
mov rcx, rax
call fcn.14014c878
mov rcx, rax
movzx edx, di
call fcn.140a71e40
lea rdx, [rbp + 0x110]
lea rcx, [rbp - 0x10]
call fcn.140a67ec0
mov rbx, rax
lea rax, [rbp + 0xf0]
cmp rax, rbx
je 0x140a740c0
mov rdx, qword [rbp + 0x108]
cmp rdx, 0xf
jbe 0x140a74083
inc rdx
mov rcx, qword [rbp + 0xf0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140a7407e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140a74a5a
call fcn.140c4bba0
mov qword [rbp + 0x100], r15
mov qword [rbp + 0x108], reloc.WS2_32.dll_ntohs
mov byte [rbp + 0xf0], 0
movups xmm0, xmmword [rbx]
movups xmmword [rbp + 0xf0], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rbp + 0x100], xmm1
mov qword [rbx + 0x10], r15
mov qword [rbx + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rbx], 0
mov rdx, qword [rbp + 0x128]
cmp rdx, 0xf
jbe 0x140a74101
inc rdx
mov rcx, qword [rbp + 0x110]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140a740fc
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140a74a5a
call fcn.140c4bba0
movzx edi, word [0x140c9079c]
lea rcx, [rbp - 0x10]
call fcn.14013d210
jmp 0x140a74144
movzx edi, word [0x140c907a0]
lea rdx, [0x140db4170]
cmp qword [reloc.WS2_32.dll_ntohs], 0xf
cmova rdx, qword [0x140db4170]
mov r8, qword [0x140db4180]
lea rcx, [rbp + 0xf0]
call fcn.14012db64
mov eax, dword [rsi + 0x130]
nop
test eax, eax
je 0x140a7420b
mov eax, dword [rsi + 0x130]
nop
test eax, eax
je 0x140a74167
mov eax, r15d
xchg dword [rsi + 0x130], eax
lea r8, [rbp + 0xf0]
movzx edx, di
mov rcx, rsi
call fcn.140a750f0
mov rdx, qword [0x140c90a20]
mov rcx, rsi
call fcn.140a75fd0
mov r14, qword [rsi + 0x48]
sub r14, qword [rsi + 0x40]
mov rcx, rsi
call fcn.140a72300
lea rbx, [rsi + 0x198]
mov qword [rsp + 0x48], rbx
mov rcx, rbx
call fcn.140c489fc
test eax, eax
jne 0x140a74a70
mov eax, dword [rbx + 0x4c]
cmp eax, 0x7fffffff
je 0x140a74a60
lea rcx, [rsi + 0x178]
lea rax, [rbp + 0xf0]
cmp rcx, rax
je 0x140a741f9
lea rdx, [rbp + 0xf0]
cmp qword [rbp + 0x108], 0xf
cmova rdx, qword [rbp + 0xf0]
mov r8, qword [rbp + 0x100]
call fcn.14012db64
nop
mov rcx, rbx
call fcn.140c48a04
mov eax, 1
jmp 0x140a742cd
movzx eax, word [rsi + 0x1e8]
nop
cmp ax, di
jne 0x140a742f7
mov rcx, rsi
call fcn.140a74d60
lea rdx, [rbp + 0xf0]
cmp qword [rbp + 0x108], 0xf
cmova rdx, qword [rbp + 0xf0]
mov rcx, rax
cmp qword [rax + 0x18], 0xf
jbe 0x140a74248
mov rcx, qword [rax]
mov r8, qword [rax + 0x10]
cmp r8, qword [rbp + 0x100]
jne 0x140a742f7
call fcn.140c85840
test eax, eax
jne 0x140a742f7
mov r14, qword [rsi + 0x48]
sub r14, qword [rsi + 0x40]
mov rcx, rsi
call fcn.140a72300
lea rbx, [rsi + 0x198]
mov qword [rsp + 0x48], rbx
mov rcx, rbx
call fcn.140129a2c
nop
lea rcx, [rsi + 0x178]
lea rax, [rbp + 0xf0]
cmp rcx, rax
je 0x140a742c2
lea rdx, [rbp + 0xf0]
cmp qword [rbp + 0x108], 0xf
cmova rdx, qword [rbp + 0xf0]
mov r8, qword [rbp + 0x100]
call fcn.14012db64
nop
mov rcx, rbx
call fcn.140c48a04
mov eax, r15d
xchg word [rsi + 0x1e8], di
xchg qword [rsi + 0x1f0], r14
xchg byte [rsi + 0x1f8], al
mov edx, 1
mov rcx, rsi
call fcn.140a75e80
mov eax, r15d
xchg byte [rsi + 0x300], al
mov rdx, qword [rbp + 0x108]
cmp rdx, 0xf
jbe 0x140a74338
inc rdx
mov rcx, qword [rbp + 0xf0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140a74333
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140a74a7b
call fcn.140c4bba0
mov r12, qword [rsp + 0x68]
jmp 0x140a747cb
mov r9, qword [rsi + 0x48]
sub r9, qword [rsi + 0x40]
mov byte [rsp + 0x20], 0
lea r8, [0x140db4150]
movzx edx, word [0x140c9079c]
mov rcx, rsi
call fcn.140a721e0
jmp 0x140a747cb
test r15d, r15d
je 0x140a743d5
xor eax, eax
cmp r15d, 1
setne al
mov dword [rsi + 0xd0], eax
movzx eax, byte [rsi + 0x20d]
nop
test al, al
je 0x140a74395
cmp byte [rsp + 0x55], 0
je 0x140a74395
mov al, 1
jmp 0x140a74397
xor al, al
mov byte [rsi + 0xd4], al
lea rbx, [rsi + 0xc8]
cmp qword [rbx], 0
je 0x140a743c8
mov byte [rsp + 0x20], 0
xor r9d, r9d
lea r8, [0x140dbb410]
movzx edx, word [0x140c9079c]
mov rcx, rsi
call fcn.140a721e0
mov r12, qword [rsp + 0x68]
movzx r14d, byte [rsp + 0x54]
jmp 0x140a74406
lea rbx, [rsi + 0xc8]
cmp qword [rbx], 0
jne 0x140a74400
mov byte [rsp + 0x20], 0
xor r9d, r9d
lea r8, [0x140dbb450]
movzx edx, word [0x140c9079c]
mov rcx, rsi
call fcn.140a721e0
movzx r14d, byte [rsp + 0x30]
test r14b, r14b
je 0x140a74444
cmp qword [rbx], 0
jne 0x140a74444
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x20], rax
movzx r9d, byte [rsi + 0xd4]
lea r8, [rbp + 0x130]
mov edx, dword [rsi + 0xd0]
mov rcx, rsi
call fcn.140a74ac0
mov byte [rsi + 0xd4], 0
jmp 0x140a747cb
lea r13, [rsi + 0xc0]
mov rdi, qword [r13]
movabs rax, 0x555555555555555
cmp qword [r13 + 8], rax
je 0x140a74aa5
mov qword [rbp - 0x70], r13
xor r15d, r15d
mov qword [rbp - 0x68], r15
mov ecx, gethostbyname
call fcn.140c4b84c
mov rbx, rax
mov qword [rbp - 0x68], rax
lea rcx, [rax + 0x10]
lea rdx, [rbp + 0x130]
call fcn.14012da4c
nop
inc qword [r13 + 8]
mov rcx, qword [rdi + 8]
mov qword [rbx], rdi
mov qword [rbx + 8], rcx
mov qword [rbp - 0x68], r15
mov qword [rdi + 8], rbx
mov qword [rcx], rbx
test r14b, r14b
je 0x140a74720
mov edx, r15d
mov rcx, qword [r13]
mov rax, qword [rcx]
cmp rax, rcx
je 0x140a744ce
add rdx, qword [rax + 0x20]
mov rax, qword [rax]
cmp rax, rcx
jne 0x140a744c2
xorps xmm0, xmm0
movups xmmword [rbp + 0x110], xmm0
mov r14, r15
mov qword [rbp + 0x120], r15
mov ecx, reloc.WS2_32.dll_ntohs
mov qword [rbp + 0x128], rcx
mov byte [rbp + 0x110], r14b
or dword [rsp + 0x40], 1
cmp rdx, 0x10
jb 0x140a7451d
xor r8d, r8d
lea rcx, [rbp + 0x110]
call fcn.140a63400
mov qword [rbp + 0x120], r15
mov rcx, qword [rbp + 0x128]
mov rdi, qword [r13]
mov rbx, qword [rdi]
cmp rbx, rdi
je 0x140a745b6
nop dword [rax]
lea r9, [rbx + 0x10]
cmp qword [rbx + 0x28], 0xf
jbe 0x140a7453f
mov r9, qword [rbx + 0x10]
mov r15, qword [rbx + 0x20]
mov rax, rcx
sub rax, r14
cmp r15, rax
ja 0x140a74584
lea rax, [r15 + r14]
mov qword [rbp + 0x120], rax
lea rax, [rbp + 0x110]
cmp rcx, 0xf
cmova rax, qword [rbp + 0x110]
add r14, rax
mov r8, r15
mov rdx, r9
mov rcx, r14
call fcn.140c85940
mov byte [r15 + r14], 0
jmp 0x140a7459b
mov qword [rsp + 0x20], r15
xor r8d, r8d
mov rdx, r15
lea rcx, [rbp + 0x110]
call fcn.140a524b0
mov rbx, qword [rbx]
mov r14, qword [rbp + 0x120]
cmp rbx, rdi
je 0x140a745b6
mov rcx, qword [rbp + 0x128]
jmp 0x140a74530
mov ebx, dword [rsi + 0xd0]
cmp byte [rsi + 0xd4], 0
je 0x140a74636
cmp ebx, 4
je 0x140a7466a
lea r8, [rsi + 0x210]
lea rdx, [rbp + 0x110]
mov rcx, qword [rsi + 0x200]
call fcn.140a77db0
movzx edi, al
test ebx, ebx
jne 0x140a745ff
lea rcx, [rsi + 0x210]
call fcn.140a6b2c0
test al, al
je 0x140a7464a
mov dword [rsp + 0x38], ebx
xor dil, 1
mov byte [rsp + 0x30], dil
mov qword [rsp + 0x48], r14
mov rax, qword [rsp + 0x78]
mov rcx, qword [rax + 0x38]
test rcx, rcx
je 0x140a74a81
lea rdx, [rsp + 0x38]
mov qword [rsp + 0x20], rdx
lea rdx, [rsi + 0x210]
jmp 0x140a7469b
test ebx, ebx
jne 0x140a7466a
lea rcx, [rbp + 0x110]
call fcn.140a6b2c0
test al, al
jne 0x140a7466a
mov byte [rsp + 0x20], 0
xor r9d, r9d
lea r8, [0x140dbb4d0]
movzx edx, word [0x140c907a4]
mov rcx, rsi
call fcn.140a721e0
jmp 0x140a746ab
mov dword [rsp + 0x38], ebx
mov byte [rsp + 0x30], 0
mov qword [rsp + 0x48], r14
mov rax, qword [rsp + 0x78]
mov rcx, qword [rax + 0x38]
test rcx, rcx
je 0x140a74a8d
lea rdx, [rsp + 0x38]
mov qword [rsp + 0x20], rdx
lea rdx, [rbp + 0x110]
mov rax, qword [rcx]
lea r9, [rsp + 0x30]
lea r8, [rsp + 0x48]
call qword [rax + reloc.WS2_32.dll_recv]
and dword [rsp + 0x40], 0xfffffffe
mov rdx, qword [rbp + 0x128]
cmp rdx, 0xf
jbe 0x140a746f1
inc rdx
mov rcx, qword [rbp + 0x110]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140a746ec
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140a74a87
call fcn.140c4bba0
mov rdx, qword [r13]
mov rcx, r13
call fcn.140154a78
mov rax, qword [r13]
mov qword [rax], rax
mov rax, qword [r13]
mov qword [rax + 8], rax
mov qword [r13 + 8], 0
mov byte [rsi + 0xd4], 0
jmp 0x140a747cb
xorps xmm0, xmm0
movups xmmword [rbp + 0x110], xmm0
mov qword [rbp + 0x120], r15
mov qword [rbp + 0x128], reloc.WS2_32.dll_ntohs
mov byte [rbp + 0x110], 0
mov eax, 4
mov dword [rsp + 0x38], eax
mov byte [rsp + 0x30], 0
mov qword [rsp + 0x48], r15
mov rax, qword [rsp + 0x78]
mov rcx, qword [rax + 0x38]
test rcx, rcx
je 0x140a74a9f
mov rax, qword [rcx]
lea rdx, [rsp + 0x38]
mov qword [rsp + 0x20], rdx
lea r9, [rsp + 0x30]
lea r8, [rsp + 0x48]
lea rdx, [rbp + 0x110]
call qword [rax + reloc.WS2_32.dll_recv]
nop
mov rdx, qword [rbp + 0x128]
cmp rdx, 0xf
jbe 0x140a747cb
inc rdx
mov rcx, qword [rbp + 0x110]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140a747c6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140a74a93
call fcn.140c4bba0
mov edx, dword [rsp + 0x50]
mov rdi, qword [rsi + 0x40]
add rdx, rdi
add rdx, r12
cmp rdi, rdx
je 0x140a747f8
mov rbx, qword [rsi + 0x48]
sub rbx, rdx
mov r8, rbx
mov rcx, rdi
call fcn.140c85940
lea rax, [rbx + rdi]
mov qword [rsi + 0x48], rax
mov rdx, qword [rbp + 0x148]
cmp rdx, 0xf
jbe 0x140a74839
inc rdx
mov rcx, qword [rbp + 0x130]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140a74834
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140a74a99
call fcn.140c4bba0
mov r9, qword [rsi + 0x48]
mov rcx, qword [rsi + 0x40]
mov r11, r9
sub r11, rcx
cmp r11, 2
jb 0x140a749b1
mov r12, rcx
mov r10, rcx
movzx r15d, byte [rcx]
movzx eax, r15b
shr al, 7
mov byte [rsp + 0x30], al
mov byte [rsp + 0x54], al
movzx r14d, r15b
shr r14b, 6
and r14b, 1
mov byte [rsp + 0x55], r14b
movzx ebx, r15b
shr bl, 5
and bl, 1
mov byte [rsp + 0x56], bl
movzx edi, r15b
shr dil, 4
and dil, 1
mov byte [rsp + 0x57], dil
and r15d, 0xf
mov dword [rsp + 0x5c], r15d
movzx r8d, byte [rcx + 1]
movzx eax, r8b
shr al, 7
movzx edx, al
movzx r13d, dl
mov dword [rsp + 0x38], r13d
mov byte [rsp + 0x58], dl
and r8d, 0x7f
mov dword [rsp + 0x60], r8d
xor ecx, ecx
cmp r8d, 0x7f
mov eax, 8
cmove ecx, eax
mov eax, 2
cmp r8d, 0x7e
cmove eax, dword [rbp - 0x78]
add ecx, eax
lea eax, [rcx + rdx*4]
mov dword [rsp + 0x50], eax
mov rcx, r10
cmp r11, rax
jb 0x140a749b1
mov r11, rcx
jmp 0x140a739be
mov byte [rsp + 0x20], 0
xor r9d, r9d
lea r8, [0x140dbb4b0]
movzx edx, word [0x140c9079c]
mov rcx, rsi
call fcn.140a721e0
jmp 0x140a74a0c
mov byte [rsp + 0x20], 0
xor r9d, r9d
lea r8, [0x140dbb430]
movzx edx, word [0x140c9079c]
mov rcx, rsi
call fcn.140a721e0
nop
mov rdx, qword [rbp + 0x148]
cmp rdx, 0xf
jbe 0x140a74a0c
inc rdx
mov rcx, qword [rbp + 0x130]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140a74982
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140a74a99
call fcn.140c4bba0
jmp 0x140a74a0c
mov r9, qword [rsi + 0x48]
sub r9, qword [rsi + 0x40]
mov byte [rsp + 0x20], 0
lea r8, [0x140dbb470]
movzx edx, word [0x140c9079c]
mov rcx, rsi
call fcn.140a721e0
jmp 0x140a74a0c
cmp dword [rbp - 0x80], 0
je 0x140a74a0c
cmp rcx, r9
je 0x140a749c0
mov qword [rsi + 0x48], rcx
mov eax, dword [rsi + 0x130]
nop
test eax, eax
jne 0x140a749e2
mov rcx, rsi
call fcn.140a72300
mov edx, 1
mov rcx, rsi
call fcn.140a75e80
jmp 0x140a74a0c
mov eax, dword [rsi + 0x130]
nop
cmp eax, 1
je 0x140a74a0c
mov byte [rsp + 0x20], 0
xor r9d, r9d
lea r8, [0x140dbb490]
movzx edx, word [0x140c90798]
mov rcx, rsi
call fcn.140a72370
mov rcx, qword [rbp + 0x150]
xor rcx, rsp
call fcn.140c4bf60
mov rbx, qword [rsp + 0x2a8]
add rsp, 0x260
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.1401295bc
int3
call fcn.140129524
nop
call fcn.140c48968
nop
call fcn.140c48968
nop
call fcn.140c5acfc
int3
call fcn.14012de64
nop
call fcn.140c5acfc
nop
dec eax
mov dword [rbx + 0x4c], eax
mov ecx, 6
call fcn.140c48748
int3
mov ecx, 5
call fcn.140c48748
nop
call fcn.140c5acfc
nop
call fcn.140c48968
nop
call fcn.140c5acfc
nop
call fcn.140c48968
nop
call fcn.140c5acfc
nop
call fcn.140c5acfc
nop
call fcn.140c48968
nop
lea rcx, str.list_too_long
call fcn.140c48988
int3