Function at 0x18000b4d0
Capabilities:
Initialize winhttp library
Prepare http request
Receive http response
Set http header

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0xf8]
sub rsp, 0x1f8
mov qword [rbp - 0x70], 0xfffffffffffffffe
mov rax, qword [0x180067008]
xor rax, rsp
mov qword [rbp + 0xe0], rax
mov r14, r9
mov dword [rsp + 0x48], r8d
mov qword [rsp + 0x50], rdx
mov rsi, rcx
mov rdi, qword [rbp + 0x168]
mov rax, qword [rbp + 0x170]
mov qword [rsp + 0x68], rax
mov rax, qword [rbp + 0x178]
mov qword [rsp + 0x58], rax
mov rax, qword [rbp + 0x180]
mov qword [rsp + 0x60], rax
xor r12d, r12d
mov dword [rax + 8], r12d
mov r13d, r12d
xor edx, edx
lea r8d, [r12 + 0x60]
lea rcx, [rbp - 0x18]
call fcn.180037440
mov dword [rbp - 0x20], 0x68
mov dword [rbp - 0x10], 0xffffffff
mov dword [rbp], 0xffffffff
mov dword [rbp + 0x30], 0xffffffff
mov dword [rbp + 0x40], 0xffffffff
mov rdx, rsi
lea rcx, [rbp + 0xc0]
call fcn.18000a810
nop
lea rcx, [rbp + 0xc0]
cmp qword [rbp + 0xd8], 8
cmovae rcx, qword [rbp + 0xc0]
lea r9, [rbp - 0x20]
xor r8d, r8d
mov edx, dword [rsi + 0x10]
call qword [sym.imp.WINHTTP.dll_WinHttpCrackUrl]
movabs rbx, 0x7fffffffffffffff
test eax, eax
je 0x18000bc6d
mov rdx, qword [rbp - 8]
test rdx, rdx
je 0x18000bc6d
mov qword [rbp + 0x78], 7
mov qword [rbp + 0x70], r12
mov word [rbp + 0x60], r12w
or rbx, 0xffffffffffffffff
cmp word [rdx], r12w
jne 0x18000b5f3
mov r8d, r12d
jmp 0x18000b60b
mov r8, rbx
nop word [rax + rax]
inc r8
cmp word [rdx + r8*2], 0
jne 0x18000b600
lea rcx, [rbp + 0x60]
call fcn.180005ff0
nop
mov r15d, 1
mov r9d, r15d
xor r8d, r8d
lea rdx, [0x180058984]
lea rcx, [rbp + 0x60]
call fcn.18000bfe0
cmp rax, 0xffffffffffffffff
je 0x18000b665
mov r9, rax
xor r8d, r8d
lea rdx, [rbp + 0xa0]
lea rcx, [rbp + 0x60]
call fcn.18000bd00
mov rdx, rax
lea rcx, [rbp + 0x60]
call fcn.18000bd50
lea rcx, [rbp + 0xa0]
call fcn.180005ed0
mov dword [rbp + 0x58], 0x927c0
mov dword [rbp + 0x50], r15d
mov qword [rbp + 0x98], 7
mov qword [rbp + 0x90], r12
mov word [rbp + 0x80], r12w
cmp qword [rbp + 0x38], 0
je 0x18000b6c9
mov eax, gethostbyaddr
mov rdx, qword [rbp + 0x28]
cmp ax, word [rdx]
jne 0x18000b6a3
add rdx, 2
cmp word [rdx], 0
jne 0x18000b6b0
mov rbx, r12
jmp 0x18000b6ba
inc rbx
cmp word [rdx + rbx*2], 0
jne 0x18000b6b0
mov r8, rbx
lea rcx, [rbp + 0x80]
call fcn.180005ff0
mov r15d, 4
cmp qword [rdi + 0x10], 0
jbe 0x18000b6dc
lea ebx, [r15 - 1]
jmp 0x18000b6ea
call fcn.18000b3d0
mov ebx, r12d
test eax, eax
cmovne ebx, r15d
mov rdx, rdi
lea rcx, [rbp - 0x68]
call fcn.18000a810
cmp qword [rax + 0x18], 8
jb 0x18000b700
mov rax, qword [rax]
mov dword [rsp + 0x20], r12d
xor r9d, r9d
mov r8, rax
mov edx, ebx
lea rcx, [0x180058988]
call qword [sym.imp.WINHTTP.dll_WinHttpOpen]
mov r15, rax
lea rcx, [rbp - 0x68]
call fcn.180005ed0
test r15, r15
je 0x18000bb63
mov edi, 4
mov r9d, edi
lea r8, [rbp + 0x58]
lea edx, [rdi + 1]
mov rcx, r15
call qword [sym.imp.WINHTTP.dll_WinHttpSetOption]
mov dword [rbp + 0x58], 0x927c0
mov r9d, edi
lea r8, [rbp + 0x58]
lea edx, [rdi + 2]
mov rcx, r15
call qword [sym.imp.WINHTTP.dll_WinHttpSetOption]
lea rdx, [rbp + 0x60]
cmp qword [rbp + 0x78], 8
cmovae rdx, qword [rbp + 0x60]
xor r9d, r9d
movzx r8d, word [rbp + 4]
mov rcx, r15
call qword [sym.imp.WINHTTP.dll_WinHttpConnect]
mov r12, rax
test rax, rax
je 0x18000bb57
lea r9d, [rdi + 1]
xor r8d, r8d
lea rdx, [rbp + 0xa0]
mov rcx, rsi
call fcn.18000be20
cmp qword [rax + 0x18], 0x10
jb 0x18000b7ac
mov rax, qword [rax]
lea rdx, str.https
mov rcx, rax
call fcn.18003bb74
test eax, eax
sete bl
lea rcx, [rbp + 0xa0]
call fcn.180001e50
neg bl
sbb ebx, ebx
and ebx, 0x800000
mov rdx, r14
lea rcx, [rbp + 0xa0]
call fcn.18000a810
lea r8, [rbp + 0x80]
cmp qword [rbp + 0x98], 8
cmovae r8, qword [rbp + 0x80]
cmp qword [rax + 0x18], 8
jb 0x18000b806
mov rax, qword [rax]
mov dword [rsp + 0x30], ebx
xor ecx, ecx
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], rcx
xor r9d, r9d
mov rdx, rax
mov rcx, r12
call qword [sym.imp.WINHTTP.dll_WinHttpOpenRequest]
mov r14, rax
mov qword [rsp + 0x40], rax
lea rcx, [rbp + 0xa0]
call fcn.180005ed0
test r14, r14
je 0x18000bb4e
mov r9d, edi
lea r8, [rbp + 0x50]
mov edx, 0x3f
mov rcx, r14
call qword [sym.imp.WINHTTP.dll_WinHttpSetOption]
mov dword [rbp + 0x50], 3
call fcn.18000b3d0
test eax, eax
je 0x18000b87c
mov r9d, edi
lea r8, [rbp + 0x50]
mov edx, 0x76
mov rcx, r14
call qword [sym.imp.WINHTTP.dll_WinHttpSetOption]
neg dword [rbp + 0x190]
sbb eax, eax
and eax, 2
mov dword [rbp + 0x50], eax
mov r9d, edi
lea r8, [rbp + 0x50]
mov edx, 0x58
mov rcx, r14
call qword [sym.imp.WINHTTP.dll_WinHttpSetOption]
mov r9d, 5
xor r8d, r8d
lea rdx, [rbp + 0xa0]
mov rcx, rsi
call fcn.18000be20
cmp qword [rax + 0x18], 0x10
jb 0x18000b8c1
mov rax, qword [rax]
lea rdx, str.https
mov rcx, rax
call fcn.18003bb74
test eax, eax
sete bl
lea rcx, [rbp + 0xa0]
call fcn.180001e50
test bl, bl
je 0x18000b921
mov dword [rbp + 0x54], 0
mov dword [rbp + 0x5c], edi
lea r9, [rbp + 0x5c]
lea r8, [rbp + 0x54]
mov edx, 0x1f
mov rcx, r14
call qword [sym.imp.WINHTTP.dll_WinHttpQueryOption]
or dword [rbp + 0x54], 0x3300
mov r9d, edi
lea r8, [rbp + 0x54]
mov edx, 0x1f
mov rcx, r14
call qword [sym.imp.WINHTTP.dll_WinHttpSetOption]
mov rsi, qword [rbp + 0x160]
mov rax, qword [rsi]
mov rbx, qword [rax]
cmp rbx, rax
je 0x18000bac6
lea rdx, [rbx + 0x20]
lea rcx, [rsp + 0x70]
call fcn.18000c3a0
nop
lea r8, [rbx + 0x40]
mov rdx, rax
lea rcx, [rbp + 0xa0]
call fcn.180006b60
nop
mov rax, qword [rbp - 0x78]
cmp rax, 0x10
jb 0x18000b9a9
inc rax
mov rcx, qword [rsp + 0x70]
cmp rax, 0x1000
jb 0x18000b9a4
test cl, 0x1f
jne 0x18000baa8
mov rax, qword [rcx - 8]
cmp rax, rcx
jae 0x18000baa2
sub rcx, rax
cmp rcx, 8
jb 0x18000ba9c
cmp rcx, 0x27
ja 0x18000ba96
mov rcx, rax
call fcn.180033ed0
mov qword [rbp - 0x78], reloc.WS2_32.dll_ntohs
mov qword [rbp - 0x80], 0
mov byte [rsp + 0x70], 0
lea rdx, [rbp + 0xa0]
lea rcx, [rbp - 0x48]
call fcn.18000a810
cmp qword [rax + 0x18], 8
jb 0x18000b9d8
mov rax, qword [rax]
mov r9d, 0x20000000
or r8d, 0xffffffff
mov rdx, rax
mov rcx, r14
call qword [sym.imp.WINHTTP.dll_WinHttpAddRequestHeaders]
lea rcx, [rbp - 0x48]
call fcn.180005ed0
nop
mov rax, qword [rbp + 0xb8]
cmp rax, 0x10
jb 0x18000ba44
inc rax
mov rcx, qword [rbp + 0xa0]
cmp rax, 0x1000
jb 0x18000ba3f
test cl, 0x1f
jne 0x18000bac0
mov rax, qword [rcx - 8]
cmp rax, rcx
jae 0x18000baba
sub rcx, rax
cmp rcx, 8
jb 0x18000bab4
cmp rcx, 0x27
ja 0x18000baae
mov rcx, rax
call fcn.180033ed0
cmp byte [rbx + 0x19], 0
jne 0x18000ba8e
mov rax, qword [rbx + 0x10]
cmp byte [rax + 0x19], 0
jne 0x18000ba6e
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
jne 0x18000ba8e
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x18000ba60
jmp 0x18000ba8e
mov rax, qword [rbx + 8]
cmp byte [rax + 0x19], 0
jne 0x18000ba8b
cmp rbx, qword [rax + 0x10]
jne 0x18000ba8b
mov rbx, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x19], 0
je 0x18000ba78
mov rbx, rax
cmp rbx, qword [rsi]
jmp 0x18000b931
call fcn.18003835c
int3
call fcn.18003835c
int3
call fcn.18003835c
int3
call fcn.18003835c
nop
call fcn.18003835c
int3
call fcn.18003835c
int3
call fcn.18003835c
int3
call fcn.18003835c
int3
mov qword [rsp + 0x30], 0
mov eax, dword [rsp + 0x48]
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], eax
mov r9, qword [rsp + 0x50]
xor r8d, r8d
xor edx, edx
mov rcx, r14
call qword [sym.imp.WINHTTP.dll_WinHttpSendRequest]
test eax, eax
je 0x18000bb40
xor edx, edx
mov rcx, r14
call qword [sym.imp.WINHTTP.dll_WinHttpReceiveResponse]
test eax, eax
je 0x18000bb40
mov rdx, qword [rsp + 0x58]
lea rcx, [rsp + 0x40]
call fcn.18000acc0
mov rdx, qword [rsp + 0x60]
lea rcx, [rsp + 0x40]
call fcn.18000aa40
lea rcx, [rsp + 0x40]
call fcn.18000abd0
mov rcx, qword [rsp + 0x68]
mov dword [rcx], eax
test eax, eax
mov eax, 1
cmovne r13d, eax
mov r14, qword [rsp + 0x40]
test r14, r14
je 0x18000bb4e
mov rcx, r14
call qword [sym.imp.WINHTTP.dll_WinHttpCloseHandle]
mov rcx, r12
call qword [sym.imp.WINHTTP.dll_WinHttpCloseHandle]
mov rcx, r15
call qword [sym.imp.WINHTTP.dll_WinHttpCloseHandle]
xor r12d, r12d
mov rax, qword [rbp + 0x98]
movabs rbx, 0x7fffffffffffffff
cmp rax, 8
jb 0x18000bbdb
inc rax
mov rcx, qword [rbp + 0x80]
cmp rax, rbx
jbe 0x18000bb8f
call fcn.18003835c
int3
add rax, rax
cmp rax, 0x1000
jb 0x18000bbd6
test byte [rbp + 0x80], 0x1f
je 0x18000bba9
call fcn.18003835c
int3
mov rax, qword [rcx - 8]
cmp rax, rcx
jb 0x18000bbb8
call fcn.18003835c
int3
sub rcx, rax
cmp rcx, 8
jae 0x18000bbc7
call fcn.18003835c
int3
cmp rcx, 0x27
jbe 0x18000bbd3
call fcn.18003835c
int3
mov rcx, rax
call fcn.180033ed0
mov qword [rbp + 0x98], 7
mov qword [rbp + 0x90], r12
mov word [rbp + 0x80], r12w
mov rax, qword [rbp + 0x78]
cmp rax, 8
jb 0x18000bc5a
inc rax
mov rcx, qword [rbp + 0x60]
cmp rax, rbx
jbe 0x18000bc11
call fcn.18003835c
int3
add rax, rax
cmp rax, 0x1000
jb 0x18000bc55
test byte [rbp + 0x60], 0x1f
je 0x18000bc28
call fcn.18003835c
int3
mov rax, qword [rcx - 8]
cmp rax, rcx
jb 0x18000bc37
call fcn.18003835c
int3
sub rcx, rax
cmp rcx, 8
jae 0x18000bc46
call fcn.18003835c
int3
cmp rcx, 0x27
jbe 0x18000bc52
call fcn.18003835c
int3
mov rcx, rax
call fcn.180033ed0
mov qword [rbp + 0x78], 7
mov qword [rbp + 0x70], r12
mov word [rbp + 0x60], r12w
jmp 0x18000bc70
mov r13d, r12d
mov rax, qword [rbp + 0xd8]
cmp rax, 8
jb 0x18000bcda
inc rax
mov rcx, qword [rbp + 0xc0]
cmp rax, rbx
jbe 0x18000bc92
call fcn.18003835c
int3
add rax, rax
cmp rax, 0x1000
jb 0x18000bcd5
test cl, 0x1f
je 0x18000bca8
call fcn.18003835c
int3
mov rax, qword [rcx - 8]
cmp rax, rcx
jb 0x18000bcb7
call fcn.18003835c
int3
sub rcx, rax
cmp rcx, 8
jae 0x18000bcc6
call fcn.18003835c
int3
cmp rcx, 0x27
jbe 0x18000bcd2
call fcn.18003835c
int3
mov rcx, rax
call fcn.180033ed0
mov eax, r13d
mov rcx, qword [rbp + 0xe0]
xor rcx, rsp
call fcn.180033e70
add rsp, 0x1f8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret