Function at 0x5458ec
Capabilities:
Check for time delay via gettickcount
Initialize winhttp library
Prepare http request
Receive http response

Disassembly:
push ebp
mov ebp, esp
push ecx
mov ecx, 0x11
push 0
push 0
dec ecx
jne 0x5458f5
push ecx
xchg dword [ebp - 4], ecx
push ebx
push esi
push edi
mov dword [ebp - 0xc], ecx
mov dword [ebp - 8], edx
mov dword [ebp - 4], eax
mov eax, dword [ebp - 8]
call fcn.00405164
mov eax, dword [ebp + 0xc]
call fcn.00405164
xor eax, eax
push ebp
push 0x546134
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 4]
mov byte [eax + 4], 0
xor eax, eax
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x14]
call fcn.004218f4
lea eax, [ebp - 0x1c]
mov edx, 0x54614c
call fcn.00405420
cmp dword [ebp + 0x14], 0
jbe 0x545961
lea eax, [ebp - 0x1c]
mov edx, 0x546158
call fcn.00405420
call sub.winhttp.dll_WinHttpCheckPlatform
test eax, eax
je 0x545976
mov eax, 0x54616c
call fcn.005449c0
jmp 0x545980
mov eax, 0x54619c
call fcn.005449c0
lea eax, [ebp - 0x4c]
push eax
lea eax, [ebp - 0x4d]
push eax
lea ecx, [ebp - 0x48]
mov edx, dword [ebp - 8]
mov eax, dword [ebp - 4]
call fcn.00544cec
mov eax, 0x5ad7d0
mov edx, dword [ebp - 0x48]
call fcn.00404f3c
cmp byte [ebp - 0x4d], 0
je 0x5459b4
mov esi, 0x800000
mov bx, 0x1bb
jmp 0x5459ba
xor esi, esi
mov bx, 0x50
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + 0x6c], edx
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + 0x70], edx
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + 0x74], edx
mov eax, dword [ebp - 4]
cmp byte [eax + 4], 0
je 0x5459e5
xor eax, eax
mov dword [ebp - 0x14], eax
jmp 0x54607c
lea eax, [ebp - 0x64]
push eax
call sub.winhttp.dll_WinHttpGetIEProxyConfigForCurrentUser
test eax, eax
je 0x545a3f
cmp dword [ebp - 0x5c], 0
je 0x545a1e
push 0
push 0x5461c8
mov eax, dword [ebp - 0x5c]
push eax
push 3
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x24]
call fcn.00405564
push eax
call sub.winhttp.dll_WinHttpOpen
mov edx, dword [ebp - 4]
mov dword [edx + 0x6c], eax
jmp 0x545a5e
push 0
push 0
push 0
push 0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x24]
call fcn.00405564
push eax
call sub.winhttp.dll_WinHttpOpen
mov edx, dword [ebp - 4]
mov dword [edx + 0x6c], eax
jmp 0x545a5e
push 0
push 0
push 0
push 0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x24]
call fcn.00405564
push eax
call sub.winhttp.dll_WinHttpOpen
mov edx, dword [ebp - 4]
mov dword [edx + 0x6c], eax
mov eax, dword [ebp - 4]
cmp byte [eax + 4], 0
je 0x545a71
xor eax, eax
mov dword [ebp - 0x14], eax
jmp 0x54607c
mov eax, dword [ebp - 4]
cmp dword [eax + 0x6c], 0
je 0x545a98
push 0
push ebx
mov eax, dword [ebp - 0x48]
call fcn.00405564
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x6c]
push eax
call sub.winhttp.dll_WinHttpConnect
mov edx, dword [ebp - 4]
mov dword [edx + 0x70], eax
mov eax, dword [ebp - 4]
cmp byte [eax + 4], 0
je 0x545aab
xor eax, eax
mov dword [ebp - 0x14], eax
jmp 0x54607c
mov eax, dword [ebp - 4]
cmp dword [eax + 0x70], 0
je 0x545adf
push esi
push 0
push 0
push 0
mov eax, dword [ebp - 0x4c]
call fcn.00405564
push eax
mov eax, dword [ebp - 0x1c]
call fcn.00405564
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x70]
push eax
call sub.winhttp.dll_WinHttpOpenRequest
mov edx, dword [ebp - 4]
mov dword [edx + 0x74], eax
mov eax, dword [ebp - 4]
cmp byte [eax + 4], 0
je 0x545af2
xor eax, eax
mov dword [ebp - 0x14], eax
jmp 0x54607c
mov eax, dword [ebp - 4]
cmp dword [eax + 0x74], 0
je 0x545b86
mov eax, dword [ebp - 4]
cmp dword [eax + 0x4c], 0
jbe 0x545b22
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x4c]
push eax
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x74]
mov ecx, 3
mov eax, dword [ebp - 4]
call fcn.00545724
mov eax, dword [ebp - 4]
cmp dword [eax + 0x50], 0
jbe 0x545b45
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x50]
push eax
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x74]
mov ecx, 5
mov eax, dword [ebp - 4]
call fcn.00545724
mov eax, dword [ebp - 4]
cmp dword [eax + 0x48], 0
jbe 0x545b68
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x48]
push eax
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x74]
mov ecx, 6
mov eax, dword [ebp - 4]
call fcn.00545724
mov eax, dword [ebp - 4]
cmp byte [eax + 0x54], 0
jne 0x545b86
push 2
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x74]
mov ecx, 0x3f
mov eax, dword [ebp - 4]
call fcn.00545724
mov eax, dword [ebp - 4]
cmp dword [eax + 0x74], 0
je 0x545ba0
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x74]
mov ecx, dword [ebp - 0x48]
mov eax, dword [ebp - 4]
call fcn.0054546c
mov eax, dword [ebp - 4]
cmp dword [eax + 0x74], 0
je 0x545bb7
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x74]
mov eax, dword [ebp - 4]
call fcn.00545738
mov eax, dword [ebp - 4]
cmp dword [eax + 0x74], 0
je 0x545bce
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x74]
mov eax, dword [ebp - 4]
call fcn.00545870
mov eax, dword [ebp - 4]
cmp dword [eax + 0x74], 0
je 0x545be5
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x74]
mov eax, dword [ebp - 4]
call fcn.00545698
mov eax, dword [ebp - 4]
cmp dword [eax + 0x74], 0
je 0x545bfc
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x74]
mov eax, dword [ebp - 4]
call fcn.005457b0
mov eax, dword [ebp - 4]
cmp dword [eax + 0x74], 0
je 0x545c13
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x74]
mov eax, dword [ebp - 4]
call fcn.0054631c
mov eax, dword [ebp - 4]
cmp byte [eax + 4], 0
je 0x545c26
xor eax, eax
mov dword [ebp - 0x14], eax
jmp 0x54607c
mov eax, dword [ebp - 4]
cmp dword [eax + 0x74], 0
je 0x545cc7
mov eax, dword [ebp - 0x1c]
mov edx, 0x54614c
call fcn.00405690
jne 0x545c5f
push 0
push 0
push 0
push 0
push 0
push 0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x74]
push eax
call sub.winhttp.dll_WinHttpSendRequest
mov dword [ebp - 0x14], eax
jmp 0x545cc7
cmp byte [ebp + 0x10], 0
jne 0x545c7a
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x74]
mov ecx, 0x5461dc
mov eax, dword [ebp - 4]
call fcn.00545638
jmp 0x545ca6
lea eax, [ebp - 0x6c]
mov ecx, dword [ebp + 0xc]
mov edx, 0x546244
call fcn.00404fc0
mov edx, dword [ebp - 0x6c]
lea eax, [ebp - 0x68]
call fcn.00405554
mov ecx, dword [ebp - 0x68]
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x74]
mov eax, dword [ebp - 4]
call fcn.00545638
push 0
mov eax, dword [ebp + 0x14]
push eax
mov eax, dword [ebp + 0x14]
push eax
mov eax, dword [ebp - 0xc]
push eax
push 0
push 0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x74]
push eax
call sub.winhttp.dll_WinHttpSendRequest
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 4]
cmp byte [eax + 4], 0
je 0x545cda
xor eax, eax
mov dword [ebp - 0x14], eax
jmp 0x54607c
cmp dword [ebp - 0x14], 0
je 0x545cf1
push 0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x74]
push eax
call sub.winhttp.dll_WinHttpReceiveResponse
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 4]
cmp byte [eax + 4], 0
je 0x545d04
xor eax, eax
mov dword [ebp - 0x14], eax
jmp 0x54607c
mov eax, dword [ebp - 4]
add eax, 0x2c
call fcn.004053c0
mov eax, dword [ebp - 4]
add eax, 0x3c
call fcn.004053c0
mov eax, dword [ebp - 4]
add eax, 0x38
call fcn.004053c0
mov eax, dword [ebp - 4]
add eax, 8
call fcn.004053c0
mov eax, dword [ebp - 4]
add eax, 0xc
call fcn.004053c0
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + 0x64], edx
mov eax, dword [ebp - 4]
add eax, 0x68
call fcn.004053c0
mov eax, dword [ebp - 4]
add eax, 0x60
call fcn.00404cb4
cmp dword [ebp - 0x14], 0
je 0x545e7e
mov eax, dword [ebp - 4]
add eax, 0x2c
push eax
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x74]
mov ecx, 0x13
mov eax, dword [ebp - 4]
call fcn.00544eb4
mov eax, dword [ebp - 4]
add eax, 0x3c
push eax
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x74]
mov ecx, 1
mov eax, dword [ebp - 4]
call fcn.00544eb4
mov eax, dword [ebp - 4]
add eax, 0x38
push eax
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x74]
mov ecx, 0x1d
mov eax, dword [ebp - 4]
call fcn.00544eb4
mov eax, dword [ebp - 4]
add eax, 8
push eax
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x74]
mov ecx, 0x16
mov eax, dword [ebp - 4]
call fcn.00544eb4
mov eax, dword [ebp - 4]
add eax, 0xc
push eax
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x74]
mov ecx, 0x80000016
mov eax, dword [ebp - 4]
call fcn.00544eb4
lea eax, [ebp - 0x20]
push eax
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x74]
mov ecx, 5
mov eax, dword [ebp - 4]
call fcn.0054501c
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 0x20]
mov dword [eax + 0x64], edx
mov eax, dword [ebp - 4]
add eax, 0x68
mov edx, dword [ebp - 4]
mov edx, dword [edx + 8]
call fcn.004053fc
lea eax, [ebp - 0x54]
call fcn.004053c0
lea eax, [ebp - 0x54]
push eax
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x74]
mov ecx, 0x2b
mov eax, dword [ebp - 4]
call fcn.00544eb4
mov eax, dword [ebp - 0x54]
call fcn.005449e8
mov eax, dword [ebp - 4]
add eax, 0x60
mov edx, dword [ebp - 0x54]
call fcn.00404f3c
lea ecx, [ebp - 0x70]
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x74]
mov eax, dword [ebp - 4]
call fcn.005450d0
mov eax, dword [ebp - 0x20]
xor edx, edx
push edx
push eax
lea eax, [ebp - 0x74]
call fcn.0040c5f0
mov eax, dword [ebp - 0x74]
call fcn.005449c0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 8]
call fcn.005449e8
xor eax, eax
mov dword [ebp - 0x24], eax
mov word [ebp - 0x2a], 0
xor eax, eax
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], eax
call sub.kernel32.dll_GetTickCount_1
mov dword [ebp - 0x3c], eax
cmp byte [ebp + 8], 0
je 0x545ea4
xor eax, eax
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 4]
cmp byte [eax + 4], 0
je 0x545eb7
xor eax, eax
mov dword [ebp - 0x14], eax
jmp 0x54607c
cmp dword [ebp - 0x14], 0
je 0x54607c
mov eax, dword [ebp - 4]
cmp byte [eax + 4], 0
je 0x545ed9
mov eax, 0x54627c
call fcn.005449c0
jmp 0x54607c
xor eax, eax
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x74]
push eax
call sub.winhttp.dll_WinHttpQueryDataAvailable
test eax, eax
jne 0x545f1e
lea eax, [ebp - 0x78]
push eax
call sub.kernel32.dll_GetLastError_1
mov dword [ebp - 0x80], eax
mov byte [ebp - 0x7c], 0
lea edx, [ebp - 0x80]
xor ecx, ecx
mov eax, 0x54628c
call fcn.0040d808
mov eax, dword [ebp - 0x78]
call fcn.005449c0
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x10], 0
je 0x54607c
mov eax, dword [ebp - 0x10]
call fcn.0040bcf4
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 0
jne 0x545f52
mov eax, 0x5462bc
call fcn.005449c0
xor eax, eax
mov dword [ebp - 0x10], eax
xor eax, eax
mov dword [ebp - 0x14], eax
jmp 0x54606a
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x18]
call fcn.00408328
lea eax, [ebp - 0x28]
push eax
mov eax, dword [ebp - 0x10]
push eax
mov eax, dword [ebp - 0x18]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x74]
push eax
call sub.winhttp.dll_WinHttpReadData
test eax, eax
jne 0x545fb0
lea eax, [ebp - 0x84]
push eax
call sub.kernel32.dll_GetLastError_1
mov dword [ebp - 0x80], eax
mov byte [ebp - 0x7c], 0
lea edx, [ebp - 0x80]
xor ecx, ecx
mov eax, 0x5462d4
call fcn.0040d808
mov eax, dword [ebp - 0x84]
call fcn.005449c0
xor eax, eax
mov dword [ebp - 0x14], eax
jmp 0x54606a
mov edx, dword [ebp - 0x18]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x14]
mov ecx, dword [ebp - 0x28]
call fcn.00421448
mov eax, dword [ebp - 0x28]
add dword [ebp - 0x24], eax
cmp dword [ebp - 0x20], 0
jbe 0x545fda
imul eax, dword [ebp - 0x24], 0x64
xor edx, edx
div dword [ebp - 0x20]
mov word [ebp - 0x2a], ax
call sub.kernel32.dll_GetTickCount_1
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x40]
sub eax, dword [ebp - 0x3c]
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 0
jbe 0x546028
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x80], eax
xor eax, eax
mov dword [ebp - 0x7c], eax
fild qword [ebp - 0x80]
mov eax, dword [ebp - 0x44]
mov dword [ebp - 0x8c], eax
xor eax, eax
mov dword [ebp - 0x88], eax
fild qword [ebp - 0x8c]
fdiv dword [0x5462f4]
fdivp st(1)
fdiv dword [0x5462f8]
fstp qword [ebp - 0x38]
wait
xor eax, eax
push ebp
push 0x546060
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 4]
cmp word [eax + 0x42], 0
je 0x546056
push dword [ebp - 0x34]
push dword [ebp - 0x38]
mov ebx, dword [ebp - 4]
mov cx, word [ebp - 0x2a]
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x44]
call dword [ebx + 0x40]
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x54606a
mov eax, dword [ebp - 0x18]
call fcn.00402e34
cmp dword [ebp - 0x10], 0
jne 0x545ec1
cmp dword [ebp - 0x14], 0
jne 0x5460af
lea eax, [ebp - 0x90]
push eax
call sub.kernel32.dll_GetLastError_1
mov dword [ebp - 0x80], eax
mov byte [ebp - 0x7c], 0
lea edx, [ebp - 0x80]
xor ecx, ecx
mov eax, 0x546304
call fcn.0040d808
mov eax, dword [ebp - 0x90]
call fcn.005449c0
cmp dword [ebp - 0x14], 1
sbb ebx, ebx
inc ebx
mov eax, dword [ebp - 4]
call fcn.005463a4
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x54613b
lea eax, [ebp - 0x90]
call fcn.00404cb4
lea eax, [ebp - 0x84]
call fcn.00404cb4
lea eax, [ebp - 0x78]
mov edx, 2
call fcn.00404cd8
lea eax, [ebp - 0x70]
call fcn.004053c0
lea eax, [ebp - 0x6c]
call fcn.00404cb4
lea eax, [ebp - 0x68]
call fcn.004053c0
lea eax, [ebp - 0x54]
call fcn.004053c0
lea eax, [ebp - 0x4c]
mov edx, 2
call fcn.004053d8
lea eax, [ebp - 0x1c]
call fcn.004053c0
lea eax, [ebp - 8]
call fcn.00404cb4
lea eax, [ebp + 0xc]
call fcn.00404cb4
ret