Function at 0x42c740
Capabilities:
Initialize winhttp library
Prepare http request
Receive http response
Reference http user-agent string

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x480
mov eax, dword [esp + 0x49c]
mov eax, dword [esp + 0x498]
mov eax, dword [esp + 0x494]
mov dword [esp + 0x38], 0
mov dword [esp + 0x34], 0
mov dword [esp + 0x28], 0
mov dword [esp + 0x24], 0
mov dword [esp + 0x1c], 0
lea eax, [0x466d4e]
xor ecx, ecx
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 0
call dword [sym.imp.WINHTTP.dll_WinHttpOpen]
sub esp, 0x14
mov dword [esp + 0x28], eax
lea eax, [esp + 0x44]
xor ecx, ecx
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0x3c
call fcn.0044e7d0
mov dword [esp + 0x44], 0x3c
mov dword [esp + 0x4c], 0xffffffff
mov dword [esp + 0x58], 0xffffffff
mov dword [esp + 0x74], 0xffffffff
mov eax, dword [esp + 0x494]
mov dword [esp], eax
call fcn.00457248
mov ecx, dword [esp + 0x494]
xor edx, edx
lea edx, [esp + 0x44]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 0
mov dword [esp + 0xc], edx
call dword [sym.imp.WINHTTP.dll_WinHttpCrackUrl]
sub esp, 0x10
cmp eax, 0
jne 0x42c847
mov dword [esp + 0x30], 1
jmp 0x42cb78
cmp dword [esp + 0x28], 0
je 0x42c921
lea eax, [esp + 0x80]
xor ecx, ecx
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0x400
call fcn.0044e7d0
mov edx, dword [esp + 0x54]
mov eax, dword [esp + 0x58]
mov edi, eax
and edi, edi
xor edi, 0xffffffff
and edi, 0xffffffff
xor edi, 0xffffffff
xor edi, 0xffffffff
or edi, 0
xor edi, 0xffffffff
or edi, 0xfffffffd
xor edi, 0xffffffff
and edi, 0xffffffff
mov esi, eax
and esi, 0xfffffffd
imul esi, edi
mov edi, eax
xor edi, 0xfffffffd
and edi, eax
or eax, 2
mov ebx, edi
xor ebx, 0xffffffff
mov ebp, eax
and ebp, ebx
mov ecx, eax
or ecx, ebx
xor ecx, 0xffffffff
imul ecx, ebp
mov ebx, eax
and ebx, edi
or eax, edi
imul eax, ebx
add eax, ecx
xor esi, 0xffffffff
sub esi, 0xffffffff
sub eax, esi
lea ecx, [esp + 0x80]
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call fcn.0044dcd0
mov ax, word [esp + 0x5c]
lea ecx, [esp + 0x80]
mov edx, dword [esp + 0x28]
xor esi, esi
mov dword [esp], edx
mov dword [esp + 4], ecx
movzx eax, ax
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0
call dword [sym.imp.WINHTTP.dll_WinHttpConnect]
sub esp, 0x10
mov dword [esp + 0x24], eax
cmp dword [esp + 0x24], 0
je 0x42c97c
mov ecx, dword [esp + 0x50]
mov eax, 0x800000
cmp ecx, 2
je 0x42c938
xor eax, eax
mov ecx, dword [esp + 0x70]
mov edx, dword [esp + 0x24]
lea esi, [0x466e2e]
xor edi, edi
mov dword [esp], edx
mov dword [esp + 4], esi
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x18], eax
call dword [sym.imp.WINHTTP.dll_WinHttpOpenRequest]
sub esp, 0x1c
mov dword [esp + 0x1c], eax
cmp dword [esp + 0x1c], 0
je 0x42c9c9
mov eax, dword [esp + 0x1c]
xor ecx, ecx
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x18], 0
call dword [sym.imp.WINHTTP.dll_WinHttpSendRequest]
sub esp, 0x1c
mov dword [esp + 0x34], eax
jmp 0x42c9cb
cmp dword [esp + 0x34], 0
setne al
test al, 1
jne 0x42c9d9
jmp 0x42c9fb
jmp 0x42c9db
mov eax, dword [esp + 0x1c]
xor ecx, ecx
mov dword [esp], eax
mov dword [esp + 4], 0
call dword [sym.imp.WINHTTP.dll_WinHttpReceiveResponse]
sub esp, 8
mov dword [esp + 0x34], eax
jmp 0x42c9fb
mov dword [esp + 0x20], 0
cmp dword [esp + 0x34], 0
setne al
test al, 1
jne 0x42ca14
jmp 0x42cb04
mov dword [esp + 0x2c], 0
jmp 0x42ca1e
mov eax, dword [esp + 0x1c]
lea ecx, [esp + 0x2c]
mov dword [esp], eax
mov dword [esp + 4], ecx
call dword [sym.imp.WINHTTP.dll_WinHttpQueryDataAvailable]
sub esp, 8
cmp eax, 0
setne cl
xor eax, eax
test cl, 1
jne 0x42ca45
jmp 0x42ca4d
cmp dword [esp + 0x2c], 0
seta al
jmp 0x42ca4f
test al, 1
jne 0x42ca58
jmp 0x42cb04
mov eax, dword [esp + 0x20]
add eax, dword [esp + 0x2c]
xor eax, 0
xor ecx, ecx
sub ecx, eax
add ecx, 0xffffffff
xor eax, eax
sub eax, ecx
mov ecx, dword [esp + 0x38]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00453a7f
mov dword [esp + 0x40], eax
cmp dword [esp + 0x40], 0
jne 0x42ca93
mov dword [esp + 0x30], 3
jmp 0x42caf3
jmp 0x42ca95
mov eax, dword [esp + 0x40]
mov dword [esp + 0x38], eax
mov dword [esp + 0x3c], 0
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x38]
add ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x1c]
lea esi, [esp + 0x3c]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
mov dword [esp + 0xc], esi
call dword [sym.imp.WINHTTP.dll_WinHttpReadData]
sub esp, 0x10
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x20]
xor eax, 0xffffffff
sub eax, 0xffffffff
xor edx, edx
sub edx, eax
add ecx, edx
mov dword [esp + 0x20], ecx
mov dword [esp + 0x30], 0
jmp 0x42caf3
mov eax, dword [esp + 0x30]
test eax, eax
je 0x42caff
jmp 0x42cafd
jmp 0x42cb04
jmp 0x42ca1c
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x498]
mov dword [ecx], eax
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x49c]
mov dword [ecx], eax
cmp dword [esp + 0x1c], 0
je 0x42cb39
jmp 0x42cb27
mov eax, dword [esp + 0x1c]
mov dword [esp], eax
call dword [sym.imp.WINHTTP.dll_WinHttpCloseHandle]
sub esp, 4
jmp 0x42cb39
jmp 0x42cb3b
cmp dword [esp + 0x24], 0
setne al
test al, 1
jne 0x42cb49
jmp 0x42cb59
mov eax, dword [esp + 0x24]
mov dword [esp], eax
call dword [sym.imp.WINHTTP.dll_WinHttpCloseHandle]
sub esp, 4
cmp dword [esp + 0x28], 0
je 0x42cb70
mov eax, dword [esp + 0x28]
mov dword [esp], eax
call dword [sym.imp.WINHTTP.dll_WinHttpCloseHandle]
sub esp, 4
mov dword [esp + 0x30], 0
add esp, 0x480
pop esi
pop edi
pop ebx
pop ebp
ret