Function at 0x540ed7
Capabilities:
Check http status code
Receive http response

Disassembly:
push 0x400
mov eax, 0x567bef
call fcn.004cd176
mov esi, ecx
mov edi, dword [ebp + 8]
xor edx, edx
mov ecx, dword [ebp + 0xc]
xor eax, eax
mov ebx, dword [esi + 0x38]
and dword [ebp - 0x30], 0
push 7
mov dword [ebp - 0x3f4], edx
mov byte [ebp - 0x3e2], dl
mov dword [ebp - 0x3f8], edx
mov dword [ebp - 0x404], edx
mov dword [ebp - 0x400], edx
mov byte [ebp - 0x3e4], dl
pop edx
mov dword [ebp - 0x3f0], edi
mov dword [ebp - 0x3ec], ecx
mov dword [ebp - 0x3e8], ebx
mov dword [ebp - 0x2c], edx
mov word [ebp - 0x40], ax
and dword [ebp - 4], eax
and dword [ebp - 0x18], eax
mov dword [ebp - 0x14], edx
mov word [ebp - 0x28], ax
mov byte [ebp - 4], 1
mov byte [ebp - 0x3e3], al
cmp dword [ecx + 0x10], 0
mov byte [ebp - 0x3e1], 0
sete al
test al, al
je 0x540f66
xor eax, eax
jmp 0x540f72
cmp dword [ecx + 0x14], 8
jb 0x540f70
mov eax, dword [ecx]
jmp 0x540f72
mov eax, ecx
push 0
push 0
push 0
push 0
push 0xffffffffffffffff
push eax
push edi
call dword [sym.imp.WINHTTP.dll_WinHttpSendRequest]
test eax, eax
jne 0x541027
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
cmp edi, 0x2f00
jne 0x540fec
push str._WinHttp_request_resend_is_required
push 3
call fcn.0053fc27
mov edx, dword [ebp - 0x400]
inc edx
mov dword [ebp - 0x400], edx
cmp edx, 0xa
jle 0x5412a2
cmp byte [ebp + 0x14], 0
je 0x5412b3
push str.OHttp::SendRequest:_WinHttp_request_resend_count_exceeded_limits
push edi
push 0x7d
lea ecx, [ebp - 0x3e0]
call fcn.005379e4
push 0x5d6094
lea eax, [ebp - 0x3e0]
push eax
call fcn.004cea74
lea eax, [ebp - 0x3f4]
mov ecx, esi
push eax
lea eax, [ebp - 0x3e8]
push eax
call fcn.005413a5
test al, al
je 0x5412d2
lea eax, [ebp - 0x3e8]
push eax
push str.OHttp::SendRequest:_Http_Send_request_failed__trying_proxy_index__d.
push 3
call fcn.0053fd11
mov ebx, dword [ebp - 0x3e8]
jmp 0x5412a2
push 0
push edi
call dword [sym.imp.WINHTTP.dll_WinHttpReceiveResponse]
test eax, eax
jne 0x5410d4
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x3fc], eax
cmp eax, 0x2eef
jne 0x541089
cmp byte [ebp - 0x3e2], 0
jne 0x541089
push str._retrying_request_with_NTLM_authentication
push 3
call fcn.0051175b
xor eax, eax
push eax
push eax
push eax
push 2
push eax
push edi
call dword [sym.imp.WINHTTP.dll_WinHttpSetCredentials]
test eax, eax
je 0x5412f0
mov byte [ebp - 0x3e2], 1
mov ecx, dword [ebp - 0x3ec]
jmp 0x540f50
lea eax, [ebp - 0x3fc]
push eax
push str._WinHttpReceiveResponse_failed__error_d
push 3
call fcn.0053fc71
lea eax, [ebp - 0x3f4]
mov ecx, esi
push eax
lea eax, [ebp - 0x3e8]
push eax
call fcn.005413a5
test al, al
je 0x541317
lea eax, [ebp - 0x3e8]
push eax
push str.OHttp::SendRequest:_Http_Receive_request_failed__trying_proxy_index__d.
push 3
call fcn.0053fd5f
mov ebx, dword [ebp - 0x3e8]
jmp 0x54107e
push 0
push 0x13
push edi
lea eax, [ebp - 0x58]
mov ecx, esi
push eax
call fcn.00540adc
cmp dword [ebp - 0x44], 8
lea eax, [ebp - 0x58]
push 0xa
cmovae eax, dword [ebp - 0x58]
push 0
push eax
mov byte [ebp - 4], 2
call fcn.004ec2ea
mov edi, eax
add esp, 0xc
mov eax, dword [ebp - 0x3ec]
mov ecx, 0xce
cmp dword [eax + 0x10], 0
sete al
test al, al
lea eax, [ecx - 6]
cmovne ecx, eax
cmp ecx, edi
je 0x5411c3
cmp edi, eax
je 0x5411c3
cmp edi, 0x191
jne 0x541180
mov eax, dword [ebp - 0x404]
inc eax
mov dword [ebp - 0x404], eax
cmp eax, 3
jg 0x54133a
cmp eax, 1
mov ecx, esi
setle al
movzx eax, al
push eax
lea eax, [esi + 0x3c]
push eax
lea eax, [ebp - 0x28]
push eax
lea eax, [ebp - 0x40]
push eax
push dword [ebp - 0x3f0]
call fcn.0054074b
mov byte [ebp - 0x3e3], 1
mov byte [ebp - 0x3e1], 1
jmp 0x541234
mov eax, dword [ebp - 0x3f8]
inc eax
mov dword [ebp - 0x3f8], eax
cmp eax, 3
jle 0x541285
lea eax, [ebp - 0x3f4]
mov ecx, esi
push eax
lea eax, [ebp - 0x3e8]
push eax
call fcn.005413a5
mov ebx, dword [ebp - 0x3e8]
mov cl, al
xor eax, eax
mov byte [ebp - 0x3e1], cl
mov dword [ebp - 0x3f8], eax
jmp 0x541230
cmp byte [ebp - 0x3e3], 0
mov byte [ebp - 0x3e4], 1
je 0x541285
cmp byte [ebp + 0x10], 0
je 0x541285
sub esp, 0x18
lea eax, [ebp - 0x28]
mov ecx, esp
mov dword [ebp - 0x3fc], esp
push eax
call fcn.004062e4
sub esp, 0x18
mov byte [ebp - 4], 3
lea eax, [ebp - 0x40]
mov dword [ebp - 0x40c], esp
mov ecx, esp
push eax
call fcn.004062e4
sub esp, 0x18
mov byte [ebp - 4], 4
lea eax, [esi + 0x3c]
mov ecx, esp
push eax
call fcn.004062e4
mov ecx, esi
mov byte [ebp - 4], 2
call fcn.005409a1
mov cl, byte [ebp - 0x3e1]
test cl, cl
je 0x541285
mov al, byte [esi + 0x9c]
test al, al
jne 0x54125d
sub esp, 0x18
lea eax, [esi + 0x6c]
mov ecx, esp
push eax
call fcn.004062e4
push dword [esi + 0xa4]
lea ecx, [esi + 0x84]
call fcn.005442c2
mov eax, dword [esi + 0x94]
sub eax, dword [esi + 0x90]
push 0x18
cdq
pop ecx
idiv ecx
cmp ebx, eax
jae 0x541285
push dword [esi + 0xa4]
lea ecx, [esi + 0x84]
push ebx
call fcn.0054455b
push 0
push 1
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 1
call fcn.0040779d
cmp byte [ebp - 0x3e1], 0
je 0x54134a
mov ecx, dword [ebp - 0x3ec]
mov edi, dword [ebp - 0x3f0]
jmp 0x540f50
push 0
push 1
lea ecx, [ebp - 0x28]
call fcn.0040779d
push 0
push 1
lea ecx, [ebp - 0x40]
call fcn.0040779d
xor al, al
jmp 0x54139d
cmp byte [ebp + 0x14], 0
je 0x5412b3
push str.OHttp::SendRequest:_Http_Send_request_failed
push edi
push 0x7d
lea ecx, [ebp - 0x3e0]
call fcn.004138c6
jmp 0x540fdb
cmp byte [ebp + 0x14], 0
je 0x5412b3
push str.OHttp::SendRequest:_Failed_to_set_authentication_scheme
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push 0x85
lea ecx, [ebp - 0x3e0]
call fcn.00538e32
jmp 0x540fdb
cmp byte [ebp + 0x14], 0
je 0x5412b3
push str.OHttp::SendRequest:_Http_Receive_request_failed
push dword [ebp - 0x3fc]
lea ecx, [ebp - 0x3e0]
push 0x7e
call fcn.0053ce00
jmp 0x540fdb
push 0
push 1
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 1
call fcn.0040779d
mov al, byte [ebp - 0x3e4]
test al, al
jne 0x541375
cmp byte [ebp + 0x14], al
je 0x5412b3
push str.Unexpected_status_code_received_for_Http_Send_request
push edi
push 0x7d
lea ecx, [ebp - 0x3e0]
call fcn.0053fa99
jmp 0x540fdb
test ebx, ebx
jne 0x54137d
xor eax, eax
jmp 0x541380
lea eax, [ebx - 1]
push 0
push 1
lea ecx, [ebp - 0x28]
mov dword [esi + 0x38], eax
call fcn.0040779d
push 0
push 1
lea ecx, [ebp - 0x40]
call fcn.0040779d
mov al, 1
call fcn.004cd128
ret 0x10