Function at 0x40c850
Capabilities:
Create http request

Disassembly:
sub esp, 0x24
push ebp
push esi
mov esi, ecx
mov eax, dword [esi + 0x1c]
test eax, eax
je 0x40c890
mov ecx, dword [esi + 0x1c]
lea eax, [esp + 8]
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_GetExitCodeThread]
test eax, eax
je 0x40c87f
cmp dword [esp + 8], 0x103
je 0x40cad4
mov edx, dword [esi + 0x1c]
push edx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [esi + 0x1c], 0
mov ebp, dword [esp + 0x30]
test ebp, ebp
je 0x40cad4
mov eax, dword [esp + 0x34]
test eax, eax
je 0x40cad4
mov eax, dword [esp + 0x38]
test eax, eax
je 0x40cad4
push edi
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov edi, eax
mov eax, dword [0x46f470]
mov ecx, dword [eax]
push ebp
push edi
push str._Getter__d__s
push eax
call dword [ecx + 4]
push ebp
push edi
push str._Getter__d__s
push 0x46f474
call fcn.0040ac70
mov eax, dword [esi + 0x20]
add esp, 0x20
test eax, eax
jne 0x40ca29
cmp dword [esi + 0x18], 0x10
jb 0x40c8f9
mov eax, dword [esi + 4]
jmp 0x40c8fc
lea eax, [esi + 4]
push 0x4000000
push 0
push 0
push 0
push eax
call dword [sym.imp.WININET.dll_InternetOpenA]
mov dword [esi + 0x20], eax
mov edx, dword [esi + 0x20]
push 0x40c350
push edx
call dword [sym.imp.WININET.dll_InternetSetStatusCallback]
mov eax, dword [esi + 0x20]
test eax, eax
jne 0x40c971
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
mov eax, dword [0x46f470]
mov ecx, dword [eax]
push esi
push 1
push 0x89
push str._Getter:_d_InternetOpenA__d:_d
push eax
call dword [ecx + 4]
push esi
push 1
push 0x8a
push str._Getter:_d_iopen__d:_d
push 0x46f474
call fcn.0040ac70
add esp, 0x28
pop edi
mov eax, esi
xor edx, edx
pop esi
or edx, 1
pop ebp
add esp, 0x24
ret 0x10
mov eax, dword [esi + 0x50]
mov edi, dword [sym.imp.WININET.dll_InternetSetOptionA]
push 4
lea edx, [esp + 0x18]
push edx
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], eax
mov dword [esp + 0x2c], eax
mov dword [esp + 0x30], eax
mov dword [esp + 0x34], eax
mov eax, dword [esi + 0x20]
push 2
push eax
call edi
mov edx, dword [esi + 0x20]
push 4
lea ecx, [esp + 0x20]
push ecx
push 6
push edx
call edi
mov ecx, dword [esi + 0x20]
push 4
lea eax, [esp + 0x1c]
push eax
push 5
push ecx
call edi
mov eax, dword [esi + 0x20]
push 4
lea edx, [esp + 0x28]
push edx
push 6
push eax
call edi
mov edx, dword [esi + 0x20]
push 4
lea ecx, [esp + 0x24]
push ecx
push 5
push edx
call edi
mov ecx, dword [esi + 0x20]
push 4
lea eax, [esp + 0x30]
push eax
push 8
push ecx
call edi
mov eax, dword [esi + 0x20]
push 4
lea edx, [esp + 0x2c]
push edx
push 7
push eax
call edi
mov edx, dword [esi + 0x50]
mov eax, dword [0x46f470]
mov ecx, dword [eax]
push edx
push str._Getter_InternetSetOptionA_timeout:_d
push eax
call dword [ecx + 4]
mov eax, dword [esi + 0x50]
push eax
push str._Getter_InternetSetOptionA_timeout:_d
push 0x46f474
call fcn.0040ac70
add esp, 0x18
lea edi, [esi + 0x28]
mov byte [esi + 0x24], 0
push ebp
mov ecx, edi
call fcn.0040c710
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x3c]
mov eax, dword [esp + 0x40]
mov dword [esi + 0x44], ecx
lea ecx, [esp + 0x10]
push ecx
push 0
push esi
push 0x40c7c0
push 0
push 0
mov dword [esi + 0x48], edx
mov dword [esi + 0x4c], eax
call fcn.00433841
mov dword [esi + 0x1c], eax
mov eax, dword [esi + 0x1c]
add esp, 0x18
test eax, eax
jne 0x40cac7
mov ecx, edi
call fcn.0040c320
mov dword [esi + 0x44], 0
call fcn.00434e34
mov esi, dword [eax]
mov eax, dword [0x46f470]
mov edx, dword [eax]
push esi
push 2
push 0xb4
push str._Getter:_d_
push eax
call dword [edx + 4]
push esi
push 2
push 0xb5
push str._Getter:_d_bthrd__d:_d
push 0x46f474
call fcn.0040ac70
add esp, 0x28
pop edi
mov eax, esi
xor edx, edx
pop esi
or edx, 2
pop ebp
add esp, 0x24
ret 0x10
pop edi
pop esi
xor eax, eax
xor edx, edx
pop ebp
add esp, 0x24
ret 0x10
pop esi
or eax, 0xffffffff
mov edx, 3
pop ebp
add esp, 0x24
ret 0x10