Function at 0x402630
Capabilities:
Check http status code
Create http request
Get http content length

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4492fb
mov eax, dword fs:[0]
push eax
sub esp, 0x88
mov eax, dword [0x4581b0]
xor eax, ebp
mov dword [ebp - 0x18], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov eax, dword [ebp + 8]
xor ebx, ebx
mov dword [ebp - 0x70], ebx
mov esi, ecx
mov dword [ebp - 0x90], esi
mov dword [ebp - 0x38], 0xf
mov dword [ebp - 0x3c], ebx
mov byte [ebp - 0x4c], bl
mov dword [ebp - 4], ebx
push 0xffffffffffffffff
mov edi, 7
push ebx
lea ecx, [ebp - 0x34]
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x20], ebx
mov word [ebp - 0x30], bx
call fcn.004019b0
mov byte [ebp - 4], 1
cmp dword [ebp - 0x20], ebx
jne 0x4026e5
mov dword [esi + 0x18], edi
mov dword [esi + 0x14], ebx
mov word [esi + 4], bx
cmp dword [ebp - 0x1c], 8
jb 0x4026c0
mov eax, dword [ebp - 0x30]
push eax
call fcn.00433114
add esp, 4
cmp dword [ebp - 0x38], 0x10
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x20], ebx
mov word [ebp - 0x30], bx
jb 0x402968
mov ecx, dword [ebp - 0x4c]
push ecx
call fcn.00433114
add esp, 4
jmp 0x402968
push ebx
push ebx
push ebx
push ebx
push ebx
mov dword [ebp - 0x78], vtable.RC::RCInternetSession.0
call dword [sym.imp.WININET.dll_InternetOpenW]
mov edi, eax
mov dword [ebp - 0x74], edi
push 4
lea edx, [ebp - 0x70]
push edx
push 2
push edi
mov dword [ebp - 0x70], 0xbb8
call dword [sym.imp.WININET.dll_InternetSetOptionW]
push 4
lea eax, [ebp - 0x70]
push eax
push 3
push edi
mov dword [ebp - 0x70], 5
call dword [sym.imp.WININET.dll_InternetSetOptionW]
mov dword [ebp - 0x80], ebx
mov dword [ebp - 0x84], vtable.RC::RCHttpFile.0
mov dword [ebp - 0x7c], ebx
mov byte [ebp - 4], 3
push edi
lea edx, [ebp - 0x34]
lea ecx, [ebp - 0x84]
mov dword [ebp - 0x8c], ebx
call fcn.0040ed20
test al, al
jne 0x4027c1
cmp edi, ebx
je 0x402762
push edi
call dword [sym.imp.WININET.dll_InternetCloseHandle]
xor edi, edi
mov dword [esi + 0x18], 7
mov dword [esi + 0x14], ebx
lea ecx, [ebp - 0x84]
mov word [esi + 4], bx
call fcn.0040eb80
cmp edi, ebx
je 0x402786
push edi
call dword [sym.imp.WININET.dll_InternetCloseHandle]
cmp dword [ebp - 0x1c], 8
jb 0x402798
mov ecx, dword [ebp - 0x30]
push ecx
call fcn.00433114
add esp, 4
cmp dword [ebp - 0x38], 0x10
mov dword [ebp - 0x1c], 7
mov dword [ebp - 0x20], ebx
mov word [ebp - 0x30], bx
jb 0x402968
mov edx, dword [ebp - 0x4c]
push edx
call fcn.00433114
add esp, 4
jmp 0x402968
mov eax, dword [ebp - 0x80]
cmp eax, ebx
mov dword [ebp - 0x70], 4
je 0x4027ea
push ebx
lea ecx, [ebp - 0x70]
push ecx
lea edx, [ebp - 0x8c]
push edx
push 0x20000013
push eax
call dword [sym.imp.WININET.dll_HttpQueryInfoW]
mov eax, dword [ebp - 0x80]
cmp dword [ebp - 0x8c], 0xc8
je 0x402862
cmp edi, ebx
je 0x402803
push edi
call dword [sym.imp.WININET.dll_InternetCloseHandle]
xor edi, edi
mov dword [esi + 0x18], 7
mov dword [esi + 0x14], ebx
lea ecx, [ebp - 0x84]
mov word [esi + 4], bx
call fcn.0040eb80
cmp edi, ebx
je 0x402827
push edi
call dword [sym.imp.WININET.dll_InternetCloseHandle]
cmp dword [ebp - 0x1c], 8
jb 0x402839
mov eax, dword [ebp - 0x30]
push eax
call fcn.00433114
add esp, 4
cmp dword [ebp - 0x38], 0x10
mov dword [ebp - 0x1c], 7
mov dword [ebp - 0x20], ebx
mov word [ebp - 0x30], bx
jb 0x402968
mov ecx, dword [ebp - 0x4c]
push ecx
call fcn.00433114
add esp, 4
jmp 0x402968
cmp eax, ebx
mov dword [ebp - 0x88], ebx
mov dword [ebp - 0x70], 4
je 0x402895
push ebx
lea edx, [ebp - 0x70]
push edx
lea ecx, [ebp - 0x88]
push ecx
push 0x20000005
push eax
call dword [sym.imp.WININET.dll_HttpQueryInfoW]
mov eax, dword [ebp - 0x88]
cmp eax, ebx
jne 0x4028ac
cmp edi, ebx
je 0x402937
push edi
call dword [sym.imp.WININET.dll_InternetCloseHandle]
mov dword [ebp - 0x74], ebx
jmp 0x402937
cmp eax, 0x500000
mov byte [ebp - 4], 4
jbe 0x4028bb
xor al, al
jmp 0x4028cc
lea edx, [ebp - 0x50]
push edx
push eax
lea eax, [ebp - 0x84]
push eax
call fcn.00402990
cmp al, bl
mov dword [ebp - 4], 3
je 0x40292f
mov dword [ebp - 0x54], 7
mov dword [ebp - 0x58], ebx
mov word [ebp - 0x68], bx
mov byte [ebp - 4], 6
cmp dword [ebp - 0x38], 0x10
mov eax, dword [ebp - 0x4c]
jae 0x4028f5
lea eax, [ebp - 0x4c]
mov edx, dword [ebp - 0x3c]
lea ecx, [ebp - 0x6c]
push ecx
push edx
push eax
call fcn.004302a3
add esp, 0xc
lea ecx, [ebp - 0x78]
call fcn.00411250
lea eax, [ebp - 0x6c]
push eax
call fcn.00401920
lea ecx, [ebp - 0x6c]
call fcn.00401950
jmp 0x402945
lea ecx, [ebp - 0x78]
call fcn.00411250
mov dword [esi + 0x18], 7
mov dword [esi + 0x14], ebx
mov word [esi + 4], bx
lea ecx, [ebp - 0x84]
call fcn.0040eb80
lea ecx, [ebp - 0x78]
call fcn.004112b0
lea ecx, [ebp - 0x34]
call fcn.00401950
lea ecx, [ebp - 0x50]
call fcn.00402d00
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 - 0x18]
xor ecx, ebp
call fcn.004337a7
mov esp, ebp
pop ebp
ret 4