Function at 0x1800a1ae0
Capabilities:
Receive data
Receive data on socket

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x878]
sub rsp, 0x978
mov qword [rbp - 0x40], 0xfffffffffffffffe
mov rax, qword [0x1801aed20]
xor rax, rsp
mov qword [rbp + 0x860], rax
mov edi, r9d
mov dword [rsp + 0x34], r9d
mov r12, r8
mov r13, rdx
mov qword [rbp - 0x68], rcx
xor eax, eax
mov r14d, eax
lea r15d, [rax + 0xa]
mov esi, eax
cmp byte [0x1801f3a4e], al
je 0x1800a1b45
mov ebx, 0x30d40
lea r15d, [rax + 5]
jmp 0x1800a1b4a
mov ebx, 0x493e0
mov edx, 0x300
mov ecx, r15d
call fcn.1800a2c30
mov eax, dword [0x1801ae050]
add eax, 0xfffffffe
cmp eax, 1
jbe 0x1800a1ff0
mov ecx, 0x4000
call fcn.1800dd380
mov qword [0x1801ae070], rax
test rax, rax
je 0x1800a1ff0
xor edx, edx
mov r8d, 0x4000
mov rcx, rax
call fcn.1800cf2b0
xor eax, eax
mov dword [0x1801ae078], eax
lea edx, [rax + 1]
mov rcx, qword [0x1801ae048]
call qword [sym.imp.WS2_32.dll_shutdown]
xor r9d, r9d
nop
test esi, esi
je 0x1800a1bc1
cmp r14d, 0x80090318
jne 0x1800a1c5c
mov eax, r15d
dec r15d
test eax, eax
je 0x1800a1c5c
mov r8d, edi
sub r8d, esi
movsxd rdx, esi
add rdx, r12
xor r9d, r9d
mov rcx, qword [0x1801ae048]
call qword [sym.imp.WS2_32.dll_recv]
cmp eax, 0xffffffff
jne 0x1800a1c4f
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
cmp eax, 0x2733
jne 0x1800a1ed8
movabs rax, 0x20c49ba5e353f7cf
imul rbx
sar rdx, 7
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov eax, 0
cmovs rdx, rax
lea rcx, [rbp - 0x10]
call fcn.180053bf8
movups xmm0, xmmword [rax]
movaps xmmword [rbp - 0x30], xmm0
movups xmm1, xmmword [rax + 0x10]
movaps xmmword [rbp - 0x20], xmm1
lea rdx, [rbp - 0x30]
or rcx, 0xffffffffffffffff
call fcn.1800c9470
jmp 0x1800a1bab
test eax, eax
je 0x1800a1fc2
add esi, eax
xor r9d, r9d
mov dword [rbp + 0x20], esi
mov dword [rbp + 0x24], 1
mov qword [rbp + 0x28], r12
mov qword [rbp + 0x30], 0
mov qword [rbp + 0x38], r9
mov qword [rbp + 0x40], 0
mov qword [rbp + 0x48], r9
mov qword [rbp + 0x50], 0
mov qword [rbp + 0x58], r9
mov dword [rbp + 0x10], r9d
lea rax, [rbp + 0x20]
mov qword [rbp + 0x18], rax
mov dword [rbp + 0x14], 4
mov rax, qword [0x1801f3ac0]
mov rdi, qword [rax + 0xd0]
mov rcx, rdi
call qword [fcn.18000e000]
xor r9d, r9d
xor r8d, r8d
lea rdx, [rbp + 0x10]
mov rcx, r13
call rdi
mov r14d, eax
cmp eax, 0x90317
je 0x1800a1fc6
cmp eax, 0x80090318
mov edi, dword [rsp + 0x34]
mov r9d, 0
je 0x1800a1bb0
test eax, eax
je 0x1800a1cf9
cmp eax, 0x90321
jne 0x1800a1ff0
cmp eax, 0x90321
jne 0x1800a1e2c
lea r8, str.Server_requested_renegotiate_
mov edx, 0x7ff
lea rcx, [rbp + 0x60]
call fcn.18000e038
call fcn.18003e228
xor edi, edi
cmp dword [rax + 0x20], 3
jl 0x1800a1de9
lea rax, [rsp + 0x58]
mov qword [rbp - 0x60], rax
lea rax, [rsp + 0x78]
mov qword [rbp - 0x58], rax
mov qword [rsp + 0x70], 7
mov qword [rsp + 0x68], rdi
mov word [rsp + 0x58], di
lea r8d, [rdi + 0x1d]
lea rdx, str.gridInterfaceHttpsWindows.cpp
lea rcx, [rsp + 0x58]
call fcn.18001eca0
nop
mov qword [rbp - 0x70], 7
mov qword [rbp - 0x78], rdi
mov word [rsp + 0x78], di
lea r8d, [rdi + 0xb]
lea rdx, str.readDecrypt
lea rcx, [rsp + 0x78]
call fcn.18001eca0
nop
lea rax, [rsp + 0x30]
mov qword [rbp - 0x48], rax
lea rax, [rbp + 0x60]
mov qword [rsp + 0x38], rax
lea rax, [rbp - 0x50]
mov qword [rsp + 0x40], rax
lea rax, vtable.Nvidia::Logging::ChainLoggable_class_Nvidia::Logging::Chain_char_const_____2048____ptr64__class_Nvidia::Logging::Chain_struct_Nvidia::Logging::NullType__struct_Nvidia::Logging::NullType___.0
mov qword [rsp + 0x48], rax
lea rax, [rsp + 0x38]
mov qword [rsp + 0x50], rax
call fcn.18003e228
mov rcx, rax
lea rax, [rsp + 0x58]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x5f6
lea r9, [rsp + 0x78]
lea r8, [rsp + 0x48]
lea edx, [rdi + 3]
call fcn.180019ae4
xor r8d, r8d
mov rdx, r13
mov rcx, qword [rbp - 0x68]
call fcn.18009dbe0
mov r14d, eax
test eax, eax
jne 0x1800a1ff0
mov esi, edi
xor edx, edx
mov r8d, 0x4000
mov rcx, qword [0x1801ae070]
call fcn.1800cf2b0
xor r9d, r9d
mov dword [0x1801ae078], r9d
mov edi, dword [rsp + 0x34]
jmp 0x1800a1bb0
mov rax, r9
mov rdi, r9
lea rcx, [rbp + 0x34]
lea rdx, [rbp + 0x30]
mov r8d, 3
test rax, rax
jne 0x1800a1e4c
cmp dword [rcx], 1
cmove rax, rdx
test rdi, rdi
jne 0x1800a1e58
cmp dword [rcx], 5
cmove rdi, rdx
add rdx, 0x10
add rcx, 0x10
sub r8, 1
jne 0x1800a1e40
test rax, rax
je 0x1800a1ead
mov ecx, dword [rax]
test ecx, ecx
je 0x1800a1ead
mov r8, qword [rax + 8]
jle 0x1800a1ead
mov r9d, ecx
mov r10, qword [0x1801ae070]
mov edx, dword [0x1801ae078]
nop word [rax + rax]
movsxd rcx, edx
movzx eax, byte [r8]
mov byte [rcx + r10], al
inc edx
lea r8, [r8 + 1]
sub r9, 1
jne 0x1800a1e90
mov dword [0x1801ae078], edx
test rdi, rdi
je 0x1800a1ecc
mov r8d, dword [rdi]
mov rdx, qword [rdi + 8]
mov rcx, r12
call fcn.1800ceb80
mov esi, dword [rdi]
mov edi, dword [rsp + 0x34]
jmp 0x1800a1bab
mov esi, r9d
mov edi, dword [rsp + 0x34]
jmp 0x1800a1bb0
mov r9d, eax
lea r8, str.Failed_to_read_socket___d_
mov edx, 0x7ff
lea rcx, [rbp + 0x60]
call fcn.18000e038
call fcn.18003e228
xor ebx, ebx
cmp dword [rax + 0x20], 3
jl 0x1800a1fc8
lea rax, [rsp + 0x78]
mov qword [rbp - 0x58], rax
lea rax, [rsp + 0x58]
mov qword [rbp - 0x60], rax
mov qword [rbp - 0x70], 7
mov qword [rbp - 0x78], rbx
mov word [rsp + 0x78], bx
lea r8d, [rbx + 0x1d]
lea rdx, str.gridInterfaceHttpsWindows.cpp
lea rcx, [rsp + 0x78]
call fcn.18001eca0
nop
mov qword [rsp + 0x70], 7
mov qword [rsp + 0x68], rbx
mov word [rsp + 0x58], bx
lea r8d, [rbx + 0xb]
lea rdx, str.readDecrypt
lea rcx, [rsp + 0x58]
call fcn.18001eca0
nop
lea rax, [rsp + 0x30]
mov qword [rbp - 0x48], rax
lea rax, [rbp + 0x60]
mov qword [rsp + 0x48], rax
lea rax, [rbp - 0x50]
mov qword [rsp + 0x50], rax
lea rax, vtable.Nvidia::Logging::ChainLoggable_class_Nvidia::Logging::Chain_char_const_____2048____ptr64__class_Nvidia::Logging::Chain_struct_Nvidia::Logging::NullType__struct_Nvidia::Logging::NullType___.0
mov qword [rsp + 0x38], rax
lea rax, [rsp + 0x48]
mov qword [rsp + 0x40], rax
call fcn.18003e228
mov rcx, rax
lea rax, [rsp + 0x78]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x5c3
lea r9, [rsp + 0x58]
lea r8, [rsp + 0x38]
lea edx, [rbx + 3]
call fcn.180019ae4
jmp 0x1800a1fc8
test esi, esi
jne 0x1800a1ff0
xor ebx, ebx
mov rcx, qword [0x1801ae048]
cmp rcx, 0xfffffffffffffffe
je 0x1800a1fec
call qword [sym.imp.WS2_32.dll_closesocket]
mov qword [0x1801ae048], 0xfffffffffffffffe
mov dword [0x1801ae050], ebx
mov al, 1
jmp 0x1800a1ff2
xor al, al
mov rcx, qword [rbp + 0x860]
xor rcx, rsp
call fcn.1800a6240
add rsp, 0x978
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret