Function at 0x180053350
Capabilities:
Connect to http server
Create http request
Read data from internet
Receive data
Send data
Send http request

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x10], rdx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x10a0]
mov eax, 0x11a0
call fcn.1800da820
sub rsp, rax
movaps xmmword [rsp + 0x1190], xmm6
mov rdi, r9
mov r15, r8
mov r14, rdx
mov rsi, rcx
xor r12d, r12d
mov dword [rsp + 0x20], r12d
xor r9d, r9d
xor r8d, r8d
lea edx, [r12 + 1]
lea rcx, [0x180184f48]
call qword [sym.imp.WININET.dll_InternetOpenW]
mov r13, rax
mov qword [rbp - 0x40], rax
test rax, rax
jne 0x18005341a
mov dword [r14], r12d
lea rcx, [r14 + 8]
call fcn.18005a6e0
mov qword [r14 + 0x20], r12
mov qword [r14 + 0x28], r12
mov qword [r14 + 0x30], r12
mov rdx, qword [rdi + 0x18]
cmp rdx, 0xf
jbe 0x180053411
inc rdx
mov rcx, qword [rdi]
cmp rdx, 0x1000
jb 0x18005340c
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x180053bb1
mov rcx, r8
call fcn.1800d9c4c
mov qword [rdi + 0x10], r12
jmp 0x180053b7a
lea rbx, [rsi + 0x70]
mov rdx, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x18005342b
mov rdx, qword [rbx]
mov r8d, 0x1bb
mov qword [rsp + 0x38], r12
mov dword [rsp + 0x30], r12d
mov dword [rsp + 0x28], 3
lea r9, [0x1801402c0]
mov qword [rsp + 0x20], r9
mov rcx, r13
call qword [sym.imp.WININET.dll_InternetConnectA]
mov r12, rax
mov qword [rbp - 0x68], rax
cmp qword [rbx + 0x18], 0xf
jbe 0x180053469
mov rbx, qword [rbx]
mov rcx, rbx
call qword [sym.imp.WININET.dll_DeleteUrlCacheEntryA]
test r12, r12
jne 0x1800534dd
mov rcx, r13
call qword [sym.imp.WININET.dll_InternetCloseHandle]
xor ebx, ebx
mov dword [r14], ebx
lea rcx, [r14 + 8]
call fcn.18005a6e0
mov qword [r14 + 0x30], rbx
mov qword [r14 + 0x28], rbx
mov qword [r14 + 0x20], rbx
mov rdx, qword [rdi + 0x18]
cmp rdx, 0xf
jbe 0x1800534d4
inc rdx
cmp rdx, 0x1000
mov rcx, qword [rdi]
jb 0x1800534cf
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x180053bb1
mov rcx, r8
call fcn.1800d9c4c
mov qword [rdi + 0x10], rbx
jmp 0x180053b7a
lea r8, [rsi + 0xb0]
cmp qword [r8 + 0x18], 0xf
jbe 0x1800534ee
mov r8, qword [r8]
cmp qword [r15 + 0x18], 0xf
jbe 0x1800534f8
mov r15, qword [r15]
xor ebx, ebx
mov qword [rsp + 0x38], rbx
mov dword [rsp + 0x30], 0x84880100
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rbx
xor r9d, r9d
mov rdx, r15
mov rcx, r12
call qword [sym.imp.WININET.dll_HttpOpenRequestA]
mov r12, rax
mov qword [rsp + 0x58], rax
test rax, rax
jne 0x180053545
mov rcx, qword [rbp - 0x68]
call qword [sym.imp.WININET.dll_InternetCloseHandle]
mov rcx, r13
call qword [sym.imp.WININET.dll_InternetCloseHandle]
jmp 0x180053482
mov r15d, ebx
mov r13, qword [rbp + 0x1100]
nop
mov rbx, qword [r13 + 8]
sub rbx, qword [r13]
mov rcx, r13
call fcn.18005a4a0
mov rdx, rdi
cmp qword [rdi + 0x18], 0xf
jbe 0x18005356d
mov rdx, qword [rdi]
mov dword [rsp + 0x20], ebx
mov r9, rax
mov r8d, 0xffffffff
mov rcx, r12
call qword [sym.imp.WININET.dll_HttpSendRequestA]
test eax, eax
jne 0x1800535b7
call qword [sym.imp.USER32.dll_GetDesktopWindow]
mov rcx, rax
mov qword [rsp + 0x20], 0
mov r9d, 7
mov r8d, 0x2f0c
mov rdx, r12
call qword [sym.imp.WININET.dll_InternetErrorDlg]
inc r15d
cmp r15d, 5
jle 0x180053550
xor r15d, r15d
mov dword [rsp + 0x60], r15d
mov dword [rbp - 0x70], 4
mov qword [rsp + 0x20], r15
lea r9, [rbp - 0x70]
lea r8, [rsp + 0x60]
mov edx, 0x20000013
mov rcx, r12
call qword [sym.imp.WININET.dll_HttpQueryInfoW]
mov eax, dword [rsp + 0x60]
mov dword [rsi + 0x10], eax
mov dword [rsp + 0x50], r15d
mov qword [rsp + 0x20], r15
lea r9, [rsp + 0x50]
xor r8d, r8d
lea edx, [r15 + 0x16]
mov rcx, r12
call qword [sym.imp.WININET.dll_HttpQueryInfoA]
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x7a
jne 0x180053a35
mov ebx, dword [rsp + 0x50]
add ebx, 0x64
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x60], xmm0
mov r13d, r15d
mov qword [rbp - 0x50], r15
je 0x180053658
mov edx, ebx
lea rcx, [rbp - 0x60]
call fcn.18000a780
mov r8d, ebx
xor edx, edx
mov r12, qword [rbp - 0x60]
mov rcx, r12
call fcn.18010bdb0
add rbx, r12
mov qword [rbp - 0x58], rbx
mov r13, qword [rbp - 0x50]
jmp 0x180053660
mov rbx, qword [rbp - 0x58]
mov r12, qword [rbp - 0x60]
mov qword [rsp + 0x20], r15
lea r9, [rsp + 0x50]
mov r8, r12
mov edx, socket
mov rcx, qword [rsp + 0x58]
call qword [sym.imp.WININET.dll_HttpQueryInfoA]
test eax, eax
je 0x1800539f7
mov r8, rbx
mov rdx, r12
lea rcx, [rbp + 8]
call fcn.180008980
nop
lea rax, [rbp - 0x38]
mov qword [rsp + 0x68], rax
movsd xmm0, qword [str.vXV]
movsd qword [rsp + 0x40], xmm0
movzx ecx, word [0x1801850d0]
mov word [rsp + 0x48], cx
movzx eax, byte [0x1801850d2]
mov byte [rsp + 0x40], 0x46
xor byte [rsp + 0x41], 0x31
xor byte [rsp + 0x42], 0x32
xor byte [rsp + 0x43], 0x33
xor byte [rsp + 0x44], 0x34
xor byte [rsp + 0x45], 0x35
xor byte [rsp + 0x46], 0x36
xor byte [rsp + 0x47], 0x37
xor cl, 0x38
mov byte [rsp + 0x48], cl
xor byte [rsp + 0x49], 0x39
xor al, 0x3a
mov byte [rsp + 0x4a], al
xorps xmm0, xmm0
movups xmmword [rbp - 0x38], xmm0
mov qword [rbp - 0x28], r15
mov qword [rbp - 0x20], r15
lea rax, [rsp + 0x40]
mov r15, 0xffffffffffffffff
mov r8, r15
nop word [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x180053720
lea rdx, [rsp + 0x40]
lea rcx, [rbp - 0x38]
call fcn.1800091f0
nop
lea rdx, [rbp + 8]
lea rcx, [rbp + 0x48]
call fcn.180007de0
nop
lea r9, [rbp - 0x38]
mov r8, rax
lea rdx, [rsp + 0x70]
call fcn.180053c00
nop
cmp qword [rbp - 0x80], 0
je 0x1800537b6
call fcn.1800e5bec
mov qword [rsp + 0x68], rax
lea rbx, [rsp + 0x70]
cmp qword [rbp - 0x78], 0xf
cmova rbx, qword [rsp + 0x70]
mov dword [rax], 0
mov r8d, 0xa
lea rdx, [rsp + 0x40]
mov rcx, rbx
call fcn.1800e5780
cmp rbx, qword [rsp + 0x40]
je 0x180053bb7
mov rcx, qword [rsp + 0x68]
cmp dword [rcx], 0x22
je 0x180053bc4
mov dword [rsi], eax
add eax, 0x3e8
mov dword [rsi + 8], eax
lea rax, [rbp - 0x18]
mov qword [rsp + 0x68], rax
movsd xmm0, qword [str.tPFR]
movsd qword [rsp + 0x40], xmm0
movzx ecx, word [0x180185040]
mov word [rsp + 0x48], cx
movzx eax, byte [0x180185042]
mov byte [rsp + 0x40], 0x44
xor byte [rsp + 0x41], 0x31
xor byte [rsp + 0x42], 0x32
xor byte [rsp + 0x43], 0x33
xor byte [rsp + 0x44], 0x34
xor byte [rsp + 0x45], 0x35
xor byte [rsp + 0x46], 0x36
xor byte [rsp + 0x47], 0x37
xor cl, 0x38
mov byte [rsp + 0x48], cl
xor byte [rsp + 0x49], 0x39
xor al, 0x3a
mov byte [rsp + 0x4a], al
xorps xmm0, xmm0
movups xmmword [rbp - 0x18], xmm0
xor eax, eax
mov qword [rbp - 8], rax
mov qword [rbp], rax
lea rax, [rsp + 0x40]
inc r15
cmp byte [rax + r15], 0
jne 0x180053830
mov r8, r15
lea rdx, [rsp + 0x40]
lea rcx, [rbp - 0x18]
call fcn.1800091f0
nop
lea rdx, [rbp + 8]
lea rcx, [rbp + 0x68]
call fcn.180007de0
nop
lea r9, [rbp - 0x18]
mov r8, rax
lea rdx, [rbp + 0x28]
call fcn.180053c00
mov rbx, rax
lea rax, [rsp + 0x70]
cmp rax, rbx
je 0x1800538e3
mov rdx, qword [rbp - 0x78]
cmp rdx, 0xf
jbe 0x1800538b3
inc rdx
mov rcx, qword [rsp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800538ae
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180053bd1
call fcn.1800d9c4c
xor eax, eax
mov qword [rbp - 0x80], rax
mov qword [rbp - 0x78], send
mov byte [rsp + 0x70], al
movups xmm0, xmmword [rbx]
movups xmmword [rsp + 0x70], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rbp - 0x80], xmm1
mov qword [rbx + 0x10], rax
mov qword [rbx + 0x18], send
mov byte [rbx], al
mov rdx, qword [rbp + 0x40]
cmp rdx, 0xf
jbe 0x18005391e
inc rdx
mov rcx, qword [rbp + 0x28]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180053919
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180053bd1
call fcn.1800d9c4c
cmp qword [rbp - 0x80], 0
je 0x18005396b
call fcn.1800e5bec
mov r15, rax
lea rbx, [rsp + 0x70]
cmp qword [rbp - 0x78], 0xf
cmova rbx, qword [rsp + 0x70]
mov dword [rax], 0
mov r8d, 0xa
lea rdx, [rsp + 0x68]
mov rcx, rbx
call fcn.1800e5780
cmp rbx, qword [rsp + 0x68]
je 0x180053bd7
cmp dword [r15], 0x22
je 0x180053be4
mov rdx, qword [rbp - 0x78]
cmp rdx, 0xf
jbe 0x1800539a7
inc rdx
mov rcx, qword [rsp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800539a2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180053bf1
call fcn.1800d9c4c
xor r15d, r15d
mov qword [rbp - 0x80], r15
mov qword [rbp - 0x78], send
mov byte [rsp + 0x70], r15b
mov rdx, qword [rbp + 0x20]
cmp rdx, 0xf
jbe 0x1800539f7
inc rdx
mov rcx, qword [rbp + 8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800539f1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180053bf7
call fcn.1800d9c4c
nop
test r12, r12
je 0x180053a30
sub r13, r12
mov rax, r12
cmp r13, 0x1000
jb 0x180053a25
add r13, 0x27
mov r12, qword [r12 - 8]
sub rax, r12
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180053bab
mov rdx, r13
mov rcx, r12
call fcn.1800d9c4c
mov r12, qword [rsp + 0x58]
lea rdx, [fcn.180003590]
mov rcx, r12
call qword [sym.imp.WININET.dll_InternetSetStatusCallbackW]
xor edx, edx
mov r8d, 0x1000
lea rcx, [rbp + 0x90]
call fcn.18010bdb0
lea r9, [rsp + 0x58]
mov r8d, 0x1000
lea rdx, [rbp + 0x90]
mov rcx, r12
call qword [sym.imp.WININET.dll_InternetReadFile]
mov edx, dword [rsp + 0x58]
test edx, edx
je 0x180053b01
movss xmm6, dword [0x180187268]
test eax, eax
je 0x180053b01
mov eax, dword [rsi + 8]
test eax, eax
je 0x180053ab3
add dword [rsi + 0x48], edx
movd xmm1, dword [rsi + 0x48]
cvtdq2ps xmm1, xmm1
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
divss xmm1, xmm0
mulss xmm1, xmm6
movss dword [rsi + 4], xmm1
lea rcx, [rsi + 0x30]
mov r9d, edx
mov rdx, qword [rsi + 0x38]
lea r8, [rbp + 0x90]
call fcn.18001c8f0
xor edx, edx
mov r8d, 0x1000
lea rcx, [rbp + 0x90]
call fcn.18010bdb0
lea r9, [rsp + 0x58]
mov r8d, 0x1000
lea rdx, [rbp + 0x90]
mov rcx, r12
call qword [sym.imp.WININET.dll_InternetReadFile]
mov edx, dword [rsp + 0x58]
test edx, edx
jne 0x180053a88
mov rcx, r12
call qword [sym.imp.WININET.dll_InternetCloseHandle]
mov rcx, qword [rbp - 0x68]
call qword [sym.imp.WININET.dll_InternetCloseHandle]
mov rcx, qword [rbp - 0x40]
call qword [sym.imp.WININET.dll_InternetCloseHandle]
mov eax, dword [rsi + 0x10]
mov dword [r14], eax
lea rcx, [r14 + 8]
lea rdx, [rsi + 0x18]
call fcn.18005a610
nop
lea rcx, [r14 + 0x20]
lea rdx, [rsi + 0x30]
call fcn.180007650
nop
mov rdx, qword [rdi + 0x18]
cmp rdx, 0xf
jbe 0x180053b76
inc rdx
mov rcx, qword [rdi]
cmp rdx, 0x1000
jb 0x180053b71
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x180053bb1
mov rcx, r8
call fcn.1800d9c4c
mov qword [rdi + 0x10], r15
mov byte [rdi], 0
mov rax, r14
mov qword [rdi + 0x18], send
mov rbx, qword [rsp + 0x11e0]
movaps xmm6, xmmword [rsp + 0x1190]
add rsp, 0x11a0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.1800e5fb0
nop
call fcn.1800e5fb0
nop
lea rcx, str.invalid_stoul_argument
call fcn.1800d4260
int3
lea rcx, str.stoul_argument_out_of_range
call fcn.1800d42a8
int3
call fcn.1800e5fb0
int3
lea rcx, str.invalid_stoul_argument
call fcn.1800d4260
int3
lea rcx, str.stoul_argument_out_of_range
call fcn.1800d42a8
nop
call fcn.1800e5fb0
nop
call fcn.1800e5fb0
int3