Function at 0x140187bd0
Capabilities:
Receive data
Receive data on socket
Set socket configuration

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x888
movdqa xmmword [rsp + 0x870], xmm8
movdqa xmmword [rsp + 0x860], xmm7
movdqa xmmword [rsp + 0x850], xmm6
mov rdi, rcx
mov r13d, dword [rdx + 0x44]
mov r15, qword [rdx + 0x20]
test r13, r13
je 0x140187c84
mov rsi, r9
mov r14, r8
mov rbx, rdx
mov rax, qword [rdx + 0x28]
mov qword [rsp + 0x80], rax
cmp rax, r13
jbe 0x140187c35
cmp byte [r15 + r13], 0xbf
jg 0x140187c3b
jmp 0x140189adb
jne 0x140189adb
cmp r13d, 4
jne 0x140187c64
lea rdx, [0x141ab4f88]
mov rcx, r15
mov r8, r13
call sub.msvcrt.dll_memcmp
test eax, eax
je 0x140187d54
lea rdx, [0x141a9ec90]
jmp 0x140187c71
cmp r13d, 5
jne 0x140187c84
lea rdx, [0x141ab4f8c]
mov rcx, r15
mov r8, r13
call sub.msvcrt.dll_memcmp
test eax, eax
je 0x140187d54
mov qword [rsp + 0x3a0], r15
mov qword [rsp + 0x3a8], r13
lea rax, [rsp + 0x3a0]
mov qword [rsp + 0x100], rax
lea rax, [0x1401a0410]
mov qword [rsp + 0x108], rax
lea rax, [0x141a9f700]
mov qword [rsp + 0x210], rax
mov qword [rsp + 0x218], 2
mov qword [rsp + 0x230], 0
lea rax, [rsp + 0x100]
mov qword [rsp + 0x220], rax
mov qword [rsp + 0x228], 1
lea rcx, [rdi + 8]
lea rdx, [rsp + 0x210]
call fcn.140034eb0
movabs rax, 0x8000000000000000
mov qword [rdi], rax
mov qword [rdi + 0x20], rax
mov qword [rdi + 0x78], 0
mov byte [rdi + 0x88], 1
movaps xmm6, xmmword [rsp + 0x850]
movaps xmm7, xmmword [rsp + 0x860]
movaps xmm8, xmmword [rsp + 0x870]
add rsp, 0x888
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
cmp qword [rsp + 0x80], r13
jbe 0x140187d6a
cmp byte [r15 + r13], 0xbf
jg 0x140187d70
jmp 0x140189adb
jne 0x140189adb
cmp r13d, 5
jne 0x140187d90
lea rdx, [0x141ab4f8c]
mov rcx, r15
mov r8, r13
call sub.msvcrt.dll_memcmp
test eax, eax
je 0x140187e1e
mov rax, qword [rbx + 0x98]
cmp byte [rax + 0xcc], 0
je 0x140187e1e
movzx eax, byte [0x141af8129]
mov edx, 0x33
xor ecx, ecx
call fcn.140146820
test rax, rax
je 0x140189adb
movups xmm0, xmmword [0x141a9ecd8]
movups xmmword [rax + 0x20], xmm0
movups xmm0, xmmword [0x141a9ecc8]
movups xmmword [rax + 0x10], xmm0
movdqu xmm0, xmmword [0x141a9ecb8]
movdqu xmmword [rax], xmm0
mov dword [rax + 0x2f], 0x74657320
movabs rcx, 0x8000000000000000
mov qword [rdi], rcx
mov qword [rdi + 8], 0x33
mov qword [rdi + 0x10], rax
mov qword [rdi + 0x18], 0x33
mov qword [rdi + 0x20], rcx
mov qword [rdi + 0x78], 0
mov byte [rdi + 0x88], 3
jmp 0x140187d27
mov qword [rsp + 0x38], r15
mov qword [rsp + 0x60], r14
mov qword [rsp + 0x68], rbx
mov qword [rsp + 0x48], rsi
movabs r12, 0x8000000000000000
cmp byte [rsp + 0x8f0], 0
je 0x140188f6d
mov qword [rsp + 0x90], rdi
mov rax, qword [rsp + 0x68]
mov rcx, qword [rax + 0xa0]
mov rdi, qword [rax + 0x98]
lea rdx, [rcx + 0x38]
mov qword [rsp + 0x78], rdx
movzx edx, word [rax + 0x40]
mov word [rsp + 0x5c], dx
movzx edx, word [rax + 0x42]
mov word [rsp + 0x5a], dx
movzx edx, byte [rax + 0x58]
mov byte [rsp + 0x36], dl
mov edx, dword [rax + 0x4c]
mov r8d, dword [rax + 0x50]
mov rax, qword [rsp + 0x38]
add rax, rdx
mov qword [rsp + 0x98], rax
mov qword [rsp + 0x328], r8
mov qword [rsp + 0x330], rdx
sub r8, rdx
mov qword [rsp + 0x320], r8
mov qword [rsp + 0x70], rcx
lea rax, [rcx + 0x60]
mov qword [rsp + 0xa0], rax
pcmpeqd xmm6, xmm6
mov qword [rsp + 0xc8], r13
mov qword [rsp + 0x338], rdi
cmp qword [rdi + 0x28], r12
je 0x14018814d
mov rsi, qword [rdi + 0x30]
mov r15, qword [rdi + 0x38]
test r15, r15
mov rbx, qword [rsp + 0x80]
je 0x140187f26
js 0x140189adb
movzx eax, byte [0x141af8129]
xor ecx, ecx
mov rdx, r15
call fcn.140146820
test rax, rax
je 0x140189adb
mov rbp, rax
mov r12, r15
jmp 0x140187f2e
mov ebp, 1
xor r12d, r12d
mov rcx, rbp
mov rdx, rsi
mov r8, r15
call sub.msvcrt.dll_memcpy
mov eax, dword [rdi + 0x70]
mov dword [rsp + 0xb8], eax
movabs rax, 0x8000000000000000
mov rcx, rax
mov qword [rsp + 0xb0], rax
cmp qword [rdi + 0x40], rax
je 0x140187fd5
mov rsi, qword [rdi + 0x48]
mov r8, qword [rdi + 0x50]
test r8, r8
je 0x140187fa1
js 0x140189adb
movzx eax, byte [0x141af8129]
xor ecx, ecx
mov rdx, r8
mov r14, r8
call fcn.140146820
test rax, rax
je 0x140189adb
mov r8, r14
mov rcx, r14
mov qword [rsp + 0xb0], r8
jmp 0x140187fb0
mov eax, 1
xor ecx, ecx
mov qword [rsp + 0xb0], rcx
mov qword [rsp + 0x368], rax
mov rcx, rax
mov rdx, rsi
mov qword [rsp + 0x370], r8
call sub.msvcrt.dll_memcpy
movabs rax, 0x8000000000000000
mov rcx, rax
mov qword [rsp + 0xa8], rax
cmp qword [rdi + 0x58], rax
je 0x140188050
mov rsi, qword [rdi + 0x60]
mov r8, qword [rdi + 0x68]
test r8, r8
je 0x140188026
js 0x140189adb
movzx eax, byte [0x141af8129]
xor ecx, ecx
mov rdx, r8
mov r14, r8
call fcn.140146820
test rax, rax
je 0x140189adb
mov r8, r14
mov rcx, r14
mov qword [rsp + 0xa8], r8
jmp 0x140188035
mov eax, 1
xor ecx, ecx
mov qword [rsp + 0xa8], rcx
mov qword [rsp + 0x358], rax
mov rcx, rax
mov rdx, rsi
mov qword [rsp + 0x360], r8
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0x378], rbp
mov qword [rsp + 0x380], r15
movzx eax, byte [rdi + 0x74]
mov byte [rsp + 0x37], al
mov bp, 1
cmp word [rsp + 0x5c], 0
jne 0x140188165
cmp rbx, r13
jbe 0x14018808e
mov rax, qword [rsp + 0x38]
cmp byte [rax + r13], 0xbf
jg 0x140188094
jmp 0x140189adb
jne 0x140189adb
cmp r13d, 4
jne 0x1401880b8
mov rcx, qword [rsp + 0x38]
lea rdx, [0x141ab4f88]
mov r8, r13
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x14018813a
jmp 0x1401880d6
cmp r13d, 2
jne 0x1401880e0
mov rcx, qword [rsp + 0x38]
lea rdx, [0x141ab4f91]
mov r8, r13
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x14018813a
mov r15w, 0x50
jmp 0x14018816b
cmp r13d, 5
jne 0x140188100
mov rcx, qword [rsp + 0x38]
lea rdx, [0x141ab4f8c]
mov r8, r13
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x14018813a
jmp 0x140188146
cmp r13d, 3
jne 0x14018813a
mov rsi, qword [rsp + 0x38]
mov rcx, rsi
lea rdx, [0x141ab4f93]
mov r8, r13
call sub.msvcrt.dll_memcmp
test eax, eax
je 0x140188146
mov rcx, rsi
lea rdx, [0x141ab4f96]
mov r8, r13
call sub.msvcrt.dll_memcmp
test eax, eax
sete al
jmp 0x14018813c
xor eax, eax
movzx ebp, al
mov r15w, 0x15
jmp 0x14018816b
mov r15w, 0x1bb
jmp 0x14018816b
mov rbx, qword [rsp + 0x80]
mov bp, 1
cmp word [rsp + 0x5c], 0
je 0x140188078
movzx r15d, word [rsp + 0x5a]
cmp rbx, r13
jbe 0x140188195
mov rax, qword [rsp + 0x38]
cmp byte [rax + r13], 0xbf
jle 0x140189adb
mov rsi, r13
test r13, r13
jne 0x14018819e
mov edi, 1
mov rsi, r13
xor r13d, r13d
jmp 0x1401881be
mov rsi, rbx
jne 0x140189adb
movzx eax, byte [0x141af8129]
xor ecx, ecx
mov rdx, rsi
call fcn.140146820
test rax, rax
je 0x140189adb
mov rdi, rax
mov r13, rsi
mov rcx, rdi
mov rdx, qword [rsp + 0x38]
mov r8, rsi
call sub.msvcrt.dll_memcpy
cmp byte [rsp + 0x36], 0
je 0x140188209
mov rax, qword [rsp + 0x330]
mov rcx, qword [rsp + 0x328]
cmp eax, ecx
ja 0x140189adb
test rax, rax
je 0x14018821e
cmp rbx, rax
jbe 0x140188218
mov rax, qword [rsp + 0x98]
cmp byte [rax], 0xc0
jge 0x14018821e
jmp 0x140189adb
mov ebx, 1
xor r14d, r14d
mov edx, 1
jmp 0x14018827a
jne 0x140189adb
test rcx, rcx
je 0x14018823e
cmp rbx, rcx
jbe 0x140188238
mov rax, qword [rsp + 0x38]
cmp byte [rax + rcx], 0xbf
jg 0x14018823e
jmp 0x140189adb
jne 0x140189adb
mov r14, qword [rsp + 0x320]
test r14, r14
je 0x14018826a
movzx eax, byte [0x141af8129]
xor ecx, ecx
mov rdx, r14
call fcn.140146820
test rax, rax
je 0x140189adb
mov rbx, rax
jmp 0x140188272
mov ebx, 1
xor r14d, r14d
mov rdx, qword [rsp + 0x98]
mov rcx, rbx
mov r8, r14
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0x480], r13
mov qword [rsp + 0x488], rdi
mov qword [rsp + 0x490], rsi
mov qword [rsp + 0x498], r14
mov qword [rsp + 0x4a0], rbx
mov qword [rsp + 0x4a8], r14
mov word [rsp + 0x500], bp
mov word [rsp + 0x502], r15w
mov qword [rsp + 0x4b0], r12
mov rax, qword [rsp + 0x378]
mov qword [rsp + 0x4b8], rax
mov rax, qword [rsp + 0x380]
mov qword [rsp + 0x4c0], rax
mov rax, qword [rsp + 0xb0]
mov qword [rsp + 0x4c8], rax
mov rax, qword [rsp + 0x368]
mov qword [rsp + 0x4d0], rax
mov rax, qword [rsp + 0x370]
mov qword [rsp + 0x4d8], rax
mov rax, qword [rsp + 0xa8]
mov qword [rsp + 0x4e0], rax
mov rax, qword [rsp + 0x358]
mov qword [rsp + 0x4e8], rax
mov rax, qword [rsp + 0x360]
mov qword [rsp + 0x4f0], rax
mov eax, dword [rsp + 0xb8]
mov dword [rsp + 0x4f8], eax
movzx eax, byte [rsp + 0x37]
mov byte [rsp + 0x4fc], al
xor eax, eax
mov rcx, qword [rsp + 0x78]
mov dl, 1
lock cmpxchg byte [rcx], dl
jne 0x140188b39
lea rdi, [rsp + 0x210]
mov rcx, rdi
lea rdx, [rsp + 0x480]
call fcn.1401a5e30
mov rsi, qword [rsp + 0x70]
mov rcx, qword [rsi + 0x80]
mov rdx, qword [rsi + 0x88]
mov r8, rdi
call fcn.1401a5040
mov rcx, qword [rsi + 0x60]
mov rbp, qword [rsi + 0x68]
mov rsi, rbp
and rsi, rax
mov qword [rsp + 0x388], rax
shr rax, 0x39
movd xmm0, eax
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
pshufd xmm7, xmm0, 0
mov qword [rsp + 0xf8], rcx
lea r12, [rcx - 0xa8]
mov rax, qword [rsp + 0x218]
mov qword [rsp + 0x50], rax
mov r14, qword [rsp + 0x220]
mov rax, qword [rsp + 0x238]
mov qword [rsp + 0x88], rax
mov rax, qword [rsp + 0x230]
mov qword [rsp + 0x398], rax
movzx eax, word [rsp + 0x290]
mov word [rsp + 0x46], ax
movzx eax, word [rsp + 0x292]
mov word [rsp + 0x5e], ax
mov rax, qword [rsp + 0x240]
mov qword [rsp + 0xf0], rax
mov rax, qword [rsp + 0x250]
mov qword [rsp + 0xe8], rax
mov rax, qword [rsp + 0x248]
mov qword [rsp + 0x390], rax
mov eax, dword [rsp + 0x288]
mov dword [rsp + 0xbc], eax
movzx eax, byte [rsp + 0x28c]
mov byte [rsp + 0x35], al
mov rax, qword [rsp + 0x258]
mov qword [rsp + 0xe0], rax
mov rax, qword [rsp + 0x268]
mov qword [rsp + 0xd8], rax
mov rax, qword [rsp + 0x260]
mov qword [rsp + 0x348], rax
mov rax, qword [rsp + 0x270]
mov qword [rsp + 0xd0], rax
mov rax, qword [rsp + 0x280]
mov qword [rsp + 0xc0], rax
mov rax, qword [rsp + 0x278]
mov qword [rsp + 0x340], rax
xor edx, edx
nop word cs:[rax + rax]
mov rax, qword [rsp + 0xf8]
movdqu xmm8, xmmword [rax + rsi]
movdqa xmm0, xmm8
pcmpeqb xmm0, xmm7
pmovmskb ebx, xmm0
nop dword [rax + rax]
test bx, bx
je 0x140188750
tzcnt eax, ebx
lea ecx, [rbx - 1]
and ecx, ebx
mov ebx, ecx
add rax, rsi
and rax, rbp
neg rax
imul r15, rax, 0xa8
cmp qword [r12 + r15 + 0x10], r14
jne 0x140188510
lea rdi, [r12 + r15]
mov rcx, qword [rdi + 8]
mov r13, rdx
mov rdx, qword [rsp + 0x50]
mov r8, r14
call sub.msvcrt.dll_memcmp
mov rdx, r13
test eax, eax
jne 0x140188510
mov rax, qword [rsp + 0x88]
cmp qword [rdi + 0x28], rax
jne 0x140188510
mov rcx, qword [rdi + 0x20]
mov rdx, qword [rsp + 0x398]
mov r8, qword [rsp + 0x88]
call sub.msvcrt.dll_memcmp
mov rdx, r13
test eax, eax
jne 0x140188510
cmp word [rdi + 0x80], 0
je 0x1401885b1
cmp word [rsp + 0x46], 0
je 0x140188510
movzx eax, word [rsp + 0x5e]
cmp word [rdi + 0x82], ax
je 0x1401885bd
jmp 0x140188510
cmp word [rsp + 0x46], 0
jne 0x140188510
mov rax, qword [rdi + 0x30]
movabs rcx, 0x8000000000000000
cmp rax, rcx
je 0x14018867d
cmp qword [rsp + 0xf0], rcx
je 0x14018867d
mov rax, qword [rsp + 0xe8]
cmp qword [rdi + 0x40], rax
jne 0x140188510
mov rcx, qword [rdi + 0x38]
mov rdx, qword [rsp + 0x390]
mov r8, qword [rsp + 0xe8]
call sub.msvcrt.dll_memcmp
mov rdx, r13
test eax, eax
jne 0x140188510
mov eax, dword [rsp + 0xbc]
cmp dword [rdi + 0x78], eax
jne 0x140188510
mov rax, qword [rdi + 0x48]
movabs rcx, 0x8000000000000000
cmp rax, rcx
je 0x1401886a3
cmp qword [rsp + 0xe0], rcx
je 0x1401886a3
mov rax, qword [rsp + 0xd8]
cmp qword [rdi + 0x58], rax
jne 0x140188510
mov rcx, qword [rdi + 0x50]
mov rdx, qword [rsp + 0x348]
mov r8, qword [rsp + 0xd8]
call sub.msvcrt.dll_memcmp
mov rdx, r13
test eax, eax
jne 0x140188510
jmp 0x1401886c4
cmp rax, rcx
jne 0x140188510
movabs rax, 0x8000000000000000
cmp qword [rsp + 0xf0], rax
jne 0x140188510
jmp 0x140188918
cmp rax, rcx
jne 0x140188510
movabs rax, 0x8000000000000000
cmp qword [rsp + 0xe0], rax
jne 0x140188510
mov rax, qword [rdi + 0x60]
movabs rcx, 0x8000000000000000
cmp rax, rcx
je 0x140188719
cmp qword [rsp + 0xd0], rcx
je 0x140188719
mov rax, qword [rsp + 0xc0]
cmp qword [rdi + 0x70], rax
jne 0x140188510
mov rcx, qword [rdi + 0x68]
mov rdx, qword [rsp + 0x340]
mov r8, qword [rsp + 0xc0]
call sub.msvcrt.dll_memcmp
mov rdx, r13
test eax, eax
jne 0x140188510
jmp 0x14018873a
cmp rax, rcx
jne 0x140188510
movabs rax, 0x8000000000000000
cmp qword [rsp + 0xd0], rax
jne 0x140188510
movzx eax, byte [rsp + 0x35]
cmp byte [rdi + 0x7c], al
jne 0x140188510
jmp 0x140188918
pcmpeqb xmm8, xmm6
pmovmskb eax, xmm8
test eax, eax
jne 0x140188780
add rsi, rdx
add rsi, 0x10
add rdx, 0x10
and rsi, rbp
jmp 0x1401884f0
mov rax, qword [rsp + 0x70]
cmp qword [rax + 0x70], 0
je 0x140188b48
mov r8d, 0x88
lea rcx, [rsp + 0x720]
lea rdx, [rsp + 0x210]
call sub.msvcrt.dll_memcpy
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x7a8], rax
mov rax, qword [rsp + 0x388]
mov qword [rsp + 0x7b0], rax
mov qword [rsp + 0x718], 1
movabs rax, 0x8000000000000000
lea r12, [rax + 1]
mov r13, qword [rsp + 0xc8]
xor eax, eax
mov rcx, qword [rsp + 0x78]
xchg byte [rcx], al
cmp al, 2
jne 0x140188804
mov rcx, qword [rsp + 0x78]
call fcn.1401e62f0
cmp qword [rsp + 0x718], 0
je 0x14018881c
lea rcx, [rsp + 0x720]
call fcn.1401922f0
lea rcx, [rsp + 0x480]
call fcn.1401922f0
movabs rax, 0x8000000000000000
lea rbx, [rax + 1]
cmp r12, rbx
je 0x140188f65
mov rax, qword [rsp + 0x350]
mov qword [rsp + 0x100], rax
mov qword [rsp + 0x108], r12
mov r8d, 0xd8
lea rcx, [rsp + 0x110]
lea rdx, [rsp + 0x3a0]
call sub.msvcrt.dll_memcpy
mov rcx, qword [rsp + 0x1d8]
mov rax, qword [rsp + 0x1e0]
call qword [rax + 0xb8]
test rax, rax
je 0x140188f37
mov rdi, rax
mov byte [rsp + 0x670], 0
mov dword [rsp + 0x210], 1
mov rcx, qword [rax]
mov edx, 0x8004667e
lea r8, [rsp + 0x210]
call sub.ws2_32.dll_ioctlsocket
cmp eax, 0xffffffff
je 0x140189191
mov rcx, qword [rdi]
lea rdx, [rsp + 0x670]
mov r8d, 1
mov r9d, 2
call sub.ws2_32.dll_recv
cmp eax, 0xffffffff
je 0x1401888f8
movsxd rsi, eax
mov bpl, 1
xor r15d, r15d
mov r14b, 1
jmp 0x140188ad0
call sub.ws2_32.dll_WSAGetLastError
cmp eax, 0x274a
jne 0x140188aa0
mov bpl, 1
xor esi, esi
mov r14b, 1
xor r15d, r15d
jmp 0x140188ad0
mov rdi, qword [rsp + 0xf8]
add rdi, r15
mov r8d, 0x88
lea rsi, [rsp + 0x720]
mov rcx, rsi
lea rdx, [rsp + 0x210]
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0x7a8], rdi
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x7b0], rax
mov qword [rsp + 0x718], 0
mov r8d, 0x98
lea rcx, [rsp + 0x7b8]
mov rdx, rsi
call sub.msvcrt.dll_memcpy
mov rax, qword [rsp + 0x840]
mov rdi, qword [rax - 8]
test rdi, rdi
lea rsi, [rsp + 0x100]
je 0x140189adb
dec rdi
mov qword [rax - 8], rdi
mov rcx, qword [rax - 0x10]
add rcx, rdi
mov rdx, qword [rax - 0x20]
mov rax, qword [rax - 0x18]
cmp rcx, rdx
mov r8d, 0
cmovae r8, rdx
sub rcx, r8
imul rcx, rcx, 0xe8
mov rdx, qword [rax + rcx]
mov qword [rsp + 0x350], rdx
mov r12, qword [rax + rcx + 8]
lea rdx, [rax + rcx]
add rdx, 0x10
mov r8d, 0xd8
mov rcx, rsi
call sub.msvcrt.dll_memcpy
movabs rax, 0x8000000000000000
inc rax
cmp r12, rax
je 0x140189adb
mov r8d, 0xd8
lea rcx, [rsp + 0x210]
mov rdx, rsi
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0x88], rdi
test rdi, rdi
mov r13, qword [rsp + 0x70]
jne 0x140188baa
lea rbx, [rsp + 0x670]
mov rcx, rbx
lea rdx, [rsp + 0x720]
call fcn.1401abbc0
mov r14, qword [rsp + 0x6f8]
mov rsi, qword [rsp + 0x700]
mov r15, qword [rsp + 0x708]
mov rdi, qword [rsp + 0x710]
mov rcx, rbx
call fcn.1401922f0
test rdi, rdi
je 0x140188b68
cmp r15, r14
mov eax, 0
cmovae rax, r14
sub r15, rax
mov rax, r14
sub rax, r15
mov rbx, rdi
sub rbx, rax
jbe 0x140188b6f
mov rdi, r14
jmp 0x140188b74
mov esi, eax
shl rsi, 0x20
or rsi, 2
mov rcx, rsi
call fcn.140149740
cmp al, 0xd
jne 0x140188ac0
mov r14b, 1
xor ebp, ebp
xor r15d, r15d
jmp 0x140188ad0
mov r15b, 1
xor r14d, r14d
nop word cs:[rax + rax]
mov dword [rsp + 0x210], 0
mov rcx, qword [rdi]
mov edx, 0x8004667e
lea r8, [rsp + 0x210]
call sub.ws2_32.dll_ioctlsocket
cmp eax, 0xffffffff
je 0x14018919a
test r15b, r15b
jne 0x140189211
test bpl, bpl
je 0x140188f37
lea rcx, [rsp + 0x100]
call fcn.14018b010
movabs r12, 0x8000000000000000
mov rdi, qword [rsp + 0x338]
cmp qword [rdi + 0x28], r12
jne 0x140187ee9
jmp 0x14018814d
mov rcx, qword [rsp + 0x78]
call fcn.14014a190
jmp 0x14018837b
mov rdx, qword [rax + 0x80]
mov r8, qword [rax + 0x88]
mov rcx, qword [rsp + 0xa0]
call fcn.140192490
jmp 0x140188790
xor r15d, r15d
xor edi, edi
jmp 0x140188b72
add rdi, r15
xor ebx, ebx
imul rcx, r15, 0xe8
add rcx, rsi
sub rdi, r15
mov rdx, rdi
call fcn.1401923b0
mov rcx, rsi
mov rdx, rbx
call fcn.1401923b0
test r14, r14
je 0x140188baa
mov rcx, qword [0x141af8068]
xor edx, edx
mov r8, rsi
call sub.KERNEL32.dll_HeapFree
mov rsi, qword [r13 + 0x40]
mov r8, qword [r13 + 0x58]
test r8, r8
mov qword [rsp + 0x50], r8
je 0x140188be2
mov rax, qword [r13 + 0x50]
cmp rax, rsi
mov ecx, 0
cmovae rcx, rsi
sub rax, rcx
mov rdx, rsi
sub rdx, rax
mov rcx, r8
sub rcx, rdx
jbe 0x140188be8
mov rdx, rsi
jmp 0x140188bee
xor eax, eax
xor edx, edx
jmp 0x140188bec
lea rdx, [rax + r8]
xor ecx, ecx
mov rdi, qword [r13 + 0x48]
mov r8, rax
shl r8, 7
lea rbp, [r8 + rax*8]
mov rax, rdx
shl rax, 7
lea r15, [rax + rdx*8]
lea rax, [rdi + r15]
sub rax, rdi
sub rax, rbp
movabs rdx, 0xf0f0f0f0f0f0f0f1
mul rdx
mov rbx, rdx
shr rbx, 7
add rbx, rcx
mov rax, rcx
shl rax, 7
lea rax, [rax + rcx*8]
lea r14, [rdi + rax]
add r14, 0xffffffffffffff78
imul r13, rcx, 0xffffffffffffff78
nop word cs:[rax + rax]
test r13, r13
je 0x140188c7c
mov rcx, r14
lea rdx, [rsp + 0x480]
call fcn.140191d50
dec rbx
add r14, 0xffffffffffffff78
add r13, 0x88
test al, al
je 0x140188c50
jmp 0x140188cc1
lea r14, [rdi + r15]
add r14, 0xffffffffffffff78
sub rbp, r15
xor r15d, r15d
nop dword [rax]
test rbp, rbp
je 0x140189adb
mov rcx, r14
lea rdx, [rsp + 0x480]
call fcn.140191d50
add r14, 0xffffffffffffff78
add rbp, 0x88
inc r15
test al, al
je 0x140188c90
sub rbx, r15
cmp qword [rsp + 0x50], rbx
mov r13, qword [rsp + 0xc8]
jbe 0x140189adb
mov r15, qword [rsp + 0x70]
mov r8, qword [r15 + 0x50]
lea r9, [r8 + rbx]
cmp r9, rsi
mov eax, 0
cmovae rax, rsi
sub r9, rax
mov rax, r9
shl rax, 7
lea rax, [rax + r9*8]
mov r14, qword [rdi + rax]
movups xmm0, xmmword [rdi + rax + 0x78]
movaps xmmword [rsp + 0x640], xmm0
movups xmm0, xmmword [rdi + rax + 0x68]
movaps xmmword [rsp + 0x630], xmm0
movups xmm0, xmmword [rdi + rax + 0x58]
movaps xmmword [rsp + 0x620], xmm0
movups xmm0, xmmword [rdi + rax + 0x48]
movaps xmmword [rsp + 0x610], xmm0
movups xmm0, xmmword [rdi + rax + 0x38]
movaps xmmword [rsp + 0x600], xmm0
movups xmm0, xmmword [rdi + rax + 0x28]
movaps xmmword [rsp + 0x5f0], xmm0
movups xmm0, xmmword [rdi + rax + 0x18]
movaps xmmword [rsp + 0x5e0], xmm0
movups xmm0, xmmword [rdi + rax + 8]
movaps xmmword [rsp + 0x5d0], xmm0
mov rax, rbx
not rax
mov rbp, qword [rsp + 0x50]
add rax, rbp
cmp rax, rbx
jae 0x140188d9b
lea rcx, [r9 + 1]
cmp rcx, rsi
mov ecx, 0
cmovae rcx, rsi
neg rcx
lea r8, [r9 + rcx]
inc r8
mov qword [rsp + 0x20], rax
jmp 0x140188dbe
lea rax, [r8 + 1]
cmp rax, rsi
mov eax, 0
cmovae rax, rsi
neg rax
lea r9, [r8 + rax]
inc r9
mov qword [r15 + 0x50], r9
mov qword [rsp + 0x20], rbx
mov rcx, rsi
mov rdx, rdi
call fcn.140191ed0
dec rbp
mov qword [r15 + 0x58], rbp
movaps xmm0, xmmword [rsp + 0x640]
movaps xmmword [rsp + 0x5c0], xmm0
movaps xmm0, xmmword [rsp + 0x630]
movaps xmmword [rsp + 0x5b0], xmm0
movaps xmm0, xmmword [rsp + 0x620]
movaps xmmword [rsp + 0x5a0], xmm0
movaps xmm0, xmmword [rsp + 0x610]
movaps xmmword [rsp + 0x590], xmm0
movdqa xmm0, xmmword [rsp + 0x5d0]
movaps xmm1, xmmword [rsp + 0x5e0]
movaps xmm2, xmmword [rsp + 0x5f0]
movaps xmm3, xmmword [rsp + 0x600]
movaps xmmword [rsp + 0x580], xmm3
movaps xmmword [rsp + 0x570], xmm2
movaps xmmword [rsp + 0x560], xmm1
movdqa xmmword [rsp + 0x550], xmm0
movabs rax, 0x8000000000000000
cmp r14, rax
je 0x140189adb
mov qword [rsp + 0x670], r14
movaps xmm0, xmmword [rsp + 0x5c0]
lea rax, [rsp + 0x678]
movups xmmword [rax + 0x70], xmm0
movaps xmm0, xmmword [rsp + 0x5b0]
movups xmmword [rax + 0x60], xmm0
movaps xmm0, xmmword [rsp + 0x5a0]
movups xmmword [rax + 0x50], xmm0
movaps xmm0, xmmword [rsp + 0x590]
movups xmmword [rax + 0x40], xmm0
movdqa xmm0, xmmword [rsp + 0x550]
movaps xmm1, xmmword [rsp + 0x560]
movaps xmm2, xmmword [rsp + 0x570]
movaps xmm3, xmmword [rsp + 0x580]
movups xmmword [rax + 0x30], xmm3
movups xmmword [rax + 0x20], xmm2
movups xmmword [rax + 0x10], xmm1
movdqu xmmword [rax], xmm0
lea rcx, [rsp + 0x670]
call fcn.1401922f0
mov r8d, 0xd8
lea rcx, [rsp + 0x3a0]
lea rdx, [rsp + 0x210]
call sub.msvcrt.dll_memcpy
cmp qword [rsp + 0x88], 0
movabs rax, 0x8000000000000000
je 0x1401887ed
cmp qword [rsp + 0x7b8], rax
je 0x1401887ed
lea rcx, [rsp + 0x7b8]
call fcn.1401922f0
jmp 0x1401887ed
mov rsi, qword [rsp + 0x90]
lea rcx, [rsi + 8]
lea rdx, [rsp + 0x100]
mov r8d, 0xe8
call sub.msvcrt.dll_memcpy
mov byte [rsi + 0xf0], 1
mov qword [rsi], rbx
jmp 0x140187d27
mov rdi, qword [rsp + 0x90]
cmp qword [rsp + 0x80], r13
jbe 0x140188f97
mov rax, qword [rsp + 0x38]
cmp byte [rax + r13], 0xbf
mov rbx, qword [rsp + 0x48]
mov r14, qword [rsp + 0x68]
mov r12, qword [rsp + 0x60]
jg 0x140188fac
jmp 0x140189adb
mov rbx, qword [rsp + 0x48]
mov r14, qword [rsp + 0x68]
mov r12, qword [rsp + 0x60]
jne 0x140189adb
cmp r13d, 4
jne 0x140189011
lea rdx, [0x141ab4f88]
mov rsi, qword [rsp + 0x38]
mov rcx, rsi
mov r8, r13
call sub.msvcrt.dll_memcmp
test eax, eax
je 0x140189124
lea rdx, [0x141a9ec90]
mov rcx, rsi
mov r8, r13
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x140189036
mov eax, dword [r14 + 0x44]
mov rcx, qword [r14 + 0x20]
test rax, rax
je 0x1401897bc
cmp qword [r14 + 0x28], rax
jbe 0x1401897b6
cmp byte [rcx + rax], 0xbf
jg 0x1401897bc
jmp 0x140189adb
cmp r13d, 5
mov rsi, qword [rsp + 0x38]
jne 0x140189036
lea rdx, [0x141ab4f8c]
mov rcx, rsi
mov r8, r13
call sub.msvcrt.dll_memcmp
test eax, eax
je 0x140189271
mov qword [rsp + 0x670], rsi
mov qword [rsp + 0x678], r13
lea rax, [rsp + 0x670]
mov qword [rsp + 0x3a0], rax
lea rax, [0x1401a0410]
mov qword [rsp + 0x3a8], rax
lea rax, [0x141a9eca8]
mov qword [rsp + 0x210], rax
mov qword [rsp + 0x218], 1
mov qword [rsp + 0x230], 0
lea rax, [rsp + 0x3a0]
mov qword [rsp + 0x220], rax
mov qword [rsp + 0x228], 1
lea rsi, [rsp + 0x108]
lea rdx, [rsp + 0x210]
mov rcx, rsi
call fcn.140034eb0
movabs rbx, 0x8000000000000000
mov qword [rsp + 0x120], rbx
mov qword [rsp + 0x178], 0
mov byte [rsp + 0x188], 1
lea rcx, [rsp + 0x210]
mov r8d, 0xe8
mov rdx, rsi
call sub.msvcrt.dll_memcpy
movups xmm0, xmmword [rsp + 0x1f0]
movups xmm1, xmmword [rsp + 0x200]
movaps xmmword [rsp + 0x3a0], xmm0
movaps xmmword [rsp + 0x3b0], xmm1
mov rsi, rbx
jmp 0x1401898d7
cmp word [r14 + 0x40], 0
mov bp, 0x50
je 0x140189135
movzx ebp, word [r14 + 0x42]
movzx eax, byte [0x141af8129]
mov edx, 4
xor ecx, ecx
call fcn.140146820
test rax, rax
je 0x140189adb
mov rsi, rax
mov r13, rdi
mov dword [rax], 0x70747468
test rbx, rbx
je 0x140189405
js 0x140189adb
movzx eax, byte [0x141af8129]
xor ecx, ecx
mov rdx, rbx
call fcn.140146820
mov rdi, rax
mov r15, rbx
test rax, rax
jne 0x14018940d
jmp 0x140189adb
call sub.ws2_32.dll_WSAGetLastError
mov edi, eax
jmp 0x140189206
call sub.ws2_32.dll_WSAGetLastError
mov edi, eax
test r14b, r14b
jne 0x140189206
mov eax, esi
and eax, 3
lea rcx, [rax - 2]
cmp rcx, 2
jb 0x140189206
test rax, rax
je 0x140189206
mov rbx, qword [rsi - 1]
mov r14, qword [rsi + 7]
mov rax, qword [r14]
test rax, rax
je 0x1401891cf
mov rcx, rbx
call rax
dec rsi
cmp qword [r14 + 8], 0
je 0x1401891f5
cmp qword [r14 + 0x10], 0x11
jb 0x1401891e4
mov rbx, qword [rbx - 8]
mov rcx, qword [0x141af8068]
xor edx, edx
mov r8, rbx
call sub.KERNEL32.dll_HeapFree
mov rcx, qword [0x141af8068]
xor edx, edx
mov r8, rsi
call sub.KERNEL32.dll_HeapFree
shl rdi, 0x20
or rdi, 2
mov rsi, rdi
movabs rax, 0x8000000000000000
mov qword [rsp + 0x218], rax
mov qword [rsp + 0x230], rax
mov qword [rsp + 0x288], 0
mov byte [rsp + 0x298], 8
mov qword [rsp + 0x210], rax
lea rdx, [rsp + 0x210]
mov rcx, qword [rsp + 0x90]
mov r8, rsi
call fcn.1401ade80
lea rcx, [rsp + 0x100]
call fcn.14018b010
jmp 0x140187d27
mov r12, rdi
cmp word [r14 + 0x40], 0
mov bp, 0x1bb
je 0x140189285
movzx ebp, word [r14 + 0x42]
mov word [rsp + 0x20], bp
lea rcx, [rsp + 0x210]
mov rdx, r14
mov r8, qword [rsp + 0x60]
mov r9, qword [rsp + 0x48]
call fcn.14018ff60
mov rbx, qword [rsp + 0x210]
mov rdi, qword [rsp + 0x218]
movabs rax, 0x8000000000000000
lea rsi, [rax + 1]
movups xmm0, xmmword [rsp + 0x220]
movaps xmmword [rsp + 0x3a0], xmm0
movups xmm0, xmmword [rsp + 0x230]
movaps xmmword [rsp + 0x3b0], xmm0
cmp rbx, rsi
jne 0x140189769
movdqa xmm0, xmmword [rsp + 0x3a0]
movaps xmm1, xmmword [rsp + 0x3b0]
movdqa xmmword [rsp + 0x650], xmm0
movaps xmmword [rsp + 0x660], xmm1
mov rax, qword [r14 + 0x98]
mov r14, qword [rax + 0xb8]
mov rbx, qword [rax + 0xc0]
mov r15, qword [rbx + 0x10]
movzx eax, byte [0x141af8129]
mov edx, 8
xor ecx, ecx
call fcn.140146820
test rax, rax
je 0x140189adb
dec r15
and r15, 0xfffffffffffffff0
lea rdx, [r14 + r15]
add rdx, 0x10
mov qword [rax], rdi
lea rcx, [0x141a9f5b0]
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x210]
mov r8, qword [rsp + 0x60]
mov r9, qword [rsp + 0x48]
call qword [rbx + 0x18]
mov rdi, qword [rsp + 0x210]
mov rbx, qword [rsp + 0x218]
mov r15, qword [rsp + 0x220]
cmp rdi, rsi
jne 0x14018986b
movzx eax, byte [0x141af8129]
mov edx, 5
xor ecx, ecx
call fcn.140146820
test rax, rax
je 0x140189adb
mov rsi, rax
mov byte [rax + 4], 0x73
mov dword [rax], 0x70747468
cmp qword [rsp + 0x48], 0
je 0x140189914
mov r14, qword [rsp + 0x48]
js 0x140189adb
movzx eax, byte [0x141af8129]
xor ecx, ecx
mov rdx, r14
call fcn.140146820
mov rdi, rax
mov rax, r14
mov qword [rsp + 0x50], r14
test rdi, rdi
jne 0x140189925
jmp 0x140189adb
mov edi, 1
xor r15d, r15d
mov rcx, rdi
mov rdx, r12
mov r8, rbx
call sub.msvcrt.dll_memcpy
mov r12, qword [r14 + 0xa0]
jmp 0x140189426
pause
mov rax, qword [r12 + 8]
nop dword [rax + rax]
cmp rax, 0xffffffffffffffff
je 0x140189424
test rax, rax
js 0x140189adb
lea rcx, [rax + 1]
lock cmpxchg qword [r12 + 8], rcx
jne 0x140189430
mov word [rsp + 0x20], bp
lea rcx, [rsp + 0x210]
mov rdx, qword [rsp + 0x68]
mov r8, qword [rsp + 0x60]
mov rbx, qword [rsp + 0x48]
mov r9, rbx
call fcn.14018ff60
mov qword [rsp + 0x3a0], r12
mov qword [rsp + 0x3a8], 4
mov qword [rsp + 0x3b0], rsi
mov qword [rsp + 0x3b8], 4
mov qword [rsp + 0x3c0], r15
mov qword [rsp + 0x3c8], rdi
mov qword [rsp + 0x3d0], rbx
movabs rcx, 0x8000000000000000
mov qword [rsp + 0x3d8], rcx
movdqu xmm0, xmmword [rsp + 0x508]
movups xmm1, xmmword [rsp + 0x518]
movups xmm2, xmmword [rsp + 0x528]
movups xmm3, xmmword [rsp + 0x538]
movdqu xmmword [rsp + 0x3e0], xmm0
movups xmmword [rsp + 0x3f0], xmm1
movups xmmword [rsp + 0x400], xmm2
movups xmmword [rsp + 0x410], xmm3
mov rax, qword [rsp + 0x548]
mov qword [rsp + 0x420], rax
mov word [rsp + 0x428], 1
mov word [rsp + 0x42a], bp
lea r14, [rcx + 1]
cmp qword [rsp + 0x210], r14
jne 0x1401896e0
mov rbx, qword [rsp + 0x218]
movzx eax, byte [0x141af8129]
mov edx, 8
xor ecx, ecx
call fcn.140146820
test rax, rax
je 0x140189adb
mov r14, rax
mov qword [rax], rbx
movzx eax, byte [0x141af8129]
mov edx, 0x2000
xor ecx, ecx
call fcn.140146820
test rax, rax
je 0x140189adb
lea rcx, [rsp + 0x220]
pxor xmm0, xmm0
movdqu xmmword [rsp + 0x1c8], xmm0
mov qword [rsp + 0x1d8], 0
movups xmm0, xmmword [rcx]
movups xmm1, xmmword [rcx + 0x10]
movups xmmword [rsp + 0x198], xmm0
movups xmmword [rsp + 0x1a8], xmm1
lea rbx, [rsp + 0x108]
mov qword [rsp + 0x108], r12
mov qword [rsp + 0x110], 4
mov qword [rsp + 0x118], rsi
mov qword [rsp + 0x120], 4
mov qword [rsp + 0x128], r15
mov qword [rsp + 0x130], rdi
mov rcx, qword [rsp + 0x48]
mov qword [rsp + 0x138], rcx
movabs r15, 0x8000000000000000
mov qword [rsp + 0x140], r15
movups xmm0, xmmword [rsp + 0x508]
movups xmm1, xmmword [rsp + 0x518]
movups xmm2, xmmword [rsp + 0x528]
movups xmm3, xmmword [rsp + 0x538]
movups xmmword [rsp + 0x148], xmm0
movups xmmword [rsp + 0x158], xmm1
movups xmmword [rsp + 0x168], xmm2
movups xmmword [rsp + 0x178], xmm3
mov rcx, qword [rsp + 0x548]
mov qword [rsp + 0x188], rcx
mov word [rsp + 0x190], 1
mov word [rsp + 0x192], bp
mov qword [rsp + 0x1b8], rax
mov qword [rsp + 0x1c0], 0x2000
mov qword [rsp + 0x1e0], r14
lea rax, [0x141a9f5b0]
mov qword [rsp + 0x1e8], rax
lea rcx, [rsp + 0x210]
mov r8d, 0xe8
mov rdx, rbx
call sub.msvcrt.dll_memcpy
movups xmm0, xmmword [rsp + 0x1f0]
movups xmm1, xmmword [rsp + 0x200]
movaps xmmword [rsp + 0x3a0], xmm0
movaps xmmword [rsp + 0x3b0], xmm1
mov rdi, r13
jmp 0x140189ab7
lea rcx, [rsp + 0x100]
lea rdx, [rsp + 0x210]
mov r8d, 0x110
call sub.msvcrt.dll_memcpy
lea rcx, [rsp + 0x3a0]
call fcn.14018ec60
mov rsi, qword [rsp + 0x100]
lea rbx, [rsp + 0x108]
lea rcx, [rsp + 0x210]
mov r8d, 0xe8
mov rdx, rbx
call sub.msvcrt.dll_memcpy
movups xmm0, xmmword [rsp + 0x1f0]
movups xmm1, xmmword [rsp + 0x200]
movaps xmmword [rsp + 0x3a0], xmm0
movaps xmmword [rsp + 0x3b0], xmm1
cmp rsi, r14
mov rdi, r13
movabs r15, 0x8000000000000000
jne 0x1401898d7
jmp 0x140189ab7
lea rdx, [rsp + 0x240]
lea rcx, [rsp + 0x130]
mov r8d, 0xe0
call sub.msvcrt.dll_memcpy
movdqa xmm0, xmmword [rsp + 0x3a0]
movaps xmm1, xmmword [rsp + 0x3b0]
movdqu xmmword [rsp + 0x110], xmm0
movups xmmword [rsp + 0x120], xmm1
mov qword [rsp + 0x108], rdi
mov rsi, rbx
jmp 0x140189899
jne 0x140189adb
mov qword [rsp + 0x3a0], rcx
mov qword [rsp + 0x3a8], rax
lea rax, [rsp + 0x3a0]
mov qword [rsp + 0x670], rax
lea rax, [0x1401a0410]
mov qword [rsp + 0x678], rax
lea rax, [0x141a9f700]
mov qword [rsp + 0x210], rax
mov qword [rsp + 0x218], 2
mov qword [rsp + 0x230], 0
lea rax, [rsp + 0x670]
mov qword [rsp + 0x220], rax
mov qword [rsp + 0x228], 1
lea rcx, [rsp + 0x108]
lea rdx, [rsp + 0x210]
call fcn.140034eb0
movabs rsi, 0x8000000000000000
mov qword [rsp + 0x120], rsi
mov qword [rsp + 0x178], 0
mov byte [rsp + 0x188], 1
jmp 0x14018989c
lea rdx, [rsp + 0x228]
lea rcx, [rsp + 0x118]
mov r8d, 0xf8
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0x108], rbx
mov qword [rsp + 0x110], r15
mov rsi, rdi
mov rdi, r12
lea rdx, [rsp + 0x108]
lea rcx, [rsp + 0x210]
mov r8d, 0xe8
call sub.msvcrt.dll_memcpy
movups xmm0, xmmword [rsp + 0x1f0]
movups xmm1, xmmword [rsp + 0x200]
movaps xmmword [rsp + 0x3a0], xmm0
movaps xmmword [rsp + 0x3b0], xmm1
lea rcx, [rdi + 8]
lea rdx, [rsp + 0x210]
mov r8d, 0xe8
call sub.msvcrt.dll_memcpy
movaps xmm0, xmmword [rsp + 0x3a0]
movaps xmm1, xmmword [rsp + 0x3b0]
movups xmmword [rdi + 0xf0], xmm0
movups xmmword [rdi + 0x100], xmm1
mov qword [rdi], rsi
jmp 0x140187d27
mov edi, 1
xor eax, eax
mov qword [rsp + 0x50], rax
mov r14, qword [rsp + 0x48]
mov rcx, rdi
mov rdx, qword [rsp + 0x60]
mov r8, r14
call sub.msvcrt.dll_memcpy
mov rax, qword [rsp + 0x68]
mov r13, qword [rax + 0xa0]
jmp 0x140189945
pause
mov rax, qword [r13 + 8]
cmp rax, 0xffffffffffffffff
je 0x140189943
test rax, rax
js 0x140189adb
lea rcx, [rax + 1]
lock cmpxchg qword [r13 + 8], rcx
jne 0x140189949
movzx eax, byte [0x141af8129]
mov edx, 0x10
xor ecx, ecx
call fcn.140146820
test rax, rax
je 0x140189adb
mov r14, rax
mov qword [rax], rbx
mov qword [rax + 8], r15
movzx eax, byte [0x141af8129]
mov edx, 0x2000
xor ecx, ecx
call fcn.140146820
test rax, rax
je 0x140189adb
lea rbx, [rsp + 0x108]
mov qword [rsp + 0x108], r13
mov qword [rsp + 0x110], 5
mov qword [rsp + 0x118], rsi
mov qword [rsp + 0x120], 5
mov rcx, qword [rsp + 0x50]
mov qword [rsp + 0x128], rcx
mov qword [rsp + 0x130], rdi
mov rcx, qword [rsp + 0x48]
mov qword [rsp + 0x138], rcx
movabs r15, 0x8000000000000000
mov qword [rsp + 0x140], r15
mov word [rsp + 0x190], 1
mov word [rsp + 0x192], bp
movaps xmm0, xmmword [rsp + 0x650]
movaps xmm1, xmmword [rsp + 0x660]
movups xmmword [rsp + 0x198], xmm0
movups xmmword [rsp + 0x1a8], xmm1
mov qword [rsp + 0x1b8], rax
mov qword [rsp + 0x1c0], 0x2000
xorps xmm0, xmm0
movups xmmword [rsp + 0x1c8], xmm0
mov qword [rsp + 0x1d8], 0
mov qword [rsp + 0x1e0], r14
lea rax, [0x141a9f468]
mov qword [rsp + 0x1e8], rax
lea rcx, [rsp + 0x210]
mov r8d, 0xe8
mov rdx, rbx
call sub.msvcrt.dll_memcpy
movups xmm0, xmmword [rsp + 0x1f0]
movups xmm1, xmmword [rsp + 0x200]
movaps xmmword [rsp + 0x3a0], xmm0
movaps xmmword [rsp + 0x3b0], xmm1
mov rdi, r12
lea rcx, [rdi + 8]
mov r8d, 0xe8
mov rdx, rbx
call sub.msvcrt.dll_memcpy
mov byte [rdi + 0xf0], 0
inc r15
mov qword [rdi], r15
jmp 0x140187d27
ud2