Function at 0x49072d
Capabilities:
Check http status code

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x617bd7
mov eax, dword fs:[0]
push eax
mov eax, 0x1940
call fcn.005237b0
mov eax, dword [0x6ad2ac]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov eax, dword [ebp + 0xc]
mov esi, dword [ebp + 8]
mov dword [ebp - 0x18d8], eax
xor eax, eax
push 0x1800
push eax
mov dword [ebp - 0x18dc], eax
mov ebx, eax
mov dword [ebp - 0x18e4], eax
mov dword [ebp - 0x18d4], eax
lea eax, [ebp - 0x18d0]
push eax
mov dword [ebp - 0x18e0], esi
call fcn.00524e30
xor eax, eax
mov dword [ebp - 0x1940], 0x3c
mov dword [ebp - 0x1934], eax
add esp, 0xc
mov dword [ebp - 0x1928], eax
mov ecx, edi
lea eax, [ebp - 0x4d0]
mov dword [ebp - 0x190c], eax
lea eax, [ebp - 0x14d0]
mov dword [ebp - 0x1930], eax
lea eax, [ebp - 0xcd0]
mov dword [ebp - 0x191c], eax
lea eax, [ebp - 0x18d0]
mov dword [ebp - 0x193c], eax
lea eax, [ebp - 0x8d0]
mov dword [ebp - 0x1914], eax
lea eax, [ebp - 0x10d0]
mov dword [ebp - 0x1924], eax
mov eax, 0x200
mov dword [ebp - 0x1920], eax
mov dword [ebp - 0x1910], eax
mov dword [ebp - 0x1938], eax
mov dword [ebp - 0x1918], eax
mov dword [ebp - 0x192c], eax
mov dword [ebp - 0x1908], eax
mov eax, dword [edi]
call dword [eax + 0xc]
lea ecx, [ebp - 0x44]
call fcn.00461f9f
xor eax, eax
mov dword [ebp - 4], eax
mov eax, dword [0x6b6334]
test eax, eax
jne 0x490863
call fcn.00491033
push str.WinHttpCrackUrl
push dword [0x6b5c10]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x6b6334], eax
test eax, eax
je 0x490871
lea ecx, [ebp - 0x1940]
push ecx
xor ecx, ecx
push ecx
push ecx
push esi
call eax
push dword [ebp - 0x1914]
lea ecx, [ebp - 0x28]
call fcn.0045d225
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x28]
push dword [ebp - 0x190c]
call fcn.0044f135
sub esp, 0xc
call fcn.00491253
mov esi, eax
add esp, 0xc
mov dword [ebp - 0x18f4], esi
test esi, esi
je 0x490d23
push str.https
lea ecx, [ebp - 0x60]
call fcn.004625ae
xor eax, eax
lea ecx, [ebp - 0x44]
push eax
lea eax, [ebp - 0x60]
push eax
call fcn.00463c74
lea ecx, [ebp - 0x60]
mov bl, al
call fcn.00462a54
push ecx
test bl, bl
je 0x4908ed
push 0x7e4000
xor ecx, ecx
call fcn.00491304
pop ecx
pop ecx
call dword [sym.imp.KERNEL32.dll_GetLastError]
jmp 0x4908f8
push 0xffffffffffffffff
mov ecx, esi
call fcn.00491304
pop ecx
pop ecx
mov edx, dword [ebp - 0x18d8]
test edx, edx
je 0x490951
mov ecx, edx
lea ebx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, word [ebp - 0x18dc]
jne 0x490907
sub ecx, ebx
sar ecx, 1
je 0x490951
xor eax, eax
mov dword [ebp - 0x1948], edx
mov dword [ebp - 0x1944], eax
mov ecx, esi
push 0xc
lea eax, [ebp - 0x194c]
mov dword [ebp - 0x194c], 3
push eax
push 0x26
pop edx
call fcn.004912c5
mov ebx, dword [ebp - 0x18e0]
pop ecx
pop ecx
jmp 0x49095e
mov ebx, dword [ebp - 0x18e0]
push ebx
push esi
call fcn.00490f94
mov edx, dword [ebp - 0x1930]
xor eax, eax
push ecx
push dword [ebp - 0x1928]
mov ecx, esi
mov dword [ebp - 0x18ec], 4
mov dword [ebp - 0x18f0], eax
mov dword [ebp - 0x18fc], eax
call fcn.004910b5
mov esi, eax
mov dword [ebp - 0x18d8], eax
pop ecx
pop ecx
test esi, esi
jne 0x4909c2
mov edx, dword [ebp - 0x1930]
push ecx
push dword [ebp - 0x1928]
mov ecx, dword [ebp - 0x18f4]
call fcn.004910b5
mov esi, eax
mov dword [ebp - 0x18d8], esi
pop ecx
pop ecx
test esi, esi
je 0x490d1d
push ebx
lea ecx, [ebp - 0x7c]
call fcn.004625ae
lea eax, [ebp - 0x78]
mov byte [ebp - 4], 2
push eax
lea ecx, [ebp - 0x40]
call fcn.00465045
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 1
call fcn.00462a54
push str.https
lea ecx, [ebp - 0x98]
call fcn.004625ae
xor eax, eax
lea ecx, [ebp - 0x44]
push eax
lea eax, [ebp - 0x98]
push eax
call fcn.00463c74
lea ecx, [ebp - 0x98]
mov bl, al
call fcn.00462a54
lea eax, [ebp - 0x28]
test bl, bl
je 0x490a50
cmp dword [ebp - 0x14], 8
push 0x800000
cmovae eax, dword [ebp - 0x28]
push ecx
push ecx
push 0x694778
push eax
mov ecx, esi
call fcn.004910f3
mov ebx, eax
add esp, 0x14
test ebx, ebx
jne 0x490aa1
push 0x800000
push ecx
push ecx
push 0x694778
jmp 0x490a81
cmp dword [ebp - 0x14], 8
push 0x100
cmovae eax, dword [ebp - 0x28]
push ecx
push ecx
push str.HTTP_1.1
push eax
mov ecx, esi
call fcn.004910f3
mov ebx, eax
add esp, 0x14
test ebx, ebx
jne 0x490aa1
push 0x100
push ecx
push ecx
push str.HTTP_1.1
cmp dword [ebp - 0x14], 8
lea eax, [ebp - 0x28]
mov ecx, esi
cmovae eax, dword [ebp - 0x28]
push eax
call fcn.004910f3
mov ebx, eax
add esp, 0x14
test ebx, ebx
je 0x490d1d
lea eax, [edi + 0x3c]
push eax
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov esi, dword [sym.imp.KERNEL32.dll_CreateEventW]
xor eax, eax
push eax
push eax
push eax
push eax
call esi
mov dword [edi + 0x30], eax
xor eax, eax
push eax
push eax
push eax
push eax
call esi
mov dword [edi + 0x34], eax
xor eax, eax
push eax
push eax
push eax
push eax
call esi
mov edx, dword [edi + 0x30]
lea esi, [edi + 0x2c]
push esi
push eax
push dword [edi + 0x34]
mov ecx, ebx
mov dword [edi + 0x38], eax
call fcn.0049036d
add esp, 0xc
test eax, eax
jne 0x490d13
mov eax, dword [esi]
test eax, eax
je 0x490d13
mov esi, dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
mov dword [ebp - 0x18dc], eax
push dword [ebp - 0x18dc]
mov dword [ebp - 0x18d4], eax
call esi
lea eax, [edi + 0x3c]
push eax
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov eax, dword [ebp - 0x18d4]
mov dword [ebp - 0x18dc], eax
push dword [ebp - 0x18dc]
call esi
push dword [ebp - 0x18e0]
lea ecx, [ebp - 0xb4]
call fcn.004625ae
lea eax, [ebp - 0xb0]
mov byte [ebp - 4], 3
push eax
lea ecx, [ebp - 0x40]
call fcn.00465045
lea ecx, [ebp - 0xb4]
mov byte [ebp - 4], 1
call fcn.00462a54
push str.https
lea ecx, [ebp - 0xd0]
call fcn.004625ae
xor esi, esi
lea eax, [ebp - 0xd0]
push esi
push eax
lea ecx, [ebp - 0x44]
call fcn.00463c74
lea ecx, [ebp - 0xd0]
mov bl, al
call fcn.00462a54
test bl, bl
je 0x490bc5
mov ecx, dword [ebp - 0x18d4]
lea eax, [ebp - 0x18f8]
push 4
push eax
mov dword [ebp - 0x18f8], 0x3100
mov ecx, dword [ecx + 0x20]
push 0x1f
pop edx
call fcn.004912c5
pop ecx
pop ecx
test eax, eax
je 0x490d1d
mov ecx, dword [ebp - 0x18d4]
lea eax, [ebp - 0x18d4]
push 4
push eax
push 0x2d
mov ecx, dword [ecx + 0x20]
pop edx
call fcn.004912c5
pop ecx
pop ecx
test eax, eax
je 0x490d1d
mov ecx, dword [ebp - 0x18d4]
call fcn.00490448
mov ecx, dword [ebp - 0x18d4]
sub esp, 0x14
mov ecx, dword [ecx + 0x20]
call fcn.00491139
add esp, 0x14
test eax, eax
jne 0x490c32
mov ecx, dword [ebp - 0x18d4]
sub esp, 0x14
mov ecx, dword [ecx + 0x20]
call fcn.00491139
add esp, 0x14
test eax, eax
jne 0x490c32
mov eax, dword [ebp - 0x18d4]
add eax, 4
jmp 0x490d16
mov eax, dword [ebp - 0x18d4]
mov ebx, dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
add eax, 4
push eax
call ebx
mov eax, dword [edi + 0x30]
mov dword [ebp - 0x1904], eax
mov eax, dword [edi + 0x38]
push 0xea60
mov dword [ebp - 0x1900], eax
lea eax, [ebp - 0x1904]
push esi
push eax
push 2
call dword [sym.imp.KERNEL32.dll_WaitForMultipleObjects]
test eax, eax
jne 0x490d1d
mov ecx, dword [ebp - 0x18d4]
call fcn.00490448
mov ecx, dword [ebp - 0x18d4]
xor eax, eax
push esi
mov edx, 0x20000013
cmp dword [ecx + 0x30], esi
mov dword [ebp - 0x18e8], esi
sete al
mov dword [ebp - 0x18e4], eax
lea eax, [ebp - 0x18ec]
push eax
lea eax, [ebp - 0x18e8]
push eax
push ecx
mov ecx, dword [ecx + 0x20]
call fcn.00491173
add esp, 0x10
cmp dword [ebp - 0x18e8], 0xc8
je 0x490cd8
mov dword [ebp - 0x18e4], esi
mov eax, dword [ebp - 0x18d4]
add eax, 4
push eax
call ebx
jmp 0x490d1d
lea eax, [ebp - 0x18fc]
mov edx, 0x20000005
push eax
lea eax, [ebp - 0x18ec]
push eax
lea eax, [ebp - 0x18f0]
push eax
push ecx
mov ecx, dword [ebp - 0x18d4]
mov ecx, dword [ecx + 0x20]
call fcn.00491173
add esp, 0x10
test eax, eax
je 0x490cca
mov eax, dword [ebp - 0x18f0]
mov dword [edi + 0x24], eax
jmp 0x490cca
lea eax, [edi + 0x3c]
push eax
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov ebx, dword [ebp - 0x18d8]
lea esi, [edi + 0x3c]
push esi
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov eax, dword [ebp - 0x18f4]
push esi
mov dword [edi + 8], ebx
mov dword [edi + 4], eax
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov ecx, dword [ebp - 0x18d4]
test ecx, ecx
je 0x490d57
call fcn.00490341
xor eax, eax
mov dword [ebp - 0x18d4], eax
lea ecx, [ebp - 0x28]
call fcn.00454f0a
lea ecx, [ebp - 0x44]
call fcn.00462a54
mov eax, dword [ebp - 0x18e4]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00522ca8
leave
ret 8