Function at 0x45cf30
Capabilities:
Initialize winhttp library
Prepare http request
Read http header
Receive http response
Set http header

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x693361
mov eax, dword fs:[0]
push eax
mov eax, 0x13c4
call fcn.00482d80
mov eax, dword [0x737100]
xor eax, ebp
mov dword [ebp - 0x10], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x12bc], ecx
mov ecx, dword [ebp - 0x12bc]
add ecx, 0x20
call fcn.00404000
test eax, eax
ja 0x45cf8e
mov eax, dword [ebp - 0x12bc]
mov dword [eax + 0x104], 3
xor al, al
jmp 0x45e19b
mov byte [ebp - 0x12c5], 1
mov ecx, dword [ebp - 0x12bc]
cmp dword [ecx], 0
jne 0x45cfec
push 0
push 0
push 0
push 0
mov ecx, dword [ebp - 0x12bc]
add ecx, 0x120
call fcn.00403020
push eax
call dword [sym.imp.WINHTTP.dll_WinHttpOpen]
mov edx, dword [ebp - 0x12bc]
mov dword [edx], eax
mov eax, dword [ebp - 0x12bc]
cmp dword [eax], 0
jne 0x45cfec
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, dword [ebp - 0x12bc]
mov dword [ecx + 0x104], eax
xor al, al
jmp 0x45e19b
mov edx, dword [ebp - 0x12bc]
mov eax, dword [edx + 0x190]
push eax
mov ecx, dword [ebp - 0x12bc]
mov edx, dword [ecx + 0x18c]
push edx
mov eax, dword [ebp - 0x12bc]
mov ecx, dword [eax + 0x188]
push ecx
mov edx, dword [ebp - 0x12bc]
mov eax, dword [edx + 0x184]
push eax
mov ecx, dword [ebp - 0x12bc]
mov edx, dword [ecx]
push edx
call dword [sym.imp.WINHTTP.dll_WinHttpSetTimeouts]
mov ax, word [0x720784]
mov word [ebp - 0x218], ax
push 0x206
push 0
lea ecx, [ebp - 0x216]
push ecx
call fcn.004ded70
add esp, 0xc
mov dx, word [0x7207a0]
mov word [ebp - 0x1258], dx
push 0xa26
push 0
lea eax, [ebp - 0x1256]
push eax
call fcn.004ded70
add esp, 0xc
push 0x3c
push 0
lea ecx, [ebp - 0x13d0]
push ecx
call fcn.004ded70
add esp, 0xc
mov dword [ebp - 0x13d0], 0x3c
lea edx, [ebp - 0x218]
mov dword [ebp - 0x13c0], edx
mov dword [ebp - 0x13bc], 0x104
lea eax, [ebp - 0x1258]
mov dword [ebp - 0x13a4], eax
mov dword [ebp - 0x13a0], 0x514
mov dword [ebp - 0x13c8], 1
lea ecx, [ebp - 0x13d0]
push ecx
push 0
mov ecx, dword [ebp - 0x12bc]
add ecx, 0x20
call fcn.00404000
push eax
mov ecx, dword [ebp - 0x12bc]
add ecx, 0x20
call fcn.00403020
push eax
call dword [sym.imp.WINHTTP.dll_WinHttpCrackUrl]
test eax, eax
je 0x45e195
lea edx, [ebp - 0x218]
push edx
mov ecx, dword [ebp - 0x12bc]
add ecx, 0x38
call fcn.00405fd0
mov dword [ebp - 0x1300], 0
push 0
movzx eax, word [ebp - 0x13b8]
push eax
lea ecx, [ebp - 0x218]
push ecx
mov edx, dword [ebp - 0x12bc]
mov eax, dword [edx]
push eax
call dword [sym.imp.WINHTTP.dll_WinHttpConnect]
mov dword [ebp - 0x1300], eax
cmp dword [ebp - 0x1300], 0
je 0x45e195
cmp dword [ebp - 0x13c4], 2
jne 0x45d165
mov dword [ebp - 0x1328], 0x800000
jmp 0x45d16f
mov dword [ebp - 0x1328], 0
mov ecx, dword [ebp - 0x1328]
mov dword [ebp - 0x1380], ecx
mov dword [ebp - 0x12c4], 0
mov edx, dword [ebp - 0x1380]
push edx
push 0
push 0
push 0
mov eax, dword [ebp - 0x13a4]
push eax
mov ecx, dword [ebp - 0x12bc]
add ecx, 4
call fcn.00403020
push eax
mov ecx, dword [ebp - 0x1300]
push ecx
call dword [sym.imp.WINHTTP.dll_WinHttpOpenRequest]
mov dword [ebp - 0x12c4], eax
cmp dword [ebp - 0x12c4], 0
je 0x45e188
mov edx, dword [ebp - 0x12bc]
movzx eax, byte [edx + 0x1c]
test eax, eax
jne 0x45d201
cmp dword [ebp - 0x13c4], 2
jne 0x45d201
mov dword [ebp - 0x137c], 0x3100
push 4
lea ecx, [ebp - 0x137c]
push ecx
push 0x1f
mov edx, dword [ebp - 0x12c4]
push edx
call dword [sym.imp.WINHTTP.dll_WinHttpSetOption]
mov byte [ebp - 0x12c6], 0
mov dword [ebp - 0x1314], 0
movzx eax, byte [ebp - 0x12c6]
test eax, eax
jne 0x45e169
mov ecx, dword [ebp - 0x1314]
mov dword [ebp - 0x1374], ecx
mov edx, dword [ebp - 0x1314]
add edx, 1
mov dword [ebp - 0x1314], edx
cmp dword [ebp - 0x1374], 3
jae 0x45e169
mov dword [ebp - 0x12dc], 0
jmp 0x45d264
mov eax, dword [ebp - 0x12dc]
add eax, 1
mov dword [ebp - 0x12dc], eax
mov ecx, dword [ebp - 0x12bc]
add ecx, 0xe0
call fcn.00421a30
cmp dword [ebp - 0x12dc], eax
jae 0x45d2ea
push 0x1000000
mov ecx, dword [ebp - 0x12dc]
push ecx
mov ecx, dword [ebp - 0x12bc]
add ecx, 0xe0
call fcn.0045f770
mov ecx, eax
call fcn.00404000
push eax
mov edx, dword [ebp - 0x12dc]
push edx
mov ecx, dword [ebp - 0x12bc]
add ecx, 0xe0
call fcn.0045f770
mov ecx, eax
call fcn.00403020
push eax
mov eax, dword [ebp - 0x12c4]
push eax
call dword [sym.imp.WINHTTP.dll_WinHttpAddRequestHeaders]
test eax, eax
jne 0x45d2e5
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, dword [ebp - 0x12bc]
mov dword [ecx + 0x104], eax
jmp 0x45d255
mov ecx, dword [ebp - 0x12bc]
add ecx, 0xc0
call fcn.00404000
test eax, eax
jbe 0x45d384
push str.Cookie:
lea ecx, [ebp - 0x1288]
call fcn.00403090
mov dword [ebp - 4], 0
mov edx, dword [ebp - 0x12bc]
add edx, 0xc0
push edx
lea ecx, [ebp - 0x1288]
call fcn.00421e20
push 0x1000000
lea ecx, [ebp - 0x1288]
call fcn.00404000
push eax
lea ecx, [ebp - 0x1288]
call fcn.00403020
push eax
mov eax, dword [ebp - 0x12c4]
push eax
call dword [sym.imp.WINHTTP.dll_WinHttpAddRequestHeaders]
test eax, eax
jne 0x45d372
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, dword [ebp - 0x12bc]
mov dword [ecx + 0x104], eax
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1288]
call fcn.00403030
mov ecx, dword [ebp - 0x12bc]
add ecx, 0xec
call fcn.00404000
test eax, eax
jbe 0x45d508
xor edx, edx
mov dword [ebp - 0x1394], edx
mov dword [ebp - 0x1390], edx
mov dword [ebp - 0x138c], edx
mov dword [ebp - 0x1394], 3
mov ax, word [0x7207ac]
mov word [ebp - 0x830], ax
push 0x206
push 0
lea ecx, [ebp - 0x82e]
push ecx
call fcn.004ded70
add esp, 0xc
mov ecx, dword [ebp - 0x12bc]
add ecx, 0xec
call fcn.00403020
push eax
push 0x104
lea edx, [ebp - 0x830]
push edx
call fcn.0051a043
add esp, 0xc
lea eax, [ebp - 0x830]
mov dword [ebp - 0x1390], eax
push 0xc
lea ecx, [ebp - 0x1394]
push ecx
push 0x26
mov edx, dword [ebp - 0x12c4]
push edx
call dword [sym.imp.WINHTTP.dll_WinHttpSetOption]
test eax, eax
jne 0x45d43e
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, dword [ebp - 0x12bc]
mov dword [ecx + 0x104], eax
mov ecx, dword [ebp - 0x12bc]
add ecx, 0x13c
call fcn.00404000
test eax, eax
jbe 0x45d508
mov ecx, dword [ebp - 0x12bc]
add ecx, 0x13c
call fcn.00404000
shl eax, 1
push eax
mov ecx, dword [ebp - 0x12bc]
add ecx, 0x13c
call fcn.00403020
push eax
push 0x1002
mov edx, dword [ebp - 0x12c4]
push edx
call dword [sym.imp.WINHTTP.dll_WinHttpSetOption]
test eax, eax
jne 0x45d4a5
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, dword [ebp - 0x12bc]
mov dword [ecx + 0x104], eax
mov ecx, dword [ebp - 0x12bc]
add ecx, 0x154
call fcn.00404000
test eax, eax
jbe 0x45d508
mov ecx, dword [ebp - 0x12bc]
add ecx, 0x154
call fcn.00404000
shl eax, 1
push eax
mov ecx, dword [ebp - 0x12bc]
add ecx, 0x154
call fcn.00403020
push eax
push 0x1003
mov edx, dword [ebp - 0x12c4]
push edx
call dword [sym.imp.WINHTTP.dll_WinHttpSetOption]
test eax, eax
jne 0x45d508
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, dword [ebp - 0x12bc]
mov dword [ecx + 0x104], eax
movzx edx, byte [ebp + 8]
test edx, edx
je 0x45d548
mov dword [ebp - 0x1370], 2
push 4
lea eax, [ebp - 0x1370]
push eax
push 0x3f
mov ecx, dword [ebp - 0x12c4]
push ecx
call dword [sym.imp.WINHTTP.dll_WinHttpSetOption]
test eax, eax
jne 0x45d548
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, dword [ebp - 0x12bc]
mov dword [edx + 0x104], eax
mov byte [ebp - 0x12bd], 0
push 0x7207a4
mov eax, dword [ebp - 0x12bc]
add eax, 4
push eax
call fcn.004254e0
add esp, 8
movzx ecx, al
test ecx, ecx
je 0x45d593
push 0
push 0
push 0
push 0
push 0
push 0
mov edx, dword [ebp - 0x12c4]
push edx
call dword [sym.imp.WINHTTP.dll_WinHttpSendRequest]
test eax, eax
je 0x45d591
mov byte [ebp - 0x12bd], 1
jmp 0x45d60a
push str.POST
mov eax, dword [ebp - 0x12bc]
add eax, 4
push eax
call fcn.004254e0
add esp, 8
movzx ecx, al
test ecx, ecx
je 0x45d60a
push 0
mov edx, dword [ebp - 0x12bc]
mov eax, dword [edx + 0xdc]
push eax
mov ecx, dword [ebp - 0x12bc]
mov edx, dword [ecx + 0xdc]
push edx
mov eax, dword [ebp - 0x12bc]
mov ecx, dword [eax + 0xd8]
push ecx
push 0
push 0
mov edx, dword [ebp - 0x12c4]
push edx
call dword [sym.imp.WINHTTP.dll_WinHttpSendRequest]
test eax, eax
je 0x45d5f8
mov byte [ebp - 0x12bd], 1
jmp 0x45d60a
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, dword [ebp - 0x12bc]
mov dword [ecx + 0x104], eax
movzx edx, byte [ebp - 0x12bd]
test edx, edx
jne 0x45d8cf
xor eax, eax
mov dword [ebp - 0x1310], eax
mov dword [ebp - 0x130c], eax
mov dword [ebp - 0x1308], eax
mov dword [ebp - 0x1304], eax
lea ecx, [ebp - 0x1310]
push ecx
call dword [sym.imp.WINHTTP.dll_WinHttpGetIEProxyConfigForCurrentUser]
test eax, eax
je 0x45d8bd
cmp dword [ebp - 0x130c], 0
je 0x45d782
xor edx, edx
mov dword [ebp - 0x134c], edx
mov dword [ebp - 0x1348], edx
mov dword [ebp - 0x1344], edx
mov dword [ebp - 0x1340], edx
mov dword [ebp - 0x133c], edx
mov dword [ebp - 0x1338], edx
mov dword [ebp - 0x134c], 3
mov dword [ebp - 0x1348], 1
mov eax, dword [ebp - 0x130c]
mov dword [ebp - 0x1344], eax
mov dword [ebp - 0x1338], 1
mov dword [ebp - 0x133c], 0
mov dword [ebp - 0x1340], 0
xor ecx, ecx
mov dword [ebp - 0x1324], ecx
mov dword [ebp - 0x1320], ecx
mov dword [ebp - 0x131c], ecx
lea edx, [ebp - 0x1324]
push edx
lea eax, [ebp - 0x134c]
push eax
mov ecx, dword [ebp - 0x12bc]
add ecx, 0x20
call fcn.00403020
push eax
mov ecx, dword [ebp - 0x12bc]
mov edx, dword [ecx]
push edx
call dword [sym.imp.WINHTTP.dll_WinHttpGetProxyForUrl]
test eax, eax
je 0x45d76b
push 0xc
lea eax, [ebp - 0x1324]
push eax
push 0x26
mov ecx, dword [ebp - 0x12c4]
push ecx
call dword [sym.imp.WINHTTP.dll_WinHttpSetOption]
test eax, eax
je 0x45d73d
push 0
push 0
push 0
push 0
push 0
push 0
mov edx, dword [ebp - 0x12c4]
push edx
call dword [sym.imp.WINHTTP.dll_WinHttpSendRequest]
test eax, eax
je 0x45d73d
mov byte [ebp - 0x12bd], 1
cmp dword [ebp - 0x1320], 0
je 0x45d753
mov eax, dword [ebp - 0x1320]
push eax
call dword [sym.imp.KERNEL32.dll_GlobalFree]
cmp dword [ebp - 0x131c], 0
je 0x45d769
mov ecx, dword [ebp - 0x131c]
push ecx
call dword [sym.imp.KERNEL32.dll_GlobalFree]
jmp 0x45d77d
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, dword [ebp - 0x12bc]
mov dword [edx + 0x104], eax
jmp 0x45d879
cmp dword [ebp - 0x1308], 0
je 0x45d879
xor eax, eax
mov dword [ebp - 0x1334], eax
mov dword [ebp - 0x1330], eax
mov dword [ebp - 0x132c], eax
mov dword [ebp - 0x1334], 3
mov cx, word [0x7207b0]
mov word [ebp - 0x628], cx
push 0x206
push 0
lea edx, [ebp - 0x626]
push edx
call fcn.004ded70
add esp, 0xc
mov eax, dword [ebp - 0x1308]
push eax
push 0x104
lea ecx, [ebp - 0x628]
push ecx
call fcn.0051a043
add esp, 0xc
lea edx, [ebp - 0x628]
mov dword [ebp - 0x1330], edx
cmp dword [ebp - 0x1304], 0
je 0x45d84b
mov ax, word [0x7207c4]
mov word [ebp - 0x420], ax
push 0x206
push 0
lea ecx, [ebp - 0x41e]
push ecx
call fcn.004ded70
add esp, 0xc
mov edx, dword [ebp - 0x1304]
push edx
push 0x104
lea eax, [ebp - 0x420]
push eax
call fcn.0051a043
add esp, 0xc
lea ecx, [ebp - 0x420]
mov dword [ebp - 0x132c], ecx
push 0xc
lea edx, [ebp - 0x1334]
push edx
push 0x26
mov eax, dword [ebp - 0x12c4]
push eax
call dword [sym.imp.WINHTTP.dll_WinHttpSetOption]
test eax, eax
jne 0x45d879
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, dword [ebp - 0x12bc]
mov dword [ecx + 0x104], eax
cmp dword [ebp - 0x130c], 0
je 0x45d88f
mov edx, dword [ebp - 0x130c]
push edx
call dword [sym.imp.KERNEL32.dll_GlobalFree]
cmp dword [ebp - 0x1308], 0
je 0x45d8a5
mov eax, dword [ebp - 0x1308]
push eax
call dword [sym.imp.KERNEL32.dll_GlobalFree]
cmp dword [ebp - 0x1304], 0
je 0x45d8bb
mov ecx, dword [ebp - 0x1304]
push ecx
call dword [sym.imp.KERNEL32.dll_GlobalFree]
jmp 0x45d8cf
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, dword [ebp - 0x12bc]
mov dword [edx + 0x104], eax
movzx eax, byte [ebp - 0x12bd]
test eax, eax
je 0x45e164
push 0
mov ecx, dword [ebp - 0x12c4]
push ecx
call dword [sym.imp.WINHTTP.dll_WinHttpReceiveResponse]
test eax, eax
je 0x45e152
mov dword [ebp - 0x12cc], 0
mov dword [ebp - 0x12d8], 0
push 0
lea edx, [ebp - 0x12cc]
push edx
push 0
push 0
push 0x16
mov eax, dword [ebp - 0x12c4]
push eax
call dword [sym.imp.WINHTTP.dll_WinHttpQueryHeaders]
mov dword [ebp - 0x12d8], eax
cmp dword [ebp - 0x12d8], 0
jne 0x45d950
cmp dword [ebp - 0x12d8], 0
jne 0x45dd40
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x7a
jne 0x45dd40
xor ecx, ecx
mov eax, dword [ebp - 0x12cc]
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.00481ca1
add esp, 4
mov dword [ebp - 0x136c], eax
mov eax, dword [ebp - 0x136c]
mov dword [ebp - 0x12e4], eax
cmp dword [ebp - 0x12e4], 0
je 0x45dd40
mov ecx, dword [ebp - 0x12cc]
shl ecx, 1
push ecx
push 0
mov edx, dword [ebp - 0x12e4]
push edx
call fcn.004ded70
add esp, 0xc
push 0
lea eax, [ebp - 0x12cc]
push eax
mov ecx, dword [ebp - 0x12e4]
push ecx
push 0
push 0x16
mov edx, dword [ebp - 0x12c4]
push edx
call dword [sym.imp.WINHTTP.dll_WinHttpQueryHeaders]
test eax, eax
je 0x45dd25
mov eax, dword [ebp - 0x12e4]
push eax
mov ecx, dword [ebp - 0x12bc]
add ecx, 0x50
call fcn.004060f0
lea ecx, [ebp - 0x12f8]
call fcn.0040f570
mov dword [ebp - 4], 1
push 0x7207c0
lea ecx, [ebp - 0x1270]
call fcn.00403090
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x12bc]
movzx edx, byte [ecx + 0x138]
test edx, edx
jne 0x45da88
push str.charset_A_Za_z0_9___
lea ecx, [ebp - 0x1270]
call fcn.00405fd0
push 0
lea eax, [ebp - 0x12f8]
push eax
mov ecx, dword [ebp - 0x12bc]
add ecx, 0x50
push ecx
push 1
push 0
lea edx, [ebp - 0x1270]
push edx
call fcn.0045c6c0
add esp, 0x18
movzx eax, al
test eax, eax
je 0x45da88
lea ecx, [ebp - 0x12f8]
call fcn.00421a30
test eax, eax
jbe 0x45da88
push 0
lea ecx, [ebp - 0x12f8]
call fcn.0045f770
push eax
mov ecx, dword [ebp - 0x12bc]
add ecx, 0x80
call fcn.00406000
push str.Content_Length:__0_9_
lea ecx, [ebp - 0x1270]
call fcn.00405fd0
push 0
lea ecx, [ebp - 0x12f8]
push ecx
mov edx, dword [ebp - 0x12bc]
add edx, 0x50
push edx
push 1
push 0
lea eax, [ebp - 0x1270]
push eax
call fcn.0045c6c0
add esp, 0x18
movzx ecx, al
test ecx, ecx
je 0x45dafd
lea ecx, [ebp - 0x12f8]
call fcn.00421a30
test eax, eax
jbe 0x45dafd
push 0
lea ecx, [ebp - 0x12f8]
call fcn.0045f770
mov ecx, eax
call fcn.00403020
push eax
call fcn.005090d1
add esp, 4
mov edx, dword [ebp - 0x12bc]
mov dword [edx + 0xa4], eax
push str.Location:__0_9_
lea ecx, [ebp - 0x1270]
call fcn.00405fd0
push 0
lea eax, [ebp - 0x12f8]
push eax
mov ecx, dword [ebp - 0x12bc]
add ecx, 0x50
push ecx
push 1
push 0
lea edx, [ebp - 0x1270]
push edx
call fcn.0045c6c0
add esp, 0x18
movzx eax, al
test eax, eax
je 0x45db68
lea ecx, [ebp - 0x12f8]
call fcn.00421a30
test eax, eax
jbe 0x45db68
push 0
lea ecx, [ebp - 0x12f8]
call fcn.0045f770
push eax
mov ecx, dword [ebp - 0x12bc]
add ecx, 0x16c
call fcn.00406000
push str.Set_Cookie:_b.__n
lea ecx, [ebp - 0x1270]
call fcn.00405fd0
push 0
lea ecx, [ebp - 0x12f8]
push ecx
mov edx, dword [ebp - 0x12bc]
add edx, 0x50
push edx
push 1
push 0
lea eax, [ebp - 0x1270]
push eax
call fcn.0045c6c0
add esp, 0x18
movzx ecx, al
test ecx, ecx
je 0x45dd04
lea ecx, [ebp - 0x12f8]
call fcn.00421a30
test eax, eax
jbe 0x45dd04
mov dword [ebp - 0x12e0], 0
jmp 0x45dbd7
mov edx, dword [ebp - 0x12e0]
add edx, 1
mov dword [ebp - 0x12e0], edx
lea ecx, [ebp - 0x12f8]
call fcn.00421a30
cmp dword [ebp - 0x12e0], eax
jae 0x45dc3c
mov eax, dword [ebp - 0x12e0]
push eax
lea ecx, [ebp - 0x12f8]
call fcn.0045f770
push eax
mov ecx, dword [ebp - 0x12bc]
add ecx, 0xa8
call fcn.00421e20
lea ecx, [ebp - 0x12f8]
call fcn.00421a30
sub eax, 1
cmp dword [ebp - 0x12e0], eax
je 0x45dc3a
push 0x720888
mov ecx, dword [ebp - 0x12bc]
add ecx, 0xa8
call fcn.0040cf50
jmp 0x45dbc8
push 0x720884
lea ecx, [ebp - 0x12a0]
call fcn.00403090
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x12a0]
push ecx
mov edx, dword [ebp - 0x12bc]
add edx, 0xa8
push edx
lea eax, [ebp - 0x12b8]
push eax
call fcn.0045c4f0
add esp, 0xc
mov dword [ebp - 0x1360], eax
mov ecx, dword [ebp - 0x1360]
push ecx
mov ecx, dword [ebp - 0x12bc]
add ecx, 0xa8
call fcn.00406030
lea ecx, [ebp - 0x12b8]
call fcn.00403030
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x12a0]
call fcn.00403030
mov ecx, dword [ebp - 0x12bc]
add ecx, 0xa8
call fcn.00404000
test eax, eax
jbe 0x45dd04
mov ecx, dword [ebp - 0x12bc]
add ecx, 0xa8
call fcn.00404000
sub eax, 1
push eax
mov ecx, dword [ebp - 0x12bc]
add ecx, 0xa8
call fcn.0040f5e0
movzx edx, word [eax]
cmp edx, 0x3b
je 0x45dd04
push 0x720898
mov ecx, dword [ebp - 0x12bc]
add ecx, 0xa8
call fcn.0040cf50
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x1270]
call fcn.00403030
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x12f8]
call fcn.00402ec0
mov eax, dword [ebp - 0x12e4]
mov dword [ebp - 0x1378], eax
mov ecx, dword [ebp - 0x1378]
push ecx
call fcn.00481c9c
add esp, 4
mov dword [ebp - 0x12cc], 0
push 0
lea edx, [ebp - 0x12cc]
push edx
push 0
push 0
push 0x13
mov eax, dword [ebp - 0x12c4]
push eax
call dword [sym.imp.WINHTTP.dll_WinHttpQueryHeaders]
mov dword [ebp - 0x12d8], eax
cmp dword [ebp - 0x12d8], 0
jne 0x45dd91
cmp dword [ebp - 0x12d8], 0
jne 0x45de3d
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x7a
jne 0x45de3d
xor ecx, ecx
mov eax, dword [ebp - 0x12cc]
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.00481ca1
add esp, 4
mov dword [ebp - 0x1354], eax
mov eax, dword [ebp - 0x1354]
mov dword [ebp - 0x12e8], eax
cmp dword [ebp - 0x12e8], 0
je 0x45de3d
mov ecx, dword [ebp - 0x12cc]
shl ecx, 1
push ecx
push 0
mov edx, dword [ebp - 0x12e8]
push edx
call fcn.004ded70
add esp, 0xc
push 0
lea eax, [ebp - 0x12cc]
push eax
mov ecx, dword [ebp - 0x12e8]
push ecx
push 0
push 0x13
mov edx, dword [ebp - 0x12c4]
push edx
call dword [sym.imp.WINHTTP.dll_WinHttpQueryHeaders]
test eax, eax
je 0x45de22
mov eax, dword [ebp - 0x12e8]
push eax
mov ecx, dword [ebp - 0x12bc]
add ecx, 0x108
call fcn.00405fd0
mov ecx, dword [ebp - 0x12e8]
mov dword [ebp - 0x1358], ecx
mov edx, dword [ebp - 0x1358]
push edx
call fcn.00481c9c
add esp, 4
mov dword [ebp - 0x12d4], 0x2800
mov dword [ebp - 0x12d0], 0
mov eax, dword [ebp - 0x12bc]
cmp dword [eax + 0x98], 0
je 0x45de91
mov ecx, dword [ebp - 0x12bc]
mov edx, dword [ecx + 0x98]
mov dword [ebp - 0x135c], edx
mov eax, dword [ebp - 0x135c]
push eax
call fcn.00481c9c
add esp, 4
mov ecx, dword [ebp - 0x12bc]
mov dword [ecx + 0x98], 0
mov edx, dword [ebp - 0x12d4]
push edx
call fcn.00481ca1
add esp, 4
mov dword [ebp - 0x1364], eax
mov eax, dword [ebp - 0x12bc]
mov ecx, dword [ebp - 0x1364]
mov dword [eax + 0x98], ecx
mov edx, dword [ebp - 0x12bc]
cmp dword [edx + 0x98], 0
jne 0x45ded3
mov byte [ebp - 0x12c5], 0
jmp 0x45e169
mov eax, dword [ebp - 0x12d4]
push eax
push 0
mov ecx, dword [ebp - 0x12bc]
mov edx, dword [ecx + 0x98]
push edx
call fcn.004ded70
add esp, 0xc
mov dword [ebp - 0x12cc], 0
lea eax, [ebp - 0x12cc]
push eax
mov ecx, dword [ebp - 0x12c4]
push ecx
call dword [sym.imp.WINHTTP.dll_WinHttpQueryDataAvailable]
test eax, eax
je 0x45e0eb
mov edx, dword [ebp - 0x12d0]
push edx
mov ecx, dword [ebp - 0x12bc]
call fcn.0045e430
mov eax, dword [ebp - 0x12cc]
add eax, 1
push eax
call fcn.00481ca1
add esp, 4
mov dword [ebp - 0x1368], eax
mov ecx, dword [ebp - 0x1368]
mov dword [ebp - 0x12ec], ecx
cmp dword [ebp - 0x12ec], 0
je 0x45e0e9
mov edx, dword [ebp - 0x12cc]
add edx, 1
push edx
push 0
mov eax, dword [ebp - 0x12ec]
push eax
call fcn.004ded70
add esp, 0xc
mov dword [ebp - 0x12fc], 0
lea ecx, [ebp - 0x12fc]
push ecx
mov edx, dword [ebp - 0x12cc]
push edx
mov eax, dword [ebp - 0x12ec]
push eax
mov ecx, dword [ebp - 0x12c4]
push ecx
call dword [sym.imp.WINHTTP.dll_WinHttpReadData]
test eax, eax
je 0x45e0ce
mov edx, dword [ebp - 0x12fc]
add edx, dword [ebp - 0x12d0]
cmp edx, dword [ebp - 0x12d4]
jbe 0x45e093
mov eax, dword [ebp - 0x12bc]
mov ecx, dword [eax + 0x98]
mov dword [ebp - 0x1318], ecx
mov edx, dword [ebp - 0x12d4]
shl edx, 1
push edx
call fcn.00481ca1
add esp, 4
mov dword [ebp - 0x1384], eax
mov eax, dword [ebp - 0x12bc]
mov ecx, dword [ebp - 0x1384]
mov dword [eax + 0x98], ecx
mov edx, dword [ebp - 0x12bc]
cmp dword [edx + 0x98], 0
jne 0x45e029
mov eax, dword [ebp - 0x12bc]
mov ecx, dword [ebp - 0x1318]
mov dword [eax + 0x98], ecx
mov byte [ebp - 0x12c5], 0
jmp 0x45e10a
mov edx, dword [ebp - 0x12d4]
shl edx, 1
mov dword [ebp - 0x12d4], edx
mov eax, dword [ebp - 0x12d4]
push eax
push 0
mov ecx, dword [ebp - 0x12bc]
mov edx, dword [ecx + 0x98]
push edx
call fcn.004ded70
add esp, 0xc
mov eax, dword [ebp - 0x12d0]
push eax
mov ecx, dword [ebp - 0x1318]
push ecx
mov edx, dword [ebp - 0x12bc]
mov eax, dword [edx + 0x98]
push eax
call fcn.004de1b0
add esp, 0xc
mov ecx, dword [ebp - 0x1318]
mov dword [ebp - 0x1388], ecx
mov edx, dword [ebp - 0x1388]
push edx
call fcn.00481c9c
add esp, 4
mov eax, dword [ebp - 0x12fc]
push eax
mov ecx, dword [ebp - 0x12ec]
push ecx
mov edx, dword [ebp - 0x12bc]
mov eax, dword [edx + 0x98]
add eax, dword [ebp - 0x12d0]
push eax
call fcn.004de1b0
add esp, 0xc
mov ecx, dword [ebp - 0x12d0]
add ecx, dword [ebp - 0x12fc]
mov dword [ebp - 0x12d0], ecx
mov edx, dword [ebp - 0x12ec]
mov dword [ebp - 0x1350], edx
mov eax, dword [ebp - 0x1350]
push eax
call fcn.00481c9c
add esp, 4
jmp 0x45e0fd
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, dword [ebp - 0x12bc]
mov dword [ecx + 0x104], eax
cmp dword [ebp - 0x12cc], 0
ja 0x45def1
mov edx, dword [ebp - 0x12d0]
push edx
mov ecx, dword [ebp - 0x12bc]
call fcn.0045e430
mov eax, dword [ebp - 0x12bc]
mov ecx, dword [ebp - 0x12d0]
mov dword [eax + 0x9c], ecx
mov edx, dword [ebp - 0x12bc]
mov eax, dword [edx + 0x98]
push eax
mov ecx, dword [ebp - 0x12bc]
add ecx, 0x68
call fcn.0040f790
mov byte [ebp - 0x12c6], 1
jmp 0x45e164
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, dword [ebp - 0x12bc]
mov dword [ecx + 0x104], eax
jmp 0x45d212
movzx edx, byte [ebp - 0x12c6]
test edx, edx
jne 0x45e17b
mov byte [ebp - 0x12c5], 0
mov eax, dword [ebp - 0x12c4]
push eax
call dword [sym.imp.WINHTTP.dll_WinHttpCloseHandle]
mov ecx, dword [ebp - 0x1300]
push ecx
call dword [sym.imp.WINHTTP.dll_WinHttpCloseHandle]
mov al, byte [ebp - 0x12c5]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004815ec
mov esp, ebp
pop ebp
ret 4