Function at 0x554020
Capabilities:
Check http status code
Prepare http request
Read http header
Receive http response
Set http header

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x108
mov eax, dword [0x66e8b0]
xor eax, ebp
mov dword [ebp - 0x28], eax
mov dword [ebp - 0xd4], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0xd0], 0
mov dword [ebp - 0xe8], 0
mov dword [ebp - 0xe0], 0
mov dword [ebp - 0x1c], 4
mov dword [ebp - 0xcc], 0
mov dword [ebp - 0xf4], 0
mov dword [ebp - 0xe4], 0
mov dword [ebp - 0xac], 0
mov dword [ebp - 0xb8], 0
mov dword [ebp - 0xc0], 0
mov eax, dword [ebp + 8]
cmp dword [eax + 0xa0], 0
jne 0x5540e1
push 0
mov ecx, dword [ebp + 8]
push ecx
call fcn.00553da0
add esp, 8
test eax, eax
je 0x5540e1
push str.could_not_initialize_transport
call fcn.00553f00
add esp, 4
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0xb8], eax
jmp 0x554c5d
mov edx, dword [ebp + 8]
cmp dword [edx + 0xb4], 0
jne 0x5540f9
mov eax, dword [ebp + 8]
push eax
call fcn.00554d10
add esp, 4
mov ecx, dword [ebp + 8]
cmp dword [ecx + 0xb4], 0
jne 0x554116
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0xb8], eax
jmp 0x554c5d
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xb4]
mov dword [ebp - 0xb4], eax
push 5
push str.https
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x3c]
push edx
call fcn.005a9be8
add esp, 0xc
test eax, eax
jne 0x55414a
mov eax, dword [ebp - 0x20]
or eax, 0x800000
mov dword [ebp - 0x20], eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x2c]
push edx
call fcn.00553f20
add esp, 4
mov dword [ebp - 0xb0], eax
mov eax, dword [ebp - 0x20]
push eax
push 0
push 0
push str.HTTP_1.1
mov ecx, dword [ebp - 0xb0]
push ecx
push str.POST
mov edx, dword [ebp - 0xb4]
push edx
call dword [sym.imp.WINHTTP.dll_WinHttpOpenRequest]
mov dword [ebp - 0xd4], eax
mov eax, dword [ebp - 0xb0]
push eax
call fcn.0055a080
add esp, 4
cmp dword [ebp - 0xd4], 0
jne 0x5541b2
mov dword [ebp - 0xe8], 0x190
jmp 0x554c5d
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0xb8]
push edx
push str.Content_Type:_application_soapxml_charset_s_r_n
push 0x80
lea eax, [ebp - 0xa8]
push eax
call fcn.005a0b6b
add esp, 0x10
lea ecx, [ebp - 0xa8]
push ecx
call fcn.00553f20
add esp, 4
mov dword [ebp - 0xb0], eax
push 0x10000000
push 0xffffffffffffffff
mov edx, dword [ebp - 0xb0]
push edx
mov eax, dword [ebp - 0xd4]
push eax
call dword [sym.imp.WINHTTP.dll_WinHttpAddRequestHeaders]
mov dword [ebp - 0xcc], eax
mov ecx, dword [ebp - 0xb0]
push ecx
call fcn.0055a080
add esp, 4
cmp dword [ebp - 0xcc], 0
jne 0x55423f
push str.cant_add_Content_Type_header
call fcn.00553f00
add esp, 4
mov dword [ebp - 0xe8], 0x190
jmp 0x554c5d
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xb8]
push eax
lea ecx, [ebp - 0xf8]
push ecx
lea edx, [ebp - 0xd0]
push edx
mov eax, dword [ebp + 0xc]
push eax
call fcn.00558b70
add esp, 0x10
mov dword [ebp - 0xc], 0
mov ecx, dword [ebp + 8]
push ecx
call fcn.0055bb40
add esp, 4
mov dword [ebp - 0xdc], eax
cmp dword [ebp - 0xdc], 4
jne 0x5542d6
mov dword [ebp - 0xfc], 1
push 4
lea edx, [ebp - 0xfc]
push edx
push 0x60
mov eax, dword [ebp - 0xd4]
push eax
call dword [sym.imp.WINHTTP.dll_WinHttpSetOption]
mov dword [ebp - 0xf4], eax
cmp dword [ebp - 0xf4], 0
jne 0x5542cc
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0xb8], eax
mov dword [ebp - 0xe4], 1
mov dword [ebp - 0xf4], 0
mov ecx, dword [ebp + 8]
cmp dword [ecx + 0x94], 0
je 0x554361
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x94]
push eax
call fcn.00553f20
add esp, 4
mov dword [ebp - 0xec], eax
mov ecx, dword [ebp - 0xec]
push ecx
call fcn.005a194f
add esp, 4
push eax
mov edx, dword [ebp - 0xec]
push edx
push 0x1002
mov eax, dword [ebp - 0xd4]
push eax
call dword [sym.imp.WINHTTP.dll_WinHttpSetOption]
mov dword [ebp - 0xf4], eax
mov ecx, dword [ebp - 0xec]
push ecx
call fcn.0055a080
add esp, 4
cmp dword [ebp - 0xf4], 0
jne 0x554357
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0xb8], eax
mov dword [ebp - 0xe4], 1
mov dword [ebp - 0xf4], 0
mov edx, dword [ebp + 8]
cmp dword [edx + 0x98], 0
je 0x5543e0
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x98]
push ecx
call fcn.00553f20
add esp, 4
mov dword [ebp - 0x10], eax
mov edx, dword [ebp - 0x10]
push edx
call fcn.005a194f
add esp, 4
push eax
mov eax, dword [ebp - 0x10]
push eax
push 0x1003
mov ecx, dword [ebp - 0xd4]
push ecx
call dword [sym.imp.WINHTTP.dll_WinHttpSetOption]
mov dword [ebp - 0xf4], eax
mov edx, dword [ebp - 0x10]
push edx
call fcn.0055a080
add esp, 4
cmp dword [ebp - 0xf4], 0
jne 0x5543d6
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0xb8], eax
mov dword [ebp - 0xe4], 1
mov dword [ebp - 0xf4], 0
mov eax, dword [ebp + 8]
cmp dword [eax + 0x80], 0
je 0x5543f5
mov ecx, dword [ebp + 8]
cmp dword [ecx + 0x7c], 0
jne 0x554458
mov edx, dword [ebp + 8]
cmp dword [edx + 0x80], 0
jne 0x55440c
mov eax, dword [ebp - 0x20]
or eax, 0x1000
mov dword [ebp - 0x20], eax
mov ecx, dword [ebp + 8]
cmp dword [ecx + 0x7c], 0
jne 0x554427
mov edx, dword [ebp - 0x20]
or edx, 0x2000
or edx, 0x100
mov dword [ebp - 0x20], edx
push 4
lea eax, [ebp - 0x20]
push eax
push 0x1f
mov ecx, dword [ebp - 0xd4]
push ecx
call dword [sym.imp.WINHTTP.dll_WinHttpSetOption]
mov dword [ebp - 0xcc], eax
cmp dword [ebp - 0xcc], 0
jne 0x554458
push str.cannot_ignore_server_certificate
call fcn.00553f00
add esp, 4
cmp dword [ebp - 0xdc], 2
jne 0x5544f9
mov dword [ebp - 0xbc], 0
mov dword [ebp - 0x24], 8
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x34]
push eax
call fcn.00553f20
add esp, 4
mov dword [ebp - 8], eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x30]
push edx
call fcn.00553f20
add esp, 4
mov dword [ebp - 0xd8], eax
push 0
mov eax, dword [ebp - 8]
push eax
mov ecx, dword [ebp - 0xd8]
push ecx
mov edx, dword [ebp - 0x24]
push edx
mov eax, dword [ebp - 0xbc]
push eax
mov ecx, dword [ebp - 0xd4]
push ecx
call dword [sym.imp.WINHTTP.dll_WinHttpSetCredentials]
mov dword [ebp - 0xcc], eax
mov edx, dword [ebp - 0xd8]
push edx
call fcn.0055a080
add esp, 4
mov eax, dword [ebp - 8]
push eax
call fcn.0055a080
add esp, 4
cmp dword [ebp - 0xcc], 0
jne 0x5544f9
push str.cannot_set_credential
call fcn.00553f00
add esp, 4
cmp dword [ebp - 0xe4], 0
jne 0x554b26
push 0
mov ecx, dword [ebp - 0xf8]
push ecx
mov edx, dword [ebp - 0xf8]
push edx
mov eax, dword [ebp - 0xd0]
push eax
push 0
push 0
mov ecx, dword [ebp - 0xd4]
push ecx
call dword [sym.imp.WINHTTP.dll_WinHttpSendRequest]
mov dword [ebp - 0xcc], eax
cmp dword [ebp - 0xcc], 0
je 0x554552
push 0
mov edx, dword [ebp - 0xd4]
push edx
call dword [sym.imp.WINHTTP.dll_WinHttpReceiveResponse]
mov dword [ebp - 0xf4], eax
cmp dword [ebp - 0xf4], 0
jne 0x5545a4
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0xb8], eax
cmp dword [ebp - 0xb8], 0x2f00
jne 0x554584
mov dword [ebp - 0xb8], 0
jmp 0x5544f9
cmp dword [ebp - 0xb8], 0x2eef
jne 0x5545a4
mov dword [ebp - 0xf4], 1
mov dword [ebp - 0xb8], 0
cmp dword [ebp - 0xf4], 0
je 0x5545d4
push 0
lea eax, [ebp - 0x1c]
push eax
lea ecx, [ebp - 0xe8]
push ecx
push 0
push 0x20000013
mov edx, dword [ebp - 0xd4]
push edx
call dword [sym.imp.WINHTTP.dll_WinHttpQueryHeaders]
mov dword [ebp - 0xf4], eax
cmp dword [ebp - 0xf4], 0
jne 0x55483d
cmp dword [ebp - 0xc], 0
je 0x5545f6
mov dword [ebp - 0xe4], 1
jmp 0x554b26
cmp dword [ebp - 0xb8], 0x2f0c
jne 0x5546ce
mov dword [ebp - 0xb8], 0
lea eax, [ebp - 0xb8]
push eax
lea ecx, [ebp - 0xc0]
push ecx
lea edx, [ebp - 0xf0]
push edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x6c]
push ecx
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x50]
push eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x54]
push edx
call fcn.00554f20
add esp, 0x18
test eax, eax
jne 0x554662
push str.No_certificate
call fcn.00554cf0
add esp, 4
mov dword [ebp - 0xe4], 1
jmp 0x554b26
push 0x14
mov eax, dword [ebp - 0xf0]
push eax
push 0x2f
mov ecx, dword [ebp - 0xd4]
push ecx
call dword [sym.imp.WINHTTP.dll_WinHttpSetOption]
mov dword [ebp - 0xf4], eax
mov edx, dword [ebp - 0xf0]
push edx
call dword [sym.imp.CRYPT32.dll_CertFreeCertificateContext]
cmp dword [ebp - 0xf4], 0
jne 0x5546b3
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0xb8], eax
mov dword [ebp - 0xe4], 1
jmp 0x554b26
mov dword [ebp - 0xf4], 0
mov dword [ebp - 0xc], 1
jmp 0x5544f9
lea eax, [ebp - 0xbc]
push eax
lea ecx, [ebp - 0x14]
push ecx
lea edx, [ebp - 0x18]
push edx
mov eax, dword [ebp - 0xd4]
push eax
call dword [sym.imp.WINHTTP.dll_WinHttpQueryAuthSchemes]
mov dword [ebp - 0xf4], eax
cmp dword [ebp - 0xf4], 0
je 0x5547fb
cmp dword [ebp - 0xdc], 6
je 0x554718
mov ecx, dword [ebp + 8]
cmp dword [ecx + 0x30], 0
je 0x554718
mov edx, dword [ebp + 8]
cmp dword [edx + 0x34], 0
jne 0x554731
mov dword [ebp - 0xe4], 1
mov dword [ebp - 0xf4], 0
jmp 0x554b26
mov eax, dword [ebp - 0xdc]
push eax
mov ecx, dword [ebp - 0x18]
push ecx
call fcn.00554dc0
add esp, 8
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0
jne 0x554766
mov dword [ebp - 0xe4], 1
mov dword [ebp - 0xf4], 0
jmp 0x554b26
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x34]
push eax
call fcn.00553f20
add esp, 4
mov dword [ebp - 8], eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x30]
push edx
call fcn.00553f20
add esp, 4
mov dword [ebp - 0xd8], eax
cmp dword [ebp - 8], 0
je 0x55479c
cmp dword [ebp - 0xd8], 0
jne 0x5547b5
mov dword [ebp - 0xe4], 1
mov dword [ebp - 0xf4], 0
jmp 0x554b26
push 0
mov eax, dword [ebp - 8]
push eax
mov ecx, dword [ebp - 0xd8]
push ecx
mov edx, dword [ebp - 0x24]
push edx
mov eax, dword [ebp - 0xbc]
push eax
mov ecx, dword [ebp - 0xd4]
push ecx
call dword [sym.imp.WINHTTP.dll_WinHttpSetCredentials]
mov dword [ebp - 0xf4], eax
mov edx, dword [ebp - 8]
push edx
call fcn.0055a080
add esp, 4
mov eax, dword [ebp - 0xd8]
push eax
call fcn.0055a080
add esp, 4
mov ecx, dword [ebp - 0xd4]
push ecx
call fcn.00554e50
add esp, 4
test eax, eax
je 0x55481d
mov dword [ebp - 0xe4], 1
jmp 0x554b26
mov dword [ebp - 0xb8], 0
mov dword [ebp - 0xf4], 0
mov dword [ebp - 0xc], 1
jmp 0x5544f9
mov edx, dword [ebp - 0xe8]
mov dword [ebp - 0x108], edx
cmp dword [ebp - 0x108], 0x191
ja 0x554882
cmp dword [ebp - 0x108], 0x191
je 0x5548e8
cmp dword [ebp - 0x108], 0xc8
je 0x554893
cmp dword [ebp - 0x108], 0x190
je 0x5548a2
jmp 0x554ada
cmp dword [ebp - 0x108], 0x1f4
je 0x5548c5
jmp 0x554ada
mov dword [ebp - 0xe4], 1
jmp 0x554b02
mov eax, dword [ebp - 0xe8]
push eax
push 0x665d08
call fcn.00554cf0
add esp, 8
mov dword [ebp - 0xe4], 1
jmp 0x554b02
mov ecx, dword [ebp - 0xe8]
push ecx
push 0x665d28
call fcn.00554cf0
add esp, 8
mov dword [ebp - 0xe4], 1
jmp 0x554b02
cmp dword [ebp - 0xe0], 0x191
jne 0x55490d
mov dword [ebp - 0xf4], 0
mov dword [ebp - 0xe4], 1
jmp 0x554b02
cmp dword [ebp - 0xdc], 4
jne 0x55498e
mov dword [ebp - 0x104], 1
mov dword [ebp - 0x100], 4
mov edx, dword [ebp - 0x100]
push edx
lea eax, [ebp - 0x104]
push eax
push 0x4d
mov ecx, dword [ebp - 0xd4]
push ecx
call dword [sym.imp.WINHTTP.dll_WinHttpSetOption]
mov dword [ebp - 0xf4], eax
cmp dword [ebp - 0xf4], 0
jne 0x55496c
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0xb8], eax
mov dword [ebp - 0xe4], 1
mov edx, dword [ebp - 0xd4]
push edx
call fcn.00554e50
add esp, 4
test eax, eax
je 0x554989
mov dword [ebp - 0xe4], 1
jmp 0x554b02
lea eax, [ebp - 0xbc]
push eax
lea ecx, [ebp - 0x14]
push ecx
lea edx, [ebp - 0x18]
push edx
mov eax, dword [ebp - 0xd4]
push eax
call dword [sym.imp.WINHTTP.dll_WinHttpQueryAuthSchemes]
mov dword [ebp - 0xf4], eax
cmp dword [ebp - 0xf4], 0
je 0x554abb
cmp dword [ebp - 0xdc], 6
je 0x5549d8
mov ecx, dword [ebp + 8]
cmp dword [ecx + 0x30], 0
je 0x5549d8
mov edx, dword [ebp + 8]
cmp dword [edx + 0x34], 0
jne 0x5549f1
mov dword [ebp - 0xe4], 1
mov dword [ebp - 0xf4], 0
jmp 0x554b02
mov eax, dword [ebp - 0xdc]
push eax
mov ecx, dword [ebp - 0x18]
push ecx
call fcn.00554dc0
add esp, 8
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0
jne 0x554a26
mov dword [ebp - 0xe4], 1
mov dword [ebp - 0xf4], 0
jmp 0x554b02
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x34]
push eax
call fcn.00553f20
add esp, 4
mov dword [ebp - 8], eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x30]
push edx
call fcn.00553f20
add esp, 4
mov dword [ebp - 0xd8], eax
cmp dword [ebp - 8], 0
je 0x554a5c
cmp dword [ebp - 0xd8], 0
jne 0x554a75
mov dword [ebp - 0xe4], 1
mov dword [ebp - 0xf4], 0
jmp 0x554b02
push 0
mov eax, dword [ebp - 8]
push eax
mov ecx, dword [ebp - 0xd8]
push ecx
mov edx, dword [ebp - 0x24]
push edx
mov eax, dword [ebp - 0xbc]
push eax
mov ecx, dword [ebp - 0xd4]
push ecx
call dword [sym.imp.WINHTTP.dll_WinHttpSetCredentials]
mov dword [ebp - 0xf4], eax
mov edx, dword [ebp - 8]
push edx
call fcn.0055a080
add esp, 4
mov eax, dword [ebp - 0xd8]
push eax
call fcn.0055a080
add esp, 4
mov ecx, dword [ebp - 0xd4]
push ecx
call fcn.00554e50
add esp, 4
test eax, eax
je 0x554ad8
mov dword [ebp - 0xe4], 1
jmp 0x554b02
mov edx, dword [ebp - 0xe8]
push edx
push str.Error._Status_code__d_returned.
call fcn.00554cf0
add esp, 8
mov dword [ebp - 0xf4], 0
mov dword [ebp - 0xe4], 1
mov eax, dword [ebp - 0xe8]
mov dword [ebp - 0xe0], eax
cmp dword [ebp - 0xf4], 0
jne 0x554b21
mov dword [ebp - 0xe4], 1
jmp 0x5544f9
cmp dword [ebp - 0xf4], 0
jne 0x554b34
jmp 0x554c5d
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x4c]
mov eax, dword [edx + 4]
mov dword [ebp - 0xc8], eax
mov ecx, 1
test ecx, ecx
je 0x554c5d
mov dword [ebp - 0x1c], 0
lea edx, [ebp - 0x1c]
push edx
mov eax, dword [ebp - 0xd4]
push eax
call dword [sym.imp.WINHTTP.dll_WinHttpQueryDataAvailable]
mov dword [ebp - 0xf4], eax
cmp dword [ebp - 0xf4], 0
jne 0x554b9c
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0xb8], eax
mov ecx, dword [ebp - 0xb8]
push ecx
push str.Error__u_in_WinHttpQueryDataAvailable.
call fcn.00553f00
add esp, 8
jmp 0x554c5d
cmp dword [ebp - 0x1c], 0
jbe 0x554bb7
mov edx, dword [ebp - 0x1c]
push edx
push 0
mov eax, dword [ebp - 0xc8]
push eax
call fcn.0055c630
add esp, 0xc
mov ecx, dword [ebp - 0xc8]
push ecx
call fcn.0055ca10
add esp, 4
mov dword [ebp - 4], eax
mov edx, dword [ebp - 0xc8]
push edx
call fcn.0055c920
add esp, 4
mov dword [ebp - 0xc4], eax
lea eax, [ebp - 0xac]
push eax
mov ecx, dword [ebp - 0x1c]
push ecx
mov edx, dword [ebp - 4]
add edx, dword [ebp - 0xc4]
push edx
mov eax, dword [ebp - 0xd4]
push eax
call dword [sym.imp.WINHTTP.dll_WinHttpReadData]
mov dword [ebp - 0xf4], eax
cmp dword [ebp - 0xf4], 0
jne 0x554c31
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0xb8], eax
mov ecx, dword [ebp - 0xb8]
push ecx
push str.Error__u_in_WinHttpReadData.
call fcn.00553f00
add esp, 8
jmp 0x554c5d
cmp dword [ebp - 0xac], 0
jne 0x554c3c
jmp 0x554c5d
mov edx, dword [ebp - 0xc4]
add edx, dword [ebp - 0xac]
push edx
mov eax, dword [ebp - 0xc8]
push eax
call fcn.0055c6e0
add esp, 8
jmp 0x554b43
mov ecx, dword [ebp + 8]
mov edx, dword [ebp - 0xe8]
mov dword [ecx + 0xa8], edx
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0xb8]
mov dword [eax + 0xb0], ecx
mov edx, dword [ebp - 0xd0]
push edx
call fcn.00558b90
add esp, 4
cmp dword [ebp - 0xd4], 0
je 0x554ca0
mov eax, dword [ebp - 0xd4]
push eax
call dword [sym.imp.WINHTTP.dll_WinHttpCloseHandle]
cmp dword [ebp - 0xc0], 0
je 0x554cdc
push 2
mov ecx, dword [ebp - 0xc0]
push ecx
call dword [sym.imp.CRYPT32.dll_CertCloseStore]
test eax, eax
jne 0x554cdc
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0xb8], eax
mov edx, dword [ebp - 0xb8]
push edx
push str.Error__u_in_CertCloseStore____d
call fcn.00553f00
add esp, 8
mov ecx, dword [ebp - 0x28]
xor ecx, ebp
call fcn.0059e318
mov esp, ebp
pop ebp
ret