Function at 0x54b275
Capabilities:
Initialize winhttp library

Disassembly:
push ebp
lea ebp, [esp - 0xe4]
sub esp, 0xe4
push 0xffffffffffffffff
push 0x66bd32
mov eax, dword fs:[0]
push eax
sub esp, 0xb4
mov eax, dword [0x758f44]
xor eax, ebp
mov dword [ebp + 0xe0], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, ecx
lea esi, [ebx + 0x2e8]
mov al, byte [esi]
mov dword [ebp - 0x20], esi
nop
test al, al
je 0x54b2ca
xor eax, eax
jmp 0x54b69b
lea eax, [ebx + 0xc4]
push eax
lea ecx, [ebp - 0x28]
call fcn.0045e1fd
and dword [ebp - 4], 0
mov al, byte [esi]
nop
test al, al
je 0x54b2eb
xor esi, esi
jmp 0x54b68a
xor eax, eax
lea edi, [ebp + 0xc8]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
xor eax, eax
and dword [ebp + 0xd8], 0
mov dword [ebp + 0xdc], 7
mov word [ebp + 0xc8], ax
lea ecx, [ebp]
mov byte [ebp - 4], 1
call fcn.0049f276
xor edi, edi
mov byte [ebp - 4], 2
mov eax, dword [ebx + 0x1b8]
inc edi
cmp eax, 2
jne 0x54b337
mov dword [ebp - 0x10], edi
jmp 0x54b45f
test eax, eax
je 0x54b45b
cmp eax, edi
je 0x54b45b
lea esi, [ebx + 0x108]
mov dword [ebp - 0x10], 3
lea eax, [ebp]
cmp eax, esi
je 0x54b36f
push esi
mov ecx, eax
call fcn.004615c6
lea eax, [esi + 0x18]
push eax
lea ecx, [ebp + 0x18]
call fcn.004cd132
lea ecx, [ebp]
call fcn.0049f2c3
test al, al
mov eax, dword [ebp + 0xa8]
jne 0x54b395
test eax, eax
jne 0x54b397
cmp dword [ebp + 0x44], 8
lea eax, [ebp + 0x30]
cmovae eax, dword [ebp + 0x30]
jmp 0x54b461
test eax, eax
jle 0x54b436
push ecx
lea ecx, [ebp - 0xc0]
call fcn.00474a7f
mov byte [ebp - 4], 3
lea esi, [ebp - 0xc0]
mov eax, dword [ebp - 0xc0]
add esi, dword [eax + 4]
call fcn.005fbb36
push eax
lea eax, [ebp - 0x18]
mov ecx, esi
push eax
call fcn.004a486b
lea ecx, [ebp - 0x18]
call fcn.0044e6d8
lea edx, [ebp + 0x30]
lea ecx, [ebp - 0xc0]
call fcn.0047546d
mov edx, 0x6fd6f4
mov ecx, eax
call fcn.004752ac
push dword [ebp + 0xa8]
mov ecx, eax
call fcn.0048ae90
lea eax, [ebp + 0xb0]
push eax
lea ecx, [ebp - 0xc0]
call fcn.004b6f34
push eax
lea ecx, [ebp + 0xc8]
call fcn.00450ad2
lea ecx, [ebp + 0xb0]
call fcn.004510b9
lea ecx, [ebp - 0xc0]
mov byte [ebp - 4], 2
call fcn.004717ba
jmp 0x54b445
lea eax, [ebp + 0x30]
push eax
lea ecx, [ebp + 0xc8]
call fcn.004615c6
cmp dword [ebp + 0xdc], 8
lea eax, [ebp + 0xc8]
cmovae eax, dword [ebp + 0xc8]
jmp 0x54b461
and dword [ebp - 0x10], 0
xor eax, eax
push 0x10000000
push 0
push eax
push dword [ebp - 0x10]
push 0
call dword [sym.imp.WINHTTP.dll_WinHttpOpen]
mov esi, eax
mov dword [ebx + 0x2ec], esi
test esi, esi
jne 0x54b48a
push str.Error_opening_session
jmp 0x54b5f3
push 0
push 0x3e8
push dword [ebx + 0x214]
push dword [ebx + 0x210]
call fcn.00642800
cmp eax, edi
cmovl eax, edi
push eax
push eax
push eax
push eax
push esi
call dword [sym.imp.WINHTTP.dll_WinHttpSetTimeouts]
test eax, eax
jne 0x54b4c0
push str.Error_setting_timeouts
jmp 0x54b5f3
cmp byte [ebx + 0x20c], 0
push 4
pop esi
je 0x54b4f0
push esi
lea eax, [ebp - 0x14]
mov dword [ebp - 0x14], edi
push eax
push 0x49
push dword [ebx + 0x2ec]
call dword [sym.imp.WINHTTP.dll_WinHttpSetOption]
test eax, eax
jne 0x54b4f0
push str.Error_setting_options
jmp 0x54b5f3
cmp byte [ebx + 0x21d], 0
je 0x54b512
push esi
lea eax, [ebp - 0x14]
mov dword [ebp - 0x14], edi
push eax
push 0x8c
push dword [ebx + 0x2ec]
call dword [sym.imp.WINHTTP.dll_WinHttpSetOption]
push esi
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0xa00
push eax
push 0x54
push dword [ebx + 0x2ec]
call dword [sym.imp.WINHTTP.dll_WinHttpSetOption]
test eax, eax
jne 0x54b53a
push str.Error_setting_session_options
jmp 0x54b5f3
cmp dword [ebx + 0x29c], 0
je 0x54b554
push dword [ebx + 0x2ec]
lea ecx, [ebx + 0x278]
call fcn.0045926d
cmp byte [ebx + 0x21e], 0
je 0x54b576
push esi
lea eax, [ebp - 0x14]
mov dword [ebp - 0x14], edi
push eax
push 0x85
push dword [ebx + 0x2ec]
call dword [sym.imp.WINHTTP.dll_WinHttpSetOption]
push 0
push 0x17f0c3f
push 0x54cd32
push dword [ebx + 0x2ec]
call dword [sym.imp.WINHTTP.dll_WinHttpSetStatusCallback]
cmp eax, 0xffffffff
jne 0x54b59a
push str.Error_registering_callback
jmp 0x54b5f3
lea ecx, [ebx + 0x14]
call fcn.0049f2c3
test al, al
jne 0x54b5c3
cmp dword [ebx + 0xbc], 0
jne 0x54b5c3
cmp byte [ebx + 0x2f4], 0
mov ecx, 0x1bb
push 0x50
pop eax
cmovne eax, ecx
jmp 0x54b5c9
mov eax, dword [ebx + 0xbc]
lea ecx, [ebx + 0x44]
cmp dword [ecx + 0x14], 8
jb 0x54b5d4
mov ecx, dword [ecx]
push 0
push eax
push ecx
push dword [ebx + 0x2ec]
call dword [sym.imp.WINHTTP.dll_WinHttpConnect]
mov dword [ebx + 0x2f0], eax
test eax, eax
jne 0x54b613
push str.Error_opening_connection
lea ecx, [ebp + 0xb0]
call fcn.0044eb76
call dword [sym.imp.KERNEL32.DLL_GetLastError]
lea ecx, [ebp + 0xb0]
mov esi, eax
call fcn.004510b9
jmp 0x54b61d
mov ecx, dword [ebp - 0x20]
xor eax, eax
inc eax
xchg byte [ecx], al
xor esi, esi
lea ecx, [ebp + 0x18]
call fcn.0049c02f
lea ecx, [ebp]
call fcn.004510b9
mov eax, dword [ebp + 0xdc]
cmp eax, 8
jb 0x54b670
mov ecx, dword [ebp + 0xc8]
lea eax, [eax*2 + 2]
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x14], ecx
cmp eax, 0x1000
jb 0x54b667
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0x14]
push eax
call fcn.0044e1c6
mov eax, dword [ebp - 0x10]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x14]
push eax
push ecx
call fcn.005fa352
pop ecx
pop ecx
and dword [ebp + 0xd8], 0
xor eax, eax
mov dword [ebp + 0xdc], 7
mov word [ebp + 0xc8], ax
cmp byte [ebp - 0x24], 0
je 0x54b699
push dword [ebp - 0x28]
call fcn.005fbfe4
pop ecx
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp + 0xe0]
xor ecx, ebp
call fcn.005f9dd5
add ebp, 0xe4
leave
ret