Function at 0x14001feb0
Capabilities:
Get storage device properties

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x470]
sub rsp, 0x570
mov rax, qword [0x140104100]
xor rax, rsp
mov qword [rbp + 0x460], rax
mov r12, rdx
mov qword [rsp + 0x48], rdx
mov rsi, rcx
mov qword [rsp + 0x50], rcx
mov qword [rbp + 0x230], rdx
xor r14d, r14d
mov dword [rbp + 0x250], r14d
cmp qword [rdx + 0x18], r14
je 0x140021587
cmp qword [rdx + 0x38], r14
je 0x140021587
add rdx, 8
lea rcx, [rbp + 0x298]
call fcn.1400084d0
nop
movzx eax, byte [r12 + 1]
mov ecx, socket
movabs r15, 0x7fffffffffffffff
movabs r13, 0x8000000000000000
cmp al, 3
jne 0x140020826
lea rdx, [r12 + 0x28]
mov rcx, qword [rsi]
add rcx, 0xf0
cmp rcx, rdx
je 0x14001ff74
mov r8, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0xf
jbe 0x14001ff6f
mov rdx, qword [rdx]
call fcn.14000a2d0
xorps xmm0, xmm0
movups xmmword [rbp + 0x330], xmm0
mov qword [rbp + 0x340], r14
mov qword [rbp + 0x348], socket
mov byte [rbp + 0x330], 0
mov qword [rsp + 0x30], r14
mov dword [rsp + 0x28], r14d
mov dword [rsp + 0x20], 3
xor r9d, r9d
xor edx, edx
mov r8d, 3
lea rcx, str..PhysicalDrive0
call qword [sym.imp.KERNEL32.dll_CreateFileA]
mov r14, rax
cmp rax, 0xffffffffffffffff
je 0x1400200d6
xorps xmm0, xmm0
movups xmmword [rbp + 0x270], xmm0
lea rax, [0x14001fcd0]
mov qword [rbp + 0x270], rax
mov qword [rbp + 0x278], r14
xor ebx, ebx
mov qword [rbp + 0x244], rbx
mov dword [rbp + 0x240], ebx
mov dword [rbp + 0x250], ebx
mov qword [rsp + 0x38], rbx
lea rax, [rbp + 0x250]
mov qword [rsp + 0x30], rax
mov dword [rsp + 0x28], 8
lea rax, [rbp + 0x2e8]
mov qword [rsp + 0x20], rax
mov r9d, recv
lea r8, [rbp + 0x240]
mov edx, 0x2d1400
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
test eax, eax
jne 0x140020048
jmp 0x1400200c7
mov edi, dword [rbp + 0x2ec]
mov ecx, edi
call fcn.1400a3d00
mov r15, rax
mov r8d, edi
xor edx, edx
mov rcx, rax
call fcn.1400cebf0
mov qword [rbp + 0x290], r15
xor ebx, ebx
mov qword [rsp + 0x38], rbx
lea rax, [rbp + 0x250]
mov qword [rsp + 0x30], rax
mov dword [rsp + 0x28], edi
mov qword [rsp + 0x20], r15
mov r9d, recv
lea r8, [rbp + 0x240]
mov edx, 0x2d1400
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
test eax, eax
jne 0x1400200b2
mov rcx, r15
call fcn.1400a3bac
nop
jmp 0x1400200c7
mov eax, dword [r15 + 0x18]
test eax, eax
jne 0x14002017a
mov rcx, r15
call fcn.1400a3bac
nop
test r14, r14
je 0x1400200d6
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_CloseHandle]
nop
mov rax, qword [rsi]
mov dword [rax + 0x20], 0x1627
mov qword [rsp + 0x40], 5
lea rcx, [rsp + 0x40]
call fcn.14000adc0
mov rbx, qword [rsi]
xor edi, edi
mov eax, edi
xchg byte [rbx + 4], al
cmp qword [rbx + 8], rdi
je 0x14002012d
movsxd rcx, dword [rbx]
call qword [sym.imp.WS2_32.dll_closesocket]
mov rcx, qword [rbx + 8]
call fcn.1400640b0
mov rcx, qword [rbx + 8]
call fcn.1400640a0
mov dword [rbx], 0xffffffff
mov qword [rbx + 8], rdi
mov r12, qword [rsp + 0x48]
mov rdx, qword [rbp + 0x2b0]
cmp rdx, 0xf
jbe 0x14002016e
inc rdx
mov rcx, qword [rbp + 0x298]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140020169
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400215cb
call fcn.1400a3bac
mov qword [rbp + 0x2a8], rdi
jmp 0x140021575
lea rdx, [r15 + rax]
xorps xmm0, xmm0
movups xmmword [rbp + 0x2c8], xmm0
mov qword [rbp + 0x2d8], rbx
mov qword [rbp + 0x2e0], rbx
mov r12, 0xffffffffffffffff
mov r8, r12
inc r8
cmp byte [rdx + r8], bl
jne 0x1400201a0
lea rcx, [rbp + 0x2c8]
call fcn.1400017c0
nop
lea rdx, [rbp + 0x2c8]
mov rcx, qword [rbp + 0x2c8]
mov r8, qword [rbp + 0x2e0]
cmp r8, 0xf
cmova rdx, rcx
mov r13, qword [rbp + 0x2d8]
add rdx, r13
mov qword [rsp + 0x40], rdx
lea rbx, [rbp + 0x2c8]
cmp r8, 0xf
cmova rbx, rcx
add rbx, r13
lea rdi, [rbp + 0x2c8]
cmp r8, 0xf
cmova rdi, rcx
cmp rdi, rbx
je 0x140020276
movzx ecx, byte [rdi]
call fcn.1400b0da0
test eax, eax
jne 0x14002021c
inc rdi
cmp rdi, rbx
jne 0x140020208
mov r8, qword [rbp + 0x2e0]
mov r13, qword [rbp + 0x2d8]
mov rcx, qword [rbp + 0x2c8]
cmp rdi, rbx
je 0x140020276
lea rsi, [rdi + 1]
cmp rsi, rbx
je 0x140020271
nop
movzx ecx, byte [rsi]
call fcn.1400b0da0
test eax, eax
jne 0x140020254
movzx eax, byte [rsi]
mov byte [rdi], al
inc rdi
inc rsi
cmp rsi, rbx
jne 0x140020240
mov r8, qword [rbp + 0x2e0]
mov r13, qword [rbp + 0x2d8]
mov rcx, qword [rbp + 0x2c8]
mov rsi, qword [rsp + 0x50]
lea rax, [rbp + 0x2c8]
cmp r8, 0xf
cmova rax, rcx
mov rdx, rdi
sub rdx, rax
mov r9, qword [rsp + 0x40]
sub r9, rdi
mov rax, r13
sub rax, rdx
cmp rax, r9
cmovb r9, rax
lea rax, [rbp + 0x2c8]
cmp r8, 0xf
cmova rax, rcx
lea rcx, [rax + rdx]
sub r13, r9
mov r8, r13
sub r8, rdx
inc r8
lea rdx, [rcx + r9]
call fcn.1400ce550
mov qword [rbp + 0x2d8], r13
lea rdx, [rbp + 0x2c8]
cmp qword [rbp + 0x2e0], 0xf
cmova rdx, qword [rbp + 0x2c8]
mov r8, r13
lea rcx, [rbp + 0x330]
call fcn.14000a2d0
nop
mov rdx, qword [rbp + 0x2e0]
cmp rdx, 0xf
jbe 0x140020337
inc rdx
mov rcx, qword [rbp + 0x2c8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140020332
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400215d1
call fcn.1400a3bac
mov qword [rbp + 0x2d8], 0
mov qword [rbp + 0x2e0], socket
mov byte [rbp + 0x2c8], 0
mov rcx, r15
call fcn.1400a3bac
nop
test r14, r14
je 0x14002036c
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_CloseHandle]
nop
mov byte [rbp + 0x258], 0
xor edx, edx
lea rcx, [rbp + 0x260]
call fcn.14000a090
nop
lea rax, [rbp + 0x270]
mov qword [rbp + 0x290], rax
lea rdx, [rbp + 0x330]
lea rcx, [rbp + 0x270]
call fcn.14000b060
mov rbx, rax
lea rdx, [0x1400ee974]
lea rcx, [rbp + 0x258]
call fcn.14000aa10
nop
movzx edx, byte [rax]
movzx ecx, byte [rbx]
mov byte [rax], cl
mov byte [rbx], dl
lea rcx, [rbx + 8]
mov rdx, qword [rax + 8]
mov r8, qword [rcx]
mov qword [rax + 8], r8
mov qword [rcx], rdx
movzx edx, byte [rbx]
call fcn.140009360
nop
mov byte [rbp + 0x2b8], 0
xor edx, edx
lea rcx, [rbp + 0x2c0]
call fcn.14000a090
nop
lea rax, [rbp + 0x240]
mov qword [rbp + 0x290], rax
lea rdx, [rbp + 0x2f0]
lea rcx, [rbp + 0x258]
call fcn.140008000
mov rbx, rax
xor eax, eax
mov qword [rbp + 0x248], rax
mov byte [rbp + 0x240], 3
mov ecx, 0x20
call fcn.1400a3930
xorps xmm0, xmm0
movups xmmword [rax], xmm0
xor r14d, r14d
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], r14
movups xmm0, xmmword [rbx]
movups xmmword [rax], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rax + 0x10], xmm1
mov qword [rbx + 0x10], r14
mov qword [rbx + 0x18], recv
mov byte [rbx], r14b
mov qword [rbp + 0x248], rax
lea rdx, str.hwid
lea rcx, [rbp + 0x2b8]
call fcn.14000aa10
nop
movzx edx, byte [rax]
movzx ecx, byte [rbp + 0x240]
mov byte [rax], cl
mov byte [rbp + 0x240], dl
mov rcx, qword [rax + 8]
mov rdx, qword [rbp + 0x248]
mov qword [rax + 8], rdx
mov qword [rbp + 0x248], rcx
movzx edx, byte [rbp + 0x240]
lea rcx, [rbp + 0x248]
call fcn.140009360
nop
mov rdx, qword [rbp + 0x308]
cmp rdx, 0xf
jbe 0x1400204f9
inc rdx
mov rcx, qword [rbp + 0x2f0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400204f4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400215d7
call fcn.1400a3bac
lea rax, [rbp + 0x240]
mov qword [rbp + 0x290], rax
mov rax, qword [rsi]
mov byte [rbp + 0x240], 0
xor ecx, ecx
mov qword [rbp + 0x248], rcx
movzx eax, word [rax + 0x220]
mov byte [rbp + 0x240], 6
mov qword [rbp + 0x248], rax
lea rdx, [0x1400ee980]
lea rcx, [rbp + 0x2b8]
call fcn.14000aa10
nop
movzx edx, byte [rax]
movzx ecx, byte [rbp + 0x240]
mov byte [rax], cl
mov byte [rbp + 0x240], dl
mov rcx, qword [rax + 8]
mov rdx, qword [rbp + 0x248]
mov qword [rax + 8], rdx
mov qword [rbp + 0x248], rcx
movzx edx, byte [rbp + 0x240]
lea rcx, [rbp + 0x248]
call fcn.140009360
mov rbx, qword [rsi]
lea rcx, [rbx + 0xf0]
cmp qword [rbx + 0x108], 0xf
jbe 0x140020599
mov rcx, qword [rbx + 0xf0]
mov rax, qword [rbx + 0x100]
mov qword [rbp + 0x270], rcx
mov qword [rbp + 0x278], rax
lea rdx, [rbp + 0x2f0]
lea rcx, [rbp + 0x2b8]
call fcn.140008000
nop
mov rcx, rax
cmp qword [rax + 0x18], 0xf
jbe 0x1400205cf
mov rcx, qword [rax]
mov rax, qword [rax + 0x10]
mov qword [rbp + 0x240], rcx
mov qword [rbp + 0x248], rax
movaps xmm0, xmmword [rbp + 0x270]
movdqa xmmword [rbp + 0x270], xmm0
movaps xmm1, xmmword [rbp + 0x240]
movdqa xmmword [rbp + 0x240], xmm1
mov dword [rsp + 0x20], 1
lea r9, [rbp + 0x270]
xor r8d, r8d
lea rdx, [rbp + 0x240]
lea rcx, [rsp + 0x60]
call fcn.140003f60
nop
mov r8, qword [rax + 0x18]
test r8, r8
je 0x14002066a
cmp qword [rax + 0x38], 0
je 0x14002066a
lea rdx, [rax + 8]
cmp qword [rdx + 0x18], 0xf
jbe 0x140020641
mov rdx, qword [rdx]
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x140020663
test rdx, rdx
je 0x140020663
test r8d, r8d
js 0x140020663
call fcn.140070cd0
mov ebx, eax
test eax, eax
cmovs ebx, r12d
jmp 0x14002066d
mov ebx, 0xffffff53
jmp 0x14002066d
mov ebx, r14d
lea rcx, [rsp + 0x60]
call fcn.140004800
nop
mov rdx, qword [rbp + 0x308]
cmp rdx, 0xf
jbe 0x1400206b9
inc rdx
mov rcx, qword [rbp + 0x2f0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400206b4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400215dd
call fcn.1400a3bac
test ebx, ebx
jg 0x14002075c
mov rax, qword [rsi]
mov dword [rax + 0x20], 0x1627
mov qword [rsp + 0x40], 5
lea rcx, [rsp + 0x40]
call fcn.14000adc0
mov rbx, qword [rsi]
mov eax, r14d
xchg byte [rbx + 4], al
cmp qword [rbx + 8], 0
je 0x140020710
movsxd rcx, dword [rbx]
call qword [sym.imp.WS2_32.dll_closesocket]
mov rcx, qword [rbx + 8]
call fcn.1400640b0
mov rcx, qword [rbx + 8]
call fcn.1400640a0
mov dword [rbx], r12d
mov qword [rbx + 8], r14
movzx edx, byte [rbp + 0x2b8]
lea rcx, [rbp + 0x2c0]
call fcn.140009360
nop
movzx edx, byte [rbp + 0x258]
lea rcx, [rbp + 0x260]
call fcn.140009360
nop
lea rcx, [rbp + 0x330]
call fcn.140001f50
nop
lea rcx, [rbp + 0x298]
call fcn.140001f50
nop
mov rcx, qword [rsp + 0x48]
jmp 0x14002158a
movzx edx, byte [rbp + 0x2b8]
lea rcx, [rbp + 0x2c0]
call fcn.140009360
nop
movzx edx, byte [rbp + 0x258]
lea rcx, [rbp + 0x260]
call fcn.140009360
nop
lea rcx, [rbp + 0x330]
call fcn.140001f50
movabs r15, 0x7fffffffffffffff
mov r12, qword [rsp + 0x48]
movabs r13, 0x8000000000000000
mov ecx, socket
lea rax, [rbp + 0x270]
mov qword [rbp + 0x290], rax
xorps xmm0, xmm0
movups xmmword [rbp + 0x270], xmm0
mov qword [rbp + 0x280], r14
mov qword [rbp + 0x288], r14
mov rbx, qword [rbp + 0x2a8]
lea rdi, [rbp + 0x298]
cmp qword [rbp + 0x2b0], 0xf
cmova rdi, qword [rbp + 0x298]
cmp rbx, r15
ja 0x1400215e3
cmp rbx, 0xf
ja 0x140021405
mov qword [rbp + 0x280], rbx
mov qword [rbp + 0x288], socket
movups xmm0, xmmword [rdi]
movups xmmword [rbp + 0x270], xmm0
jmp 0x140021492
cmp al, 2
jne 0x14002097c
mov qword [rbp + 0x28], r14
lea rax, [rbp - 0x10]
mov qword [rbp + 0x290], rax
mov byte [rbp + 0x258], 0
xor edx, edx
lea rcx, [rbp + 0x260]
call fcn.14000a090
nop
mov dword [rbp + 0x250], 4
lea rax, [rsp + 0x60]
mov qword [rsp + 0x40], rax
mov qword [rbp - 0x68], r14
mov rcx, qword [rbp + 0x28]
test rcx, rcx
je 0x140020882
mov rax, qword [rcx]
lea rdx, [rsp + 0x60]
call qword [rax]
mov qword [rbp - 0x68], rax
lea rcx, [rbp + 0x298]
cmp qword [rbp + 0x2b0], 0xf
cmova rcx, qword [rbp + 0x298]
mov rax, qword [rbp + 0x2a8]
add rax, rcx
lea rcx, [rbp + 0x298]
cmp qword [rbp + 0x2b0], 0xf
cmova rcx, qword [rbp + 0x298]
mov qword [rbp + 0x270], rcx
mov qword [rbp + 0x278], rax
movaps xmm0, xmmword [rbp + 0x270]
movdqa xmmword [rbp + 0x270], xmm0
lea r8, [rsp + 0x60]
lea rdx, [rbp + 0x270]
lea rcx, [rbp + 0x70]
call fcn.14000fb10
nop
lea r8, [rbp + 0x258]
mov rcx, rax
call fcn.14000c0a0
nop
lea rcx, [rbp + 0xb8]
call fcn.14000bf80
mov rcx, qword [rbp + 0xa8]
test rcx, rcx
je 0x140020926
mov rax, qword [rcx]
lea rdx, [rbp + 0x70]
cmp rcx, rdx
setne dl
call qword [rax + 0x20]
nop
mov rcx, qword [rbp + 0x28]
test rcx, rcx
je 0x140020943
mov rax, qword [rcx]
lea rdx, [rbp - 0x10]
cmp rcx, rdx
setne dl
call qword [rax + 0x20]
mov qword [rbp + 0x28], r14
lea rdx, str.status
lea rcx, [rbp + 0x258]
call fcn.14000aa10
mov rcx, rax
call fcn.1400246c0
mov rcx, qword [rsi]
mov dword [rcx + 0x20], eax
movzx edx, byte [rbp + 0x258]
lea rcx, [rbp + 0x260]
call fcn.140009360
jmp 0x1400207a9
cmp al, 5
jne 0x140021129
mov qword [rbp + 0x68], r14
lea rax, [rbp + 0x30]
mov qword [rbp + 0x290], rax
mov byte [rbp + 0x258], 0
xor edx, edx
lea rcx, [rbp + 0x260]
call fcn.14000a090
nop
mov r13d, 8
mov dword [rbp + 0x250], r13d
lea rax, [rsp + 0x60]
mov qword [rsp + 0x40], rax
mov qword [rbp - 0x68], r14
mov rcx, qword [rbp + 0x68]
test rcx, rcx
je 0x1400209db
mov rax, qword [rcx]
lea rdx, [rsp + 0x60]
call qword [rax]
mov qword [rbp - 0x68], rax
lea rcx, [rbp + 0x298]
cmp qword [rbp + 0x2b0], 0xf
cmova rcx, qword [rbp + 0x298]
mov rax, qword [rbp + 0x2a8]
add rax, rcx
lea rcx, [rbp + 0x298]
cmp qword [rbp + 0x2b0], 0xf
cmova rcx, qword [rbp + 0x298]
mov qword [rbp + 0x270], rcx
mov qword [rbp + 0x278], rax
movaps xmm0, xmmword [rbp + 0x270]
movdqa xmmword [rbp + 0x270], xmm0
lea r8, [rsp + 0x60]
lea rdx, [rbp + 0x270]
lea rcx, [rbp + 0x150]
call fcn.14000fb10
nop
lea r8, [rbp + 0x258]
mov rcx, rax
call fcn.14000c0a0
nop
lea rcx, [rbp + 0x198]
call fcn.14000bf80
mov rcx, qword [rbp + 0x188]
test rcx, rcx
je 0x140020a85
mov rax, qword [rcx]
lea rdx, [rbp + 0x150]
cmp rcx, rdx
setne dl
call qword [rax + 0x20]
nop
mov rcx, qword [rbp + 0x68]
test rcx, rcx
je 0x140020aa2
mov rax, qword [rcx]
lea rdx, [rbp + 0x30]
cmp rcx, rdx
setne dl
call qword [rax + 0x20]
mov qword [rbp + 0x68], r14
lea rdx, str.result
lea rcx, [rbp + 0x258]
call fcn.14000aa10
mov rcx, rax
call fcn.1400246c0
mov rcx, qword [rsi]
mov dword [rcx + 0x1c], eax
mov rax, qword [rsi]
cmp dword [rax + 0x1c], 0xf063
jne 0x140021111
lea rdx, str.games
lea rcx, [rbp + 0x258]
call fcn.14000aa10
mov rdx, rax
lea rcx, [rbp + 0x240]
call fcn.1400138f0
nop
lea rdx, str.authtoken
lea rcx, [rbp + 0x258]
call fcn.14000aa10
mov rdx, rax
lea rcx, [rbp + 0x2b8]
call fcn.1400138f0
nop
lea rax, [rbp + 0x240]
mov qword [rbp + 0x2e8], rax
lea rcx, [rbp + 0x360]
call fcn.140006340
lea rdx, [rbp + 0x360]
lea rcx, [rbp + 0x2e8]
call fcn.140007bb0
nop
lea rcx, [rbp + 0x3e0]
call fcn.140006340
lea rdx, [rbp + 0x3e0]
lea rcx, [rbp + 0x2e8]
call fcn.140007ac0
nop
mov rdx, qword [rbp + 0x360]
cmp rdx, qword [rbp + 0x3e0]
jne 0x1400216c3
nop dword [rax + rax]
movzx ecx, byte [rdx]
sub ecx, 1
je 0x140020bad
cmp ecx, 1
je 0x140020b9d
mov rax, qword [rbp + 0x400]
cmp qword [rbp + 0x380], rax
jmp 0x140020bbb
mov rax, qword [rbp + 0x3f0]
cmp qword [rbp + 0x370], rax
jmp 0x140020bbb
mov rax, qword [rbp + 0x3e8]
cmp qword [rbp + 0x368], rax
sete al
test al, al
jne 0x140021031
lea rcx, [rbp + 0x360]
call fcn.14000aee0
mov r12, rax
lea rcx, [rbp + 0x360]
call fcn.140007cb0
mov rbx, rax
lea rdx, str.version
mov rcx, rax
call fcn.14000aa10
lea rdx, [rbp + 0x2f0]
mov rcx, rax
call fcn.14000ac30
or r13d, 2
mov dword [rbp + 0x250], r13d
lea rdx, str.process
mov rcx, rbx
call fcn.14000aa10
lea rdx, [rbp + 0x270]
mov rcx, rax
call fcn.14000ac30
or r13d, 1
mov dword [rbp + 0x250], r13d
lea rdx, [0x1400ece84]
mov rcx, rbx
call fcn.14000aa10
mov rcx, rax
call fcn.14000ab50
movzx edi, al
lea rdx, [0x1400ee9c0]
mov rcx, rbx
call fcn.14000aa10
cmp byte [rax], 4
jne 0x140021619
movzx ecx, byte [rax + 8]
mov rsi, qword [rsi]
mov byte [rsp + 0x60], cl
mov byte [rsp + 0x61], dil
xorps xmm0, xmm0
movups xmmword [rsp + 0x68], xmm0
mov qword [rsp + 0x78], r14
mov qword [rbp - 0x80], r14
mov rdi, qword [rbp + 0x300]
lea r14, [rbp + 0x2f0]
cmp qword [rbp + 0x308], 0xf
cmova r14, qword [rbp + 0x2f0]
cmp rdi, r15
ja 0x140021613
cmp rdi, 0xf
ja 0x140020cd1
mov qword [rsp + 0x78], rdi
mov qword [rbp - 0x80], recv
movups xmm0, xmmword [r14]
movups xmmword [rsp + 0x68], xmm0
jmp 0x140020d65
mov rbx, rdi
or rbx, 0xf
cmp rbx, r15
jbe 0x140020cf0
mov rbx, r15
movabs rax, 0x8000000000000000
add rax, 0x27
jmp 0x140020d20
cmp rbx, 0x16
mov eax, socket
cmovb rbx, rax
lea rcx, [rbx + 1]
test rcx, rcx
jne 0x140020d0a
xor eax, eax
jmp 0x140020d47
cmp rcx, 0x1000
jb 0x140020d42
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x1400215ef
mov rcx, rax
call fcn.1400a3930
mov rcx, rax
test rax, rax
je 0x1400215e9
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x140020d47
call fcn.1400a3930
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x78], rdi
mov qword [rbp - 0x80], rbx
lea r8, [rdi + 1]
mov rdx, r14
mov rcx, rax
call fcn.1400ce550
nop
mov rdx, r12
lea rcx, [rbp - 0x78]
call fcn.1400084d0
nop
xorps xmm0, xmm0
movups xmmword [rbp - 0x58], xmm0
xor eax, eax
mov qword [rbp - 0x48], rax
mov qword [rbp - 0x40], rax
mov rdi, qword [rbp + 0x280]
lea r14, [rbp + 0x270]
cmp qword [rbp + 0x288], 0xf
cmova r14, qword [rbp + 0x270]
cmp rdi, r15
ja 0x14002160d
cmp rdi, 0xf
ja 0x140020dc9
mov qword [rbp - 0x48], rdi
mov qword [rbp - 0x40], recv
movups xmm2, xmmword [r14]
movups xmmword [rbp - 0x58], xmm2
jmp 0x140020e5a
mov rbx, rdi
or rbx, 0xf
cmp rbx, r15
jbe 0x140020de8
mov rbx, r15
movabs rax, 0x8000000000000000
add rax, 0x27
jmp 0x140020e14
cmp rbx, 0x16
mov ecx, socket
cmovb rbx, rcx
lea rcx, [rbx + 1]
test rcx, rcx
je 0x140020e3b
cmp rcx, 0x1000
jb 0x140020e36
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x1400215fb
mov rcx, rax
call fcn.1400a3930
mov rcx, rax
test rax, rax
je 0x1400215f5
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x140020e3b
call fcn.1400a3930
mov qword [rbp - 0x58], rax
mov qword [rbp - 0x48], rdi
mov qword [rbp - 0x40], rbx
lea r8, [rdi + 1]
mov rdx, r14
mov rcx, rax
call fcn.1400ce550
movups xmm2, xmmword [rbp - 0x58]
mov rdx, qword [rsi + 0x78]
cmp rdx, qword [rsi + 0x80]
je 0x140020ee0
movzx eax, byte [rsp + 0x60]
mov byte [rdx], al
movzx eax, byte [rsp + 0x61]
mov byte [rdx + 1], al
xor r14d, r14d
movups xmm0, xmmword [rsp + 0x68]
movups xmmword [rdx + 8], xmm0
movups xmm1, xmmword [rsp + 0x78]
movups xmmword [rdx + 0x18], xmm1
mov qword [rsp + 0x78], r14
mov qword [rbp - 0x80], recv
mov byte [rsp + 0x68], r14b
movups xmm0, xmmword [rbp - 0x78]
movups xmmword [rdx + 0x28], xmm0
movups xmm1, xmmword [rbp - 0x68]
movups xmmword [rdx + 0x38], xmm1
mov qword [rbp - 0x68], r14
mov qword [rbp - 0x60], recv
mov byte [rbp - 0x78], r14b
movups xmmword [rdx + 0x48], xmm2
movups xmm0, xmmword [rbp - 0x48]
movups xmmword [rdx + 0x58], xmm0
mov qword [rbp - 0x48], r14
mov qword [rbp - 0x40], recv
mov byte [rbp - 0x58], r14b
add qword [rsi + 0x78], 0x68
jmp 0x140020ef1
lea r8, [rsp + 0x60]
lea rcx, [rsi + 0x70]
call fcn.140024880
xor r14d, r14d
lea rcx, [rsp + 0x60]
call fcn.140001680
nop
mov rdx, qword [rbp + 0x288]
cmp rdx, 0xf
jbe 0x140020f3d
inc rdx
mov rcx, qword [rbp + 0x270]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140020f38
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140021601
call fcn.1400a3bac
mov qword [rbp + 0x280], r14
mov qword [rbp + 0x288], socket
mov byte [rbp + 0x270], 0
mov rdx, qword [rbp + 0x308]
cmp rdx, 0xf
jbe 0x140020f97
inc rdx
mov rcx, qword [rbp + 0x2f0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140020f92
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140021607
call fcn.1400a3bac
mov rdx, qword [rbp + 0x360]
movzx ecx, byte [rdx]
sub ecx, 1
je 0x140020fbe
cmp ecx, 1
je 0x140020fb4
inc qword [rbp + 0x380]
jmp 0x140021013
add qword [rbp + 0x370], 0x10
jmp 0x140021013
mov rcx, qword [rbp + 0x368]
mov rax, qword [rcx + 0x10]
cmp byte [rax + 0x19], 0
je 0x140020ff5
mov rax, qword [rcx + 8]
cmp byte [rax + 0x19], 0
jne 0x14002100c
nop dword [rax]
cmp rcx, qword [rax + 0x10]
jne 0x14002100c
mov rcx, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x19], 0
je 0x140020fe0
jmp 0x14002100c
mov rcx, qword [rax]
cmp byte [rcx + 0x19], 0
jne 0x14002100c
nop
mov rax, rcx
mov rcx, qword [rcx]
cmp byte [rcx + 0x19], 0
je 0x140021000
mov qword [rbp + 0x368], rax
inc qword [rbp + 0x388]
cmp rdx, qword [rbp + 0x3e0]
jne 0x1400216c3
mov rsi, qword [rsp + 0x50]
jmp 0x140020b80
lea rcx, [rbp + 0x3e0]
call fcn.140006290
nop
lea rcx, [rbp + 0x360]
call fcn.140006290
mov rcx, qword [rsi]
add rcx, 0x130
cmp byte [rbp + 0x2b8], 3
jne 0x140021669
mov rdx, qword [rbp + 0x2c0]
mov r8, rdx
cmp qword [rdx + 0x18], 0xf
jbe 0x140021075
mov rdx, qword [rdx]
mov r8, qword [r8 + 0x10]
call fcn.14000a2d0
mov rdx, qword [rsi]
add rdx, 0x130
lea rcx, [rbp + 0x2f0]
call fcn.1400084d0
mov rbx, rax
mov rdx, qword [rax + 0x18]
cmp rdx, 0xf
jbe 0x1400210d1
mov rcx, qword [rax]
inc rdx
cmp rdx, 0x1000
jb 0x1400210cc
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x1400216bd
mov rcx, r8
call fcn.1400a3bac
mov qword [rbx + 0x10], r14
mov qword [rbx + 0x18], recv
mov byte [rbx], 0
mov rax, qword [rsi]
mov dword [rax + 0x18], 3
mov dl, 3
lea rcx, [rbp + 0x2c0]
call fcn.140009360
nop
movzx edx, byte [rbp + 0x240]
lea rcx, [rbp + 0x248]
call fcn.140009360
mov r12, qword [rsp + 0x48]
movzx edx, byte [rbp + 0x258]
lea rcx, [rbp + 0x260]
call fcn.140009360
jmp 0x14002079f
cmp al, 8
jne 0x140021340
mov qword [rbp + 0x328], r14
lea r8, [rbp + 0x2f0]
lea rdx, [rbp + 0x298]
lea rcx, [rbp + 0x258]
call fcn.14000a8f0
nop
lea rdx, [0x1400ee9c4]
lea rcx, [rbp + 0x258]
call fcn.14000aa10
xor edx, edx
mov rcx, rax
call fcn.140023570
movzx edx, byte [rax]
mov r8d, edx
sub r8d, 5
je 0x1400211d2
sub r8d, 1
je 0x1400211c2
cmp r8d, 1
jne 0x1400216ff
add rax, 8
cmp dl, 7
cmovne rax, r14
xor edx, edx
movsd xmm0, qword [rax]
movsd xmm1, qword [0x1400ef688]
comisd xmm0, xmm1
jb 0x1400211b8
subsd xmm0, xmm1
comisd xmm0, xmm1
jae 0x1400211b8
mov rdx, r13
cvttsd2si rcx, xmm0
add rcx, rdx
jmp 0x1400211e4
add rax, 8
cmp dl, 6
cmovne rax, r14
mov rcx, qword [rax]
jmp 0x1400211e4
sub dl, 5
cmp dl, 1
mov rcx, r14
ja 0x1400211e1
lea rcx, [rax + 8]
mov rcx, qword [rcx]
mov rax, qword [rsi]
mov qword [rax + 0x28], rcx
lea rdx, [0x1400ee9c4]
lea rcx, [rbp + 0x258]
call fcn.14000aa10
mov edx, 1
mov rcx, rax
call fcn.140023570
movzx r8d, byte [rax]
mov edx, r8d
sub edx, 4
je 0x140021262
sub edx, 1
je 0x14002124d
sub edx, 1
je 0x14002123d
cmp edx, 1
jne 0x14002174f
add rax, 8
cmp r8b, 7
cmovne rax, r14
cvttsd2si rcx, qword [rax]
jmp 0x140021271
add rax, 8
cmp r8b, 6
cmovne rax, r14
mov ecx, dword [rax]
jmp 0x140021271
sub r8b, 5
cmp r8b, 1
mov rcx, r14
ja 0x14002125e
lea rcx, [rax + 8]
mov ecx, dword [rcx]
jmp 0x140021271
add rax, 8
cmp r8b, 4
cmovne rax, r14
movzx ecx, byte [rax]
mov rax, qword [rsi]
mov dword [rax + 0x30], ecx
lea rdx, str.size
lea rcx, [rbp + 0x258]
call fcn.14000aa10
mov rcx, rax
call fcn.1400246c0
mov edi, eax
mov rcx, qword [rsi]
lea rbx, [rcx + 0x38]
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x270], xmm1
mov qword [rbp + 0x280], r14
lea rdx, [rbp + 0x270]
call fcn.140001b20
mov esi, eax
mov r8, qword [rbp + 0x278]
mov rdx, qword [rbp + 0x270]
sub r8, rdx
mov rcx, rbx
call fcn.14000a2d0
nop
mov rcx, qword [rbp + 0x270]
test rcx, rcx
je 0x140021315
mov rdx, qword [rbp + 0x280]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x140021310
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002179f
call fcn.1400a3bac
cmp esi, edi
jne 0x140021328
mov rax, qword [rsp + 0x50]
mov rax, qword [rax]
mov dword [rax + 0x18], 4
movzx edx, byte [rbp + 0x258]
lea rcx, [rbp + 0x260]
call fcn.140009360
jmp 0x1400207a9
cmp al, 9
jne 0x14002136b
mov rcx, qword [rsi]
lea rdx, [rcx + 0x58]
call fcn.140001b20
mov rcx, qword [rsi]
cdqe
cmp rax, qword [rcx + 0x28]
jne 0x1400207a9
mov dword [rcx + 0x18], 6
jmp 0x1400207a9
cmp al, 7
jne 0x1400207ae
mov rax, qword [rsi]
mov dword [rax + 0x18], 8
mov rbx, qword [rsi]
mov eax, r14d
xchg byte [rbx + 4], al
cmp qword [rbx + 8], 0
je 0x1400213bc
movsxd rcx, dword [rbx]
call qword [sym.imp.WS2_32.dll_closesocket]
mov rcx, qword [rbx + 8]
call fcn.1400640b0
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x1400213ad
call fcn.14006bfb0
mov dword [rbx], 0xffffffff
mov qword [rbx + 8], r14
mov r12, qword [rsp + 0x48]
mov rdx, qword [rbp + 0x2b0]
cmp rdx, 0xf
jbe 0x14002156e
inc rdx
mov rcx, qword [rbp + 0x298]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140021569
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400215bf
jmp 0x140021569
mov rax, rbx
or rax, 0xf
cmp rax, r15
jbe 0x140021437
lea rax, [r13 + 0x27]
mov rcx, rax
call fcn.1400a3930
mov rcx, rax
test rax, rax
je 0x1400217a5
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x14002146d
cmp rax, 0x16
cmovb rax, rcx
mov r15, rax
lea rcx, [rax + 1]
test rcx, rcx
jne 0x140021450
mov rax, r14
jmp 0x14002146d
cmp rcx, 0x1000
jb 0x140021468
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x1400215c5
jmp 0x140021415
call fcn.1400a3930
mov qword [rbp + 0x270], rax
mov qword [rbp + 0x280], rbx
mov qword [rbp + 0x288], r15
lea r8, [rbx + 1]
mov rdx, rdi
mov rcx, rax
call fcn.1400ce550
nop
lea rdx, [r12 + 0x28]
lea rcx, [rbp + 0x2f0]
call fcn.1400084d0
mov rbx, rax
mov rdx, qword [rax + 0x18]
cmp rdx, 0xf
jbe 0x1400214e0
mov rcx, qword [rax]
inc rdx
cmp rdx, 0x1000
jb 0x1400214db
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x1400217a5
mov rcx, r8
call fcn.1400a3bac
mov qword [rbx + 0x10], r14
mov qword [rbx + 0x18], recv
mov byte [rbx], 0
mov rdx, qword [rbp + 0x288]
cmp rdx, 0xf
jbe 0x140021531
inc rdx
mov rcx, qword [rbp + 0x270]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002152b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400217a5
call fcn.1400a3bac
nop
mov rdx, qword [rbp + 0x2b0]
cmp rdx, 0xf
jbe 0x14002156e
inc rdx
mov rcx, qword [rbp + 0x298]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140021569
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400215b9
call fcn.1400a3bac
mov qword [rbp + 0x2a8], r14
mov qword [rbp + 0x2b0], socket
mov byte [rbp + 0x298], 0
mov rcx, r12
call fcn.140004800
mov rcx, qword [rbp + 0x460]
xor rcx, rsp
call fcn.1400a3910
mov rbx, qword [rsp + 0x5c0]
add rsp, 0x570
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.1400a9bb4
nop
call fcn.1400a9bb4
nop
call fcn.140001320
nop
call fcn.1400a9bb4
nop
call fcn.1400a9bb4
nop
call fcn.1400a9bb4
int3
call fcn.1400a9bb4
nop
call fcn.1400013c0
nop
call fcn.1400a9bb4
int3
call fcn.140001320
nop
call fcn.1400a9bb4
int3
call fcn.140001320
nop
call fcn.1400a9bb4
nop
call fcn.1400a9bb4
nop
call fcn.1400013c0
nop
call fcn.1400013c0
int3
mov rcx, rax
call fcn.1400098f0
mov rdx, rax
lea rcx, [rbp - 0x30]
call fcn.140001780
nop
mov r8, rax
lea rdx, str.type_must_be_boolean__but_is
lea rcx, [rbp + 0x330]
call fcn.14000a7c0
nop
mov r8, rax
mov edx, 0x12e
lea rcx, [rsp + 0x60]
call fcn.1400032e0
lea rdx, [0x140102ac8]
lea rcx, [rsp + 0x60]
call fcn.1400a5c38
nop
lea rcx, [rbp + 0x2b8]
call fcn.1400098f0
mov rdx, rax
lea rcx, [rbp + 0x330]
call fcn.140001780
nop
mov r8, rax
lea rdx, [0x1400df3d8]
lea rcx, [rbp - 0x30]
call fcn.14000a7c0
nop
mov r8, rax
mov edx, 0x12e
lea rcx, [rsp + 0x60]
call fcn.1400032e0
lea rdx, [0x140102ac8]
lea rcx, [rsp + 0x60]
call fcn.1400a5c38
nop
call fcn.1400a9bb4
nop
lea rdx, str.cannot_compare_iterators_of_different_containers
lea rcx, [rbp + 0x2f0]
call fcn.140001780
nop
lea r8, [rbp + 0x2f0]
mov edx, 0xd4
lea rcx, [rsp + 0x60]
call fcn.1400030e0
lea rdx, [0x1401029c8]
lea rcx, [rsp + 0x60]
call fcn.1400a5c38
nop
mov rcx, rax
call fcn.1400098f0
mov rdx, rax
lea rcx, [rbp + 0x330]
call fcn.140001780
nop
mov r8, rax
lea rdx, [0x1400e01a0]
lea rcx, [rbp - 0x30]
call fcn.14000a7c0
nop
mov r8, rax
mov edx, 0x12e
lea rcx, [rsp + 0x60]
call fcn.1400032e0
lea rdx, [0x140102ac8]
lea rcx, [rsp + 0x60]
call fcn.1400a5c38
nop
mov rcx, rax
call fcn.1400098f0
mov rdx, rax
lea rcx, [rbp + 0x330]
call fcn.140001780
nop
mov r8, rax
lea rdx, [0x1400e0160]
lea rcx, [rbp - 0x30]
call fcn.14000a7c0
nop
mov r8, rax
mov edx, 0x12e
lea rcx, [rsp + 0x60]
call fcn.1400032e0
lea rdx, [0x140102ac8]
lea rcx, [rsp + 0x60]
call fcn.1400a5c38
nop
call fcn.1400a9bb4
nop
call fcn.1400a9bb4
int3