Function at 0x14025b300
Capabilities:
Prepare http request
Receive http response

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x78]
sub rsp, 0x178
movaps xmmword [rsp + 0x160], xmm6
mov rax, qword [0x1403ceac0]
xor rax, rsp
mov qword [rbp + 0x50], rax
mov r10, r9
mov rsi, r8
mov r13, rdx
mov edx, dword [rbp + 0xe0]
lea eax, [rdx - 1]
cmp eax, 1
ja 0x14025c5ba
mov eax, 0x800000
xor r15d, r15d
cmp edx, 2
cmovne eax, r15d
cmp qword [r9 + 0x18], 8
jb 0x14025b363
mov r10, qword [r9]
mov dword [rsp + 0x30], eax
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x20], r15
xor r9d, r9d
mov r8, r10
lea rdx, case.0x1400bf494.0
mov rcx, qword [rcx + 8]
call qword [sym.imp.WINHTTP.dll_WinHttpOpenRequest]
mov r14, rax
mov qword [rbp + 0x10], rax
test rax, rax
je 0x14025c606
mov rdx, rsi
mov rcx, rax
call fcn.14025db40
mov ebx, r15d
nop word [rax + rax]
mov qword [rsp + 0x30], r15
mov dword [rsp + 0x28], r15d
mov dword [rsp + 0x20], r15d
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov rcx, r14
call qword [sym.imp.WINHTTP.dll_WinHttpSendRequest]
test eax, eax
jne 0x14025b434
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x2f00
jne 0x14025b3e8
inc ebx
cmp ebx, 0xa
jle 0x14025b3b0
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea r8, str.WinHttp:_Failed_to_send_request
mov rcx, r13
call fcn.14025dac0
nop
mov rcx, r14
call qword [sym.imp.WINHTTP.dll_WinHttpCloseHandle]
mov rax, r13
mov rcx, qword [rbp + 0x50]
xor rcx, rsp
call fcn.140296f70
movaps xmm6, xmmword [rsp + 0x160]
add rsp, 0x178
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
xor edx, edx
mov rcx, r14
call qword [sym.imp.WINHTTP.dll_WinHttpReceiveResponse]
test eax, eax
jne 0x14025b454
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea r8, str.WinHttp:_Failed_to_receive_response
jmp 0x14025b3f7
mov r8d, reloc.WS2_32.dll_send
mov rdx, r14
lea rcx, [rbp - 0x18]
call fcn.14025ac10
nop
mov rax, qword [rsi]
mov rbx, qword [rax + 8]
mov qword [rbp - 0x70], r15
mov qword [rbp - 0x68], 7
mov word [rbp - 0x80], r15w
mov r8d, 6
lea rdx, str.Status
lea rcx, [rbp - 0x80]
call fcn.14002b640
nop
lea r8, [rbp - 0x18]
lea rdx, [rbp - 0x80]
mov rcx, rsi
call rbx
nop
mov rdx, qword [rbp - 0x68]
cmp rdx, 8
jb 0x14025b4e4
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14025b4df
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14025c642
call fcn.140296f94
mov rax, qword [rsi]
mov rdi, qword [rax + 8]
mov r8d, 1
mov rdx, r14
lea rcx, [rsp + 0x40]
call fcn.14025ac10
mov rbx, rax
mov qword [rbp - 0x70], r15
mov qword [rbp - 0x68], 7
mov word [rbp - 0x80], r15w
mov r8d, recv
lea rdx, str.Content_Type
lea rcx, [rbp - 0x80]
call fcn.14002b640
nop
mov r8, rbx
lea rdx, [rbp - 0x80]
mov rcx, rsi
call rdi
nop
mov rdx, qword [rbp - 0x68]
cmp rdx, 8
jb 0x14025b576
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14025b571
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14025c648
call fcn.140296f94
mov qword [rbp - 0x70], r15
mov qword [rbp - 0x68], 7
mov word [rbp - 0x80], r15w
mov rdx, qword [rsp + 0x58]
cmp rdx, 8
jb 0x14025b5c9
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14025b5c4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14025c64e
call fcn.140296f94
mov r8d, 5
mov rdx, r14
lea rcx, [rbp - 0x60]
call fcn.14025ac10
nop
cmp qword [rbp - 0x50], 0
jne 0x14025bc86
mov qword [rsp + 0x60], 0xffffffffffffffff
mov rax, qword [rsi]
mov rbx, qword [rax + 8]
mov qword [rbp - 0x70], r15
mov qword [rbp - 0x68], 7
mov word [rbp - 0x80], r15w
mov r8d, select
lea rdx, str.Content_Length
lea rcx, [rbp - 0x80]
call fcn.14002b640
nop
lea r8, [rbp - 0x60]
lea rdx, [rbp - 0x80]
mov rcx, rsi
call rbx
nop
mov rdx, qword [rbp - 0x68]
cmp rdx, 8
jb 0x14025b66d
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14025b668
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14025c654
call fcn.140296f94
mov r8d, getprotobynumber
mov rdx, r14
lea rcx, [rbp - 0x40]
call fcn.14025ac10
nop
mov rax, qword [rsi]
mov rbx, qword [rax + 8]
mov qword [rbp - 0x70], r15
mov qword [rbp - 0x68], 7
mov word [rbp - 0x80], r15w
mov r8d, recv
lea rdx, str.Content_MD5
lea rcx, [rbp - 0x80]
call fcn.14002b640
nop
lea r8, [rbp - 0x40]
lea rdx, [rbp - 0x80]
mov rcx, rsi
call rbx
nop
mov rdx, qword [rbp - 0x68]
cmp rdx, 8
jb 0x14025b6fd
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14025b6f8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14025c667
call fcn.140296f94
mov rax, qword [rsi]
mov rdi, qword [rax + 8]
mov r8d, reloc.WS2_32.dll_getprotobynumber
mov rdx, r14
lea rcx, [rsp + 0x40]
call fcn.14025ac10
mov rbx, rax
mov qword [rbp - 0x70], r15
mov qword [rbp - 0x68], 7
mov word [rbp - 0x80], r15w
mov r8d, 4
lea rdx, str.ETag
lea rcx, [rbp - 0x80]
call fcn.14002b640
nop
mov r8, rbx
lea rdx, [rbp - 0x80]
mov rcx, rsi
call rdi
nop
mov rdx, qword [rbp - 0x68]
cmp rdx, 8
jb 0x14025b78f
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14025b78a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14025c66d
call fcn.140296f94
mov qword [rbp - 0x70], r15
mov qword [rbp - 0x68], 7
mov word [rbp - 0x80], r15w
mov rdx, qword [rsp + 0x58]
cmp rdx, 8
jb 0x14025b7e2
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14025b7dd
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14025c673
call fcn.140296f94
mov rax, qword [rsi]
mov rdi, qword [rax + 8]
mov r8d, recv
mov rdx, r14
lea rcx, [rsp + 0x40]
call fcn.14025ac10
mov rbx, rax
mov qword [rbp - 0x70], r15
mov qword [rbp - 0x68], 7
mov word [rbp - 0x80], r15w
mov r8d, reloc.WS2_32.dll_listen
lea rdx, str.Last_Modified
lea rcx, [rbp - 0x80]
call fcn.14002b640
nop
mov r8, rbx
lea rdx, [rbp - 0x80]
mov rcx, rsi
call rdi
nop
mov rdx, qword [rbp - 0x68]
cmp rdx, 8
jb 0x14025b874
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14025b86f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14025c679
call fcn.140296f94
mov qword [rbp - 0x70], r15
mov qword [rbp - 0x68], 7
mov word [rbp - 0x80], r15w
mov rdx, qword [rsp + 0x58]
cmp rdx, 8
jb 0x14025b8c7
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14025b8c2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14025c67f
call fcn.140296f94
mov rax, qword [rsi]
mov rdi, qword [rax + 8]
mov r8d, 0xa
mov rdx, r14
lea rcx, [rsp + 0x40]
call fcn.14025ac10
mov rbx, rax
mov qword [rbp - 0x70], r15
mov qword [rbp - 0x68], 7
mov word [rbp - 0x80], r15w
mov r8d, 7
lea rdx, str.Expires
lea rcx, [rbp - 0x80]
call fcn.14002b640
nop
mov r8, rbx
lea rdx, [rbp - 0x80]
mov rcx, rsi
call rdi
nop
mov rdx, qword [rbp - 0x68]
cmp rdx, 8
jb 0x14025b959
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14025b954
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14025c685
call fcn.140296f94
mov qword [rbp - 0x70], r15
mov qword [rbp - 0x68], 7
mov word [rbp - 0x80], r15w
mov rdx, qword [rsp + 0x58]
cmp rdx, 8
jb 0x14025b9ac
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14025b9a7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14025c68b
call fcn.140296f94
mov rax, qword [rsi]
mov rdi, qword [rax + 8]
mov r8d, getprotobynumber
mov rdx, r14
lea rcx, [rsp + 0x40]
call fcn.14025ac10
mov rbx, rax
mov qword [rbp - 0x70], r15
mov qword [rbp - 0x68], 7
mov word [rbp - 0x80], r15w
mov r8d, reloc.WS2_32.dll_listen
lea rdx, str.Cache_Control
lea rcx, [rbp - 0x80]
call fcn.14002b640
nop
mov r8, rbx
lea rdx, [rbp - 0x80]
mov rcx, rsi
call rdi
nop
mov rdx, qword [rbp - 0x68]
cmp rdx, 8
jb 0x14025ba3e
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14025ba39
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14025c691
call fcn.140296f94
mov qword [rbp - 0x70], r15
mov qword [rbp - 0x68], 7
mov word [rbp - 0x80], r15w
mov rdx, qword [rsp + 0x58]
cmp rdx, 8
jb 0x14025ba91
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14025ba8c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14025c697
call fcn.140296f94
mov rax, qword [rsi]
mov rdi, qword [rax + 8]
mov r8d, 0x2a
mov rdx, r14
lea rcx, [rsp + 0x40]
call fcn.14025ac10
mov rbx, rax
mov qword [rbp - 0x70], r15
mov qword [rbp - 0x68], 7
mov word [rbp - 0x80], r15w
mov r8d, reloc.WS2_32.dll_listen
lea rdx, str.Accept_Ranges
lea rcx, [rbp - 0x80]
call fcn.14002b640
nop
mov r8, rbx
lea rdx, [rbp - 0x80]
mov rcx, rsi
call rdi
nop
mov rdx, qword [rbp - 0x68]
cmp rdx, 8
jb 0x14025bb23
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14025bb1e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14025c69d
call fcn.140296f94
mov qword [rbp - 0x70], r15
mov qword [rbp - 0x68], 7
mov word [rbp - 0x80], r15w
mov rdx, qword [rsp + 0x58]
cmp rdx, 8
jb 0x14025bb76
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14025bb71
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14025c6a3
call fcn.140296f94
xor r12b, r12b
lea r9, [rbp - 0x18]
mov r11, qword [rbp - 0x18]
mov rdi, qword [rbp]
cmp rdi, 8
cmovae r9, r11
mov r10d, 3
mov r15, qword [rbp - 8]
cmp r15, r10
jne 0x14025bbda
mov r8d, r10d
lea rax, [0x140334018]
movzx ecx, word [r9]
mov edx, getprotobynumber
cmp cx, dx
jb 0x14025bbda
sub r9, rax
cmp cx, dx
ja 0x14025bbda
cmp r8, 1
je 0x14025bcce
dec r8
add rax, 2
movzx ecx, word [r9 + rax]
movzx edx, word [rax]
cmp cx, dx
jae 0x14025bbba
lea rbx, [rbp - 0x18]
cmp rdi, 8
cmovae rbx, r11
mov edx, getprotobynumber
cmp r15, r10
jne 0x14025bc2d
mov r9, r10
lea rax, [0x140334020]
movzx ecx, word [rbx]
mov r8d, edx
cmp cx, dx
jb 0x14025bc2d
sub rbx, rax
cmp cx, r8w
ja 0x14025bc2d
cmp r9, 1
je 0x14025bdd3
dec r9
add rax, 2
movzx ecx, word [rbx + rax]
movzx r8d, word [rax]
cmp cx, r8w
jae 0x14025bc0c
lea r8, [rbp - 0x18]
cmp rdi, 8
cmovae r8, r11
cmp r15, r10
jne 0x14025c556
lea rax, [0x140334028]
movzx ecx, word [r8]
cmp cx, dx
jb 0x14025c556
sub r8, rax
cmp cx, dx
ja 0x14025c556
cmp r10, 1
je 0x14025bf76
dec r10
add rax, 2
movzx ecx, word [r8 + rax]
movzx edx, word [rax]
cmp cx, dx
jb 0x14025c556
jmp 0x14025bc5c
call fcn.1402be600
mov rdi, rax
lea rbx, [rbp - 0x60]
cmp qword [rbp - 0x48], 8
cmovae rbx, qword [rbp - 0x60]
mov dword [rax], r15d
mov r8d, 0xa
lea rdx, [rbp + 8]
mov rcx, rbx
call fcn.1402c9128
mov qword [rsp + 0x60], rax
cmp rbx, qword [rbp + 8]
je 0x14025c65a
cmp dword [rdi], 0x22
je 0x14025c5a7
jmp 0x14025b5f0
xor ebx, ebx
mov dword [r13], ebx
lea rax, [0x1403cfa88]
mov qword [r13 + 8], rax
mov rdx, qword [rbp - 0x28]
cmp rdx, 8
jb 0x14025bd27
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14025bd1a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14025c6a9
call fcn.140296f94
mov rdi, qword [rbp]
mov r11, qword [rbp - 0x18]
mov qword [rbp - 0x30], rbx
mov qword [rbp - 0x28], 7
mov word [rbp - 0x40], bx
mov rdx, qword [rbp - 0x48]
cmp rdx, 8
jb 0x14025bd7f
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14025bd72
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14025c6af
call fcn.140296f94
mov rdi, qword [rbp]
mov r11, qword [rbp - 0x18]
mov qword [rbp - 0x50], rbx
mov qword [rbp - 0x48], 7
mov word [rbp - 0x60], bx
cmp rdi, 8
jb 0x14025c354
lea rdx, [rdi*2 + 2]
mov rax, r11
cmp rdx, 0x1000
jb 0x14025bdc6
add rdx, 0x27
mov r11, qword [r11 - 8]
sub rax, r11
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14025c6b5
mov rcx, r11
call fcn.140296f94
jmp 0x14025c354
mov rax, qword [rsi]
mov rbx, qword [rax + 8]
mov r15, qword [rsp + 0x60]
lea r9, [rbp + 0x4a]
mov r8, r15
movabs r10, 0xcccccccccccccccd
test r15, r15
jns 0x14025be40
neg r8
nop dword [rax + rax]
sub r9, 2
mov rax, r10
mul r8
shr rdx, 3
movzx eax, dx
shl ax, 2
lea ecx, [rax + rdx]
add cx, cx
sub r8w, cx
add r8w, 0x30
mov word [r9], r8w
mov r8, rdx
test rdx, rdx
jne 0x14025be00
add r9, 0xfffffffffffffffe
mov eax, 0x2d
mov word [r9], ax
jmp 0x14025be70
sub r9, 2
mov rax, r10
mul r8
shr rdx, 3
movzx eax, dx
shl ax, 2
lea ecx, [rax + rdx]
add cx, cx
sub r8w, cx
add r8w, 0x30
mov word [r9], r8w
mov r8, rdx
test rdx, rdx
jne 0x14025be40
xor edi, edi
mov qword [rsp + 0x50], rdi
mov qword [rsp + 0x58], 7
mov word [rsp + 0x40], di
lea rax, [rbp + 0x4a]
cmp r9, rax
je 0x14025bea6
lea r8, [rbp + 0x4a]
sub r8, r9
sar r8, 1
mov rdx, r9
lea rcx, [rsp + 0x40]
call fcn.14002b640
nop
mov qword [rbp - 0x70], rdi
mov qword [rbp - 0x68], 7
mov word [rbp - 0x80], di
mov r8d, select
lea rdx, str.X_Entity_Length
lea rcx, [rbp - 0x80]
call fcn.14002b640
nop
lea r8, [rsp + 0x40]
lea rdx, [rbp - 0x80]
mov rcx, rsi
call rbx
nop
mov rdx, qword [rbp - 0x68]
cmp rdx, 8
jb 0x14025bf1c
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14025bf17
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14025c6bb
call fcn.140296f94
mov qword [rbp - 0x70], rdi
mov qword [rbp - 0x68], 7
mov word [rbp - 0x80], di
mov rdx, qword [rsp + 0x58]
cmp rdx, 8
jb 0x14025bf6e
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14025bf69
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14025c6c1
call fcn.140296f94
mov r12b, 1
jmp 0x14025c385
mov r8d, reloc.WS2_32.dll_getprotobyname
mov rdx, r14
lea rcx, [rbp - 0x80]
call fcn.14025ac10
nop
cmp qword [rbp - 0x70], 0
jne 0x14025bf97
mov edx, 0x1e
jmp 0x14025bfd2
lea rdx, [rbp - 0x80]
lea rcx, [rsp + 0x40]
call fcn.14025d470
movups xmm6, xmmword [rax]
movups xmmword [rbp + 0x20], xmm6
movsd xmm0, qword [rax + 0x10]
movsd qword [rbp + 0x30], xmm0
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + 0x28]
movq r8, xmm6
cmp rax, r8
je 0x14025c116
mov edx, 0xa
mov rcx, r13
call fcn.14025a700
nop
mov rdx, qword [rbp - 0x68]
cmp rdx, 8
jb 0x14025c01b
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x80]
cmp rdx, 0x1000
mov rax, rcx
jb 0x14025c016
mov rcx, qword [rcx - 8]
sub rax, rcx
add rdx, 0x27
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14025c6d3
call fcn.140296f94
xor ebx, ebx
mov word [rbp - 0x80], bx
mov qword [rbp - 0x68], 7
mov qword [rbp - 0x70], rbx
mov rdx, qword [rbp - 0x28]
cmp rdx, 8
jb 0x14025c06d
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x40]
cmp rdx, 0x1000
mov rax, rcx
jb 0x14025c068
mov rcx, qword [rcx - 8]
sub rax, rcx
add rdx, 0x27
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14025c6c7
call fcn.140296f94
mov word [rbp - 0x40], bx
mov qword [rbp - 0x28], 7
mov qword [rbp - 0x30], rbx
mov rdx, qword [rbp - 0x48]
cmp rdx, 8
jb 0x14025c0bd
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x60]
cmp rdx, 0x1000
mov rax, rcx
jb 0x14025c0b8
mov rcx, qword [rcx - 8]
sub rax, rcx
add rdx, 0x27
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14025c6cd
call fcn.140296f94
mov word [rbp - 0x60], bx
mov qword [rbp - 0x48], 7
mov qword [rbp - 0x50], rbx
mov rdx, qword [rbp]
cmp rdx, 8
jb 0x14025c354
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x18]
cmp rdx, 0x1000
mov rax, rcx
jb 0x14025c10c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14025c5b4
call fcn.140296f94
jmp 0x14025c354
mov rax, qword [rbp + 0x30]
dec rax
mov rcx, qword [rbp + 0x28]
cmp rcx, rax
je 0x14025c272
mov edx, listen
mov rcx, r13
call fcn.14025a700
nop
mov rdx, qword [rbp - 0x68]
cmp rdx, 8
jb 0x14025c178
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14025c173
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14025c6d3
call fcn.140296f94
xor ebx, ebx
mov qword [rbp - 0x70], rbx
mov qword [rbp - 0x68], 7
mov word [rbp - 0x80], bx
mov rdx, qword [rbp - 0x28]
cmp rdx, 8
jb 0x14025c1ca
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14025c1c5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14025c6c7
call fcn.140296f94
mov qword [rbp - 0x30], rbx
mov qword [rbp - 0x28], 7
mov word [rbp - 0x40], bx
mov rdx, qword [rbp - 0x48]
cmp rdx, 8
jb 0x14025c21a
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14025c215
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14025c6cd
call fcn.140296f94
mov qword [rbp - 0x50], rbx
mov qword [rbp - 0x48], 7
mov word [rbp - 0x60], bx
mov rdx, qword [rbp]
cmp rdx, 8
jb 0x14025c354
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x18]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14025c10c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14025c5b4
jmp 0x14025c10c
sub rcx, r8
inc rcx
mov r15, qword [rsp + 0x60]
cmp r15, rcx
je 0x14025c369
mov edx, recv
mov rcx, r13
call fcn.14025a700
nop
mov rdx, qword [rbp - 0x68]
cmp rdx, 8
jb 0x14025c2d4
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14025c2cf
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14025c6d3
call fcn.140296f94
xor ebx, ebx
mov qword [rbp - 0x70], rbx
mov qword [rbp - 0x68], 7
mov word [rbp - 0x80], bx
mov r8, qword [rbp - 0x28]
cmp r8, 8
jb 0x14025c300
inc r8
mov rdx, qword [rbp - 0x40]
lea rcx, [rbp - 0x40]
call fcn.14002ce20
mov word [rbp - 0x40], bx
mov qword [rbp - 0x28], 7
mov qword [rbp - 0x30], rbx
mov r8, qword [rbp - 0x48]
cmp r8, 8
jb 0x14025c32a
inc r8
mov rdx, qword [rbp - 0x60]
lea rcx, [rbp - 0x60]
call fcn.14002ce20
mov word [rbp - 0x60], bx
mov qword [rbp - 0x48], 7
mov qword [rbp - 0x50], rbx
mov r8, qword [rbp]
cmp r8, 8
jb 0x14025c354
inc r8
mov rdx, qword [rbp - 0x18]
lea rcx, [rbp - 0x18]
call fcn.14002ce20
mov qword [rbp - 8], rbx
mov qword [rbp], 7
mov word [rbp - 0x18], bx
jmp 0x14025b400
mov r8, qword [rbp - 0x68]
cmp r8, 8
jb 0x14025c383
inc r8
mov rdx, qword [rbp - 0x80]
lea rcx, [rbp - 0x80]
call fcn.14002ce20
xor edi, edi
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + reloc.WS2_32.dll_recv]
mov ecx, 0x10000
call fcn.1402974ec
mov rbx, rax
test rax, rax
je 0x14025c3b2
xor edx, edx
mov r8d, 0x10000
mov rcx, rax
call fcn.1402b60e0
jmp 0x14025c3b5
mov rbx, rdi
mov qword [rbp + 8], rbx
mov dword [rbp - 0x20], edi
mov rax, qword [rsi]
movzx edx, r12b
mov rcx, rsi
call qword [rax + 0x18]
lea r9, [rbp - 0x20]
mov r8d, 0x10000
mov rdx, rbx
mov rcx, r14
call qword [sym.imp.WINHTTP.dll_WinHttpReadData]
test eax, eax
je 0x14025c445
mov qword [rsp + 0x68], rbx
nop dword [rax + rax]
mov rax, qword [rsi]
mov r8, qword [rax + 0x20]
mov eax, dword [rbp - 0x20]
mov qword [rsp + 0x60], rax
test rbx, rbx
jne 0x14025c40d
test rax, rax
jne 0x14025c550
movaps xmm0, xmmword [rsp + 0x60]
movdqa xmmword [rbp + 0x20], xmm0
lea rdx, [rbp + 0x20]
mov rcx, rsi
call r8
mov ecx, dword [rbp - 0x20]
add rdi, rcx
test ecx, ecx
je 0x14025c48c
lea r9, [rbp - 0x20]
mov r8d, 0x10000
mov rdx, rbx
mov rcx, r14
call qword [sym.imp.WINHTTP.dll_WinHttpReadData]
test eax, eax
jne 0x14025c3f0
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea r8, str.WinHttp:_Error_in_WinHttpReadData
mov rcx, r13
call fcn.14025dac0
nop
test rbx, rbx
je 0x14025c46b
mov rcx, rbx
call fcn.140296f94
nop
mov r8, qword [rbp - 0x28]
cmp r8, 8
jb 0x14025c485
inc r8
mov rdx, qword [rbp - 0x40]
lea rcx, [rbp - 0x40]
call fcn.14002ce20
xor ebx, ebx
jmp 0x14025c300
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + reloc.WS2_32.dll_getservbyport]
test r15, r15
js 0x14025c4ae
cmp r15, rdi
je 0x14025c4ae
mov edx, 1
mov rcx, r13
call fcn.14025a700
jmp 0x14025c45d
xor edi, edi
mov dword [r13], edi
lea rax, [0x1403cfa88]
mov qword [r13 + 8], rax
test rbx, rbx
je 0x14025c4cd
mov rcx, rbx
call fcn.140296f94
nop
mov r8, qword [rbp - 0x28]
cmp r8, 8
jb 0x14025c4e7
inc r8
mov rdx, qword [rbp - 0x40]
lea rcx, [rbp - 0x40]
call fcn.14002ce20
mov qword [rbp - 0x30], rdi
mov qword [rbp - 0x28], 7
mov word [rbp - 0x40], di
mov r8, qword [rbp - 0x48]
cmp r8, 8
jb 0x14025c511
inc r8
mov rdx, qword [rbp - 0x60]
lea rcx, [rbp - 0x60]
call fcn.14002ce20
mov qword [rbp - 0x50], rdi
mov qword [rbp - 0x48], 7
mov word [rbp - 0x60], di
mov r8, qword [rbp]
cmp r8, 8
jb 0x14025c53b
inc r8
mov rdx, qword [rbp - 0x18]
lea rcx, [rbp - 0x18]
call fcn.14002ce20
mov qword [rbp - 8], rdi
mov qword [rbp], 7
mov word [rbp - 0x18], di
jmp 0x14025b400
call fcn.1400a0210
nop
lea rdx, [rbp - 0x18]
lea rcx, [rbp - 0x80]
call fcn.14025e2d0
nop
mov r8, rax
lea rdx, str.WinHttp:_Unexpected_status_code__
lea rcx, [rsp + 0x40]
call fcn.14008ac20
nop
mov r8b, 0x29
mov rdx, rax
lea rcx, [rsp + 0x60]
call fcn.140221520
nop
mov rdx, rax
lea rcx, [rbp + 0x20]
call fcn.14002c310
lea rdx, [0x1403c6868]
lea rcx, [rbp + 0x20]
call fcn.1402b5304
nop
lea rcx, str.stoll_argument_out_of_range
call fcn.1400fccf4
nop
call fcn.1402ba3ec
nop
lea rcx, [rbp - 0x80]
call fcn.14008b0a0
nop
mov r8, rax
lea rdx, str.WinHttp:_Invalid_scheme__
lea rcx, [rsp + 0x40]
call fcn.14008ac20
nop
mov r8b, 0x29
mov rdx, rax
lea rcx, [rbp + 0x20]
call fcn.140221520
nop
mov rdx, rax
lea rcx, [rbp + 0x10]
call fcn.14008b180
lea rdx, [0x1403c6830]
lea rcx, [rbp + 0x10]
call fcn.1402b5304
nop
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, eax
call fcn.140240a60
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea r9, str.WinHttp:_Failed_to_open_request
mov r8, rbx
mov edx, eax
lea rcx, [rbp - 0x80]
call fcn.1400cbc30
lea rdx, [0x1403c6b08]
lea rcx, [rbp - 0x80]
call fcn.1402b5304
nop
call fcn.1402ba3ec
nop
call fcn.1402ba3ec
nop
call fcn.1402ba3ec
nop
call fcn.1402ba3ec
int3
lea rcx, str.invalid_stoll_argument
call fcn.1400fccac
nop
call fcn.1402ba3ec
nop
call fcn.1402ba3ec
nop
call fcn.1402ba3ec
nop
call fcn.1402ba3ec
nop
call fcn.1402ba3ec
nop
call fcn.1402ba3ec
nop
call fcn.1402ba3ec
nop
call fcn.1402ba3ec
nop
call fcn.1402ba3ec
nop
call fcn.1402ba3ec
nop
call fcn.1402ba3ec
nop
call fcn.1402ba3ec
nop
call fcn.1402ba3ec
nop
call fcn.1402ba3ec
nop
call fcn.1402ba3ec
nop
call fcn.1402ba3ec
nop
call fcn.1402ba3ec
nop
call fcn.1402ba3ec
nop
call fcn.1402ba3ec
int3