Function at 0x18001cf60
Capabilities:
Check http status code
Connect to http server
Create http request
Parse url
Read data from internet
Receive data
Reference http user-agent string
Send data
Send http request

Disassembly:
push rbp
push rdi
lea rbp, [rsp - 0x68b8]
mov eax, 0x69b8
call fcn.1800401b0
sub rsp, rax
mov rax, qword [0x1800bb120]
xor rax, rsp
mov qword [rbp + 0x6890], rax
mov rdi, rcx
test rcx, rcx
jne 0x18001cf99
or eax, 0xffffffff
jmp 0x18001d775
xor eax, eax
mov qword [rsp + 0x69e0], rsi
mov qword [rsp + 0x69a8], r14
lea rcx, [rbp + 0x30]
xor r14d, r14d
mov qword [rsp + 0x69a0], r15
xor edx, edx
mov dword [rsp + 0x5c], r14d
mov r8d, 0x208
mov word [rbp + 0x10], r14w
mov esi, r14d
mov qword [rbp + 0x12], rax
mov r15d, r14d
mov qword [rbp + 0x1a], rax
mov qword [rbp + 0x22], rax
mov dword [rbp + 0x2a], eax
mov word [rbp + 0x2e], ax
call fcn.18005f7c0
xor edx, edx
lea rcx, [rbp + 0x440]
mov r8d, 0x208
call fcn.18005f7c0
xor edx, edx
lea rcx, [rbp + 0x650]
mov r8d, 0x208
call fcn.18005f7c0
xor edx, edx
lea rcx, [rbp + 0x2880]
mov r8d, 0x2000
call fcn.18005f7c0
xor edx, edx
mov dword [rsp + 0x58], r14d
lea r8d, [r14 + 0x68]
lea rcx, [rbp - 0x80]
call fcn.18005f7c0
mov rcx, qword [rdi + 0x40]
lea rax, [rbp + 0x650]
mov qword [rbp - 0x68], rax
or rdx, 0xffffffffffffffff
lea rax, [rbp + 0x2880]
mov dword [rbp - 0x80], 0x68
mov qword [rbp - 0x38], rax
mov dword [rbp - 0x60], 0x104
mov dword [rbp - 0x30], 0x1000
nop dword [rax]
inc rdx
cmp word [rcx + rdx*2], r14w
jne 0x18001d070
lea r9, [rbp - 0x80]
xor r8d, r8d
call qword [sym.imp.WININET.dll_InternetCrackUrlW]
test eax, eax
jne 0x18001d099
call qword [sym.imp.KERNEL32.dll_GetLastError]
or eax, 0xffffffff
jmp 0x18001d75d
mov eax, dword [rbp - 0x6c]
cmp eax, 4
jne 0x18001d0ac
mov qword [rsp + 0x68], 1
jmp 0x18001d0b6
cmp eax, 3
jne 0x18001d091
mov qword [rsp + 0x68], r14
mov qword [rsp + 0x69d8], rbx
lea rcx, [0x18008e0a0]
movzx ebx, word [rbp - 0x5c]
xor r9d, r9d
mov qword [rsp + 0x69e8], r12
xor r8d, r8d
xor edx, edx
mov word [rsp + 0x48], bx
mov qword [rsp + 0x69b0], r13
mov dword [rsp + 0x20], r14d
call qword [sym.imp.WININET.dll_InternetOpenW]
mov qword [rsp + 0x60], rax
mov r12, rax
test rax, rax
jne 0x18001d108
mov ebx, 0xfffffffd
jmp 0x18001d72c
movzx r8d, bx
mov rcx, rax
mov qword [rsp + 0x38], r14
lea rdx, [rbp + 0x650]
mov dword [rsp + 0x30], r14d
xor r9d, r9d
mov dword [rsp + 0x28], 3
mov qword [rsp + 0x20], r14
call qword [sym.imp.WININET.dll_InternetConnectW]
mov r13, rax
test rax, rax
je 0x18001d8ef
mov edx, 0x80048200
movabs rcx, 0x5400450047
mov eax, dword [rdi + 0xe0]
cmp eax, 1
jne 0x18001d179
movsd xmm0, qword [str.POST]
movzx eax, word [0x1800905f8]
movsd qword [rbp + 0x10], xmm0
mov word [rbp + 0x18], ax
jmp 0x18001d201
cmp eax, 2
je 0x18001d1fd
cmp dword [rdi + 0x60], r14d
jbe 0x18001d1fd
cmp qword [rdi + 0x58], r14
je 0x18001d1fd
movzx eax, word [0x1800905f8]
movsd xmm0, qword [str.POST]
mov word [rbp + 0x18], ax
mov rax, qword [rdi + 0x70]
sub rax, qword [rdi + 0x68]
movsd qword [rbp + 0x10], xmm0
test rax, 0xffffffffffffffe0
jne 0x18001d201
movaps xmm0, xmmword [str.Content_Type:_application_x_www_form_urlencoded]
movaps xmm1, xmmword [0x180090bb0]
movaps xmmword [rbp + 0x30], xmm0
movaps xmm0, xmmword [0x180090bc0]
movaps xmmword [rbp + 0x40], xmm1
movaps xmm1, xmmword [0x180090bd0]
movaps xmmword [rbp + 0x50], xmm0
movaps xmm0, xmmword [0x180090be0]
movaps xmmword [rbp + 0x60], xmm1
movaps xmm1, xmmword [0x180090bf0]
movaps xmmword [rbp + 0x70], xmm0
movaps xmmword [rbp + 0x80], xmm1
jmp 0x18001d201
mov qword [rbp + 0x10], rcx
cmp dword [rdi + 0xe8], r14d
mov ebx, 0x800c8200
cmove ebx, edx
cmp qword [rsp + 0x68], r14
je 0x18001d22b
mov rcx, rdi
bts ebx, 0x17
call fcn.18001d920
test eax, eax
jne 0x18001d22b
bts ebx, 0xc
mov qword [rsp + 0x38], r14
lea r9, str.HTTP_1.0
mov dword [rsp + 0x30], ebx
lea r8, [rbp + 0x2880]
mov qword [rsp + 0x28], r14
lea rdx, [rbp + 0x10]
mov rcx, r13
mov qword [rsp + 0x20], r14
call qword [sym.imp.WININET.dll_HttpOpenRequestW]
mov rsi, rax
test rax, rax
je 0x18001d8e5
cmp qword [rdi + 0x30], r14
je 0x18001d28e
cmp qword [rdi + 0x38], 8
lea r8, [rdi + 0x20]
jb 0x18001d279
mov r8, qword [r8]
lea rdx, str.Accept:___r_nUser_Agent:__s_r_n
lea rcx, [rbp + 0x440]
call fcn.18001ed00
jmp 0x18001d2a1
lea rdx, str.Accept:___r_nUser_Agent:_Mozilla___5.0__Windows_NT_10.0__WOW64__AppleWebKit___537.36__KHTML__like_Gecko__Chrome___55.0.2883.87_Safari___537.36_r_n
lea rcx, [rbp + 0x440]
call fcn.18001ed00
mov r9d, 0xa0000000
lea rdx, [rbp + 0x440]
or r8d, 0xffffffff
mov rcx, rsi
call qword [sym.imp.WININET.dll_HttpAddRequestHeadersW]
mov rbx, qword [rdi + 0x68]
cmp rbx, qword [rdi + 0x70]
je 0x18001d370
nop dword [rax]
or r9, 0xffffffffffffffff
mov qword [rbp + 8], 0xf
xor r8d, r8d
mov qword [rbp], r14
mov rdx, rbx
mov byte [rbp - 0x10], r14b
lea rcx, [rbp - 0x10]
call fcn.18000e0b0
cmp qword [rbp + 8], 0x10
lea rdx, [rbp - 0x10]
mov r9d, 0x20000000
mov rcx, rsi
cmovae rdx, qword [rbp - 0x10]
or r8d, 0xffffffff
call qword [sym.imp.WININET.dll_HttpAddRequestHeadersA]
mov rax, qword [rbp + 8]
cmp rax, 0x10
jb 0x18001d362
mov rcx, qword [rbp - 0x10]
inc rax
cmp rax, 0x1000
jb 0x18001d35d
test cl, 0x1f
jne 0x18001d90b
mov rax, qword [rcx - 8]
cmp rax, rcx
jae 0x18001d905
sub rcx, rax
cmp rcx, 8
jb 0x18001d8ff
cmp rcx, 0x27
ja 0x18001d8f9
mov rcx, rax
call fcn.18003f87c
add rbx, 0x20
cmp rbx, qword [rdi + 0x70]
jne 0x18001d2d0
lea r9, [rsp + 0x44]
mov dword [rsp + 0x40], r14d
lea r8, [rsp + 0x40]
mov dword [rsp + 0x44], 4
mov edx, 0x1f
mov rcx, rsi
inc r15d
call qword [sym.imp.WININET.dll_InternetQueryOptionW]
or dword [rsp + 0x40], 0x3180
lea r8, [rsp + 0x40]
mov r9d, 4
mov rcx, rsi
lea edx, [r9 + 0x1b]
call qword [sym.imp.WININET.dll_InternetSetOptionW]
mov eax, dword [rdi + 0xf0]
test eax, eax
je 0x18001d478
imul eax, eax, 0x3e8
lea r8, [rsp + 0x40]
mov r9d, 4
mov rcx, rsi
lea edx, [r9 - 2]
mov dword [rsp + 0x40], eax
call qword [sym.imp.WININET.dll_InternetSetOptionW]
mov r9d, 4
lea r8, [rsp + 0x40]
mov rcx, rsi
lea edx, [r9 + 1]
call qword [sym.imp.WININET.dll_InternetSetOptionW]
mov r9d, 4
lea r8, [rsp + 0x40]
mov rcx, rsi
lea edx, [r9 + 2]
call qword [sym.imp.WININET.dll_InternetSetOptionW]
mov r9d, 4
lea r8, [rsp + 0x40]
mov rcx, rsi
lea edx, [r9 + 3]
call qword [sym.imp.WININET.dll_InternetSetOptionW]
mov r9d, 4
lea r8, [rsp + 0x40]
mov rcx, rsi
lea edx, [r9 + 4]
call qword [sym.imp.WININET.dll_InternetSetOptionW]
mov r9d, 4
lea r8, [rsp + 0x40]
mov rcx, rsi
lea edx, [r9 + 7]
call qword [sym.imp.WININET.dll_InternetSetOptionW]
mov r9d, 4
lea r8, [rsp + 0x40]
mov rcx, rsi
lea edx, [r9 + 2]
call qword [sym.imp.WININET.dll_InternetSetOptionW]
lea rax, [rbp + 0x30]
or r8, 0xffffffffffffffff
inc r8
cmp word [rax + r8*2], r14w
jne 0x18001d480
mov eax, dword [rdi + 0x60]
lea rdx, [rbp + 0x30]
mov r9, qword [rdi + 0x58]
mov rcx, rsi
mov dword [rsp + 0x20], eax
call qword [sym.imp.WININET.dll_HttpSendRequestW]
mov ebx, eax
test eax, eax
jne 0x18001d4fd
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x2f0d
jne 0x18001d4fd
lea r9, [rsp + 0x44]
mov dword [rsp + 0x44], 4
lea r8, [rsp + 0x4c]
mov rcx, rsi
lea edx, [rbx + 0x1f]
call qword [sym.imp.WININET.dll_InternetQueryOptionW]
or dword [rsp + 0x4c], 0x100
lea r9d, [rbx + 4]
lea r8, [rsp + 0x4c]
mov rcx, rsi
lea edx, [rbx + 0x1f]
call qword [sym.imp.WININET.dll_InternetSetOptionW]
cmp r15d, dword [rdi + 0xf4]
jl 0x18001d370
mov rcx, qword [rdi + 0x10]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test eax, eax
je 0x18001d6f3
test ebx, ebx
je 0x18001d7f8
xor edx, edx
lea rcx, [rbp + 0x240]
mov r8d, 0x200
call fcn.18005f7c0
lea r9, [rsp + 0x44]
mov dword [rsp + 0x44], 0x100
lea r8, [rbp + 0x240]
mov qword [rsp + 0x20], r14
mov edx, 0x13
mov rcx, rsi
mov ebx, r14d
mov r12d, r14d
call qword [sym.imp.WININET.dll_HttpQueryInfoW]
test eax, eax
je 0x18001d56c
lea rcx, [rbp + 0x240]
call fcn.1800685f4
mov ebx, eax
cmp ebx, 0xc8
je 0x18001d5e6
lea ecx, [rbx - 0x193]
test ecx, 0xfffffffb
jne 0x18001d6f6
cmp dword [rsp + 0x58], r14d
jne 0x18001d6f6
call fcn.18001dad0
test al, al
je 0x18001d6f6
mov rcx, rsi
call qword [sym.imp.WININET.dll_InternetCloseHandle]
test r13, r13
je 0x18001d5b5
mov rcx, r13
call qword [sym.imp.WININET.dll_InternetCloseHandle]
mov r12, qword [rsp + 0x60]
mov dword [rsp + 0x58], 1
test r12, r12
je 0x18001d5d8
mov rcx, r12
call qword [sym.imp.WININET.dll_InternetCloseHandle]
mov r12, r14
mov qword [rsp + 0x60], r14
movzx r8d, word [rsp + 0x48]
mov rcx, r12
jmp 0x18001d10f
lea r9, [rsp + 0x44]
mov qword [rsp + 0x20], r14
lea r8, [rbp + 0x240]
mov edx, 5
mov rcx, rsi
call qword [sym.imp.WININET.dll_HttpQueryInfoW]
test eax, eax
je 0x18001d61a
lea rcx, [rbp + 0x240]
call fcn.1800685f4
mov r12d, eax
jmp 0x18001d620
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rdx, [rdi + 0x80]
lea r8, [rsp + 0x48]
lea rcx, [rsp + 0x68]
call fcn.18001bc80
lea r8, [rdi + 0x90]
mov rcx, rsi
lea rdx, [rsp + 0x68]
call fcn.18001cab0
mov r15, r14
mov ebx, r14d
xor edx, edx
lea rcx, [rbp + 0x4880]
mov r8d, 0x2001
call fcn.18005f7c0
lea r9, [rsp + 0x40]
mov dword [rsp + 0x40], r14d
mov r8d, 0x2000
lea rdx, [rbp + 0x4880]
mov rcx, rsi
call qword [sym.imp.WININET.dll_InternetReadFile]
test eax, eax
je 0x18001d78e
mov edx, dword [rsp + 0x40]
mov rcx, r15
add edx, ebx
call fcn.180068ac4
mov r8d, dword [rsp + 0x40]
lea rdx, [rbp + 0x4880]
mov ecx, ebx
mov r15, rax
add rcx, rax
call fcn.18005eaf0
add ebx, dword [rsp + 0x40]
cmp ebx, 0x3700000
jbe 0x18001d6c9
mov rcx, qword [rdi + 0x10]
call qword [sym.imp.KERNEL32.dll_SetEvent]
mov rcx, qword [rdi + 0x10]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test eax, eax
je 0x18001d6e9
cmp dword [rsp + 0x40], r14d
jne 0x18001d650
jmp 0x18001d79d
xor edx, edx
mov rcx, r15
call fcn.180068ac4
mov ebx, r14d
test rsi, rsi
je 0x18001d704
mov rcx, rsi
call qword [sym.imp.WININET.dll_InternetCloseHandle]
mov r12, qword [rsp + 0x60]
test r13, r13
je 0x18001d717
mov rcx, r13
call qword [sym.imp.WININET.dll_InternetCloseHandle]
test r12, r12
je 0x18001d725
mov rcx, r12
call qword [sym.imp.WININET.dll_InternetCloseHandle]
cmp dword [rsp + 0x5c], 0
jne 0x18001d743
mov r10, qword [rdi + 0x48]
test r10, r10
je 0x18001d743
mov r9, qword [rdi + 0x50]
xor r8d, r8d
xor edx, edx
mov ecx, ebx
call r10
mov r12, qword [rsp + 0x69e8]
mov eax, ebx
mov rbx, qword [rsp + 0x69d8]
mov r13, qword [rsp + 0x69b0]
mov rsi, qword [rsp + 0x69e0]
mov r14, qword [rsp + 0x69a8]
mov r15, qword [rsp + 0x69a0]
mov rcx, qword [rbp + 0x6890]
xor rcx, rsp
call fcn.18003ff90
add rsp, 0x69b8
pop rdi
pop rbp
ret
test r12d, r12d
je 0x18001d7d5
cmp ebx, r12d
jne 0x18001d7d5
mov dword [rsp + 0x40], r14d
mov rax, qword [rdi + 0x48]
test rax, rax
je 0x18001d7b7
mov r9, qword [rdi + 0x50]
mov r8d, ebx
mov rdx, r15
mov ecx, 0xc8
call rax
mov dword [rsp + 0x5c], 1
test r15, r15
je 0x18001d7ce
xor edx, edx
mov rcx, r15
call fcn.180068ac4
mov ebx, 0xc8
jmp 0x18001d7fb
mov ebx, 0xfffffffa
call qword [sym.imp.KERNEL32.dll_GetLastError]
test r15, r15
je 0x18001d6f6
xor edx, edx
mov rcx, r15
call fcn.180068ac4
jmp 0x18001d6f6
mov ebx, r14d
xor edx, edx
lea rcx, [rbp + 0x860]
mov r8d, 0x1001
call fcn.18005f7c0
lea r9, [rsp + 0x50]
mov dword [rsp + 0x50], 0x1000
lea r8, [rbp + 0x860]
mov qword [rsp + 0x20], r14
mov edx, 0x80000016
mov rcx, rsi
call qword [sym.imp.WININET.dll_HttpQueryInfoA]
cmp byte [rbp + 0x860], r14b
jne 0x18001d844
mov r8, r14
jmp 0x18001d859
lea rax, [rbp + 0x860]
or r8, 0xffffffffffffffff
nop
inc r8
cmp byte [rax + r8], r14b
jne 0x18001d850
lea rcx, [rdi + 0xa0]
lea rdx, [rbp + 0x860]
call fcn.18000e1e0
xor edx, edx
lea rcx, [rbp + 0x1870]
mov r8d, 0x1001
call fcn.18005f7c0
lea r9, [rsp + 0x50]
mov dword [rsp + 0x50], 0x1000
lea r8, [rbp + 0x1870]
mov qword [rsp + 0x20], r14
mov edx, 0x16
mov rcx, rsi
call qword [sym.imp.WININET.dll_HttpQueryInfoA]
cmp byte [rbp + 0x1870], r14b
je 0x18001d8ca
lea rax, [rbp + 0x1870]
or r14, 0xffffffffffffffff
nop dword [rax + rax]
inc r14
cmp byte [rax + r14], 0
jne 0x18001d8c0
lea rcx, [rdi + 0xc0]
mov r8, r14
lea rdx, [rbp + 0x1870]
call fcn.18000e1e0
jmp 0x18001d6f6
mov ebx, 0xfffffffb
jmp 0x18001d709
mov ebx, 0xfffffffc
jmp 0x18001d6f6
call fcn.1800625e0
int3
call fcn.1800625e0
int3
call fcn.1800625e0
int3
call fcn.1800625e0
int3