Function at 0x407a3d
Capabilities:
Get socket status
Query remote server for available data
Read data from internet
Receive data
Send data
Send http request

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x1070
call fcn.004011b0
push ebx
push esi
push edi
xor ebx, ebx
push 8
lea eax, [ebp - 0x24]
mov edi, ecx
push ebx
push eax
mov dword [ebp - 0x10], edi
mov byte [ebp - 1], bl
mov dword [ebp - 0x30], 0x419af8
mov dword [ebp - 0x2c], 0x419af4
mov dword [ebp - 0x28], 0x419af0
call fcn.0040e856
add esp, 0xc
xor esi, esi
call fcn.0040eb1a
push 0x1a
cdq
pop ecx
idiv ecx
add dl, 0x61
mov byte [ebp + esi - 0x24], dl
inc esi
cmp esi, 3
jl 0x407a7d
lea eax, [ebp - 0x24]
push 0x419aec
push eax
call fcn.0040e991
call fcn.0040eb1a
push 3
pop ecx
xor edx, edx
div ecx
lea eax, [ebp - 0x24]
push dword [ebp + edx*4 - 0x30]
push eax
call fcn.0040e991
add esp, 0x10
push ebx
push 0x80400100
push ebx
push ebx
push ebx
lea eax, [ebp - 0x24]
push eax
push str.POST
push dword [edi + 0x102c]
call dword [sym.imp.WININET.dll_HttpOpenRequestA]
cmp eax, ebx
mov dword [ebp - 0xc], eax
je 0x407c92
push 0xc
pop ecx
push dword [ebp + 0xc]
mov esi, str.Content_Type:_application_x_www_form_urlencoded_r_n
push dword [ebp + 8]
lea edi, [ebp - 0x6c]
rep movsd dword es:[edi], dword [esi]
lea eax, [ebp - 0x6c]
push eax
movsw word es:[edi], word [esi]
call fcn.0040e93e
pop ecx
push eax
lea eax, [ebp - 0x6c]
push eax
push dword [ebp - 0xc]
call dword [sym.imp.WININET.dll_HttpSendRequestA]
test eax, eax
je 0x407c89
mov esi, dword [sym.imp.WININET.dll_InternetQueryDataAvailable]
xor edi, edi
mov dword [ebp + 8], ebx
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0x14], ebx
jmp 0x407bdc
cmp dword [ebp + 8], ebx
jbe 0x407bef
push 1
lea ecx, [ebp + 0xc]
mov dword [ebp + 0xc], ebx
call fcn.0040f686
mov eax, dword [ebp + 8]
inc eax
push eax
lea ecx, [ebp + 0xc]
call fcn.0040f686
lea eax, [ebp - 0x34]
push eax
push dword [ebp + 8]
push dword [ebp + 0xc]
push dword [ebp - 0xc]
call dword [sym.imp.WININET.dll_InternetReadFile]
test eax, eax
je 0x407b89
add edi, dword [ebp - 0x34]
lea eax, [ebp + 0xc]
push eax
lea ecx, [ebp - 0x18]
mov dword [ebp - 0x1c], edi
call fcn.00401dd0
mov ecx, eax
call fcn.0040f7d4
mov eax, dword [ebp - 0x10]
add eax, 0x24
push 0x1004
push eax
lea eax, [ebp - 0x1070]
push eax
call fcn.0040e874
add esp, 0xc
lea eax, [ebp - 0x2c]
push eax
push ebx
push ebx
lea eax, [ebp - 0x1070]
push eax
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x1028]
inc eax
push eax
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x28], 0xa
call dword [sym.imp.WS2_32.dll_select]
test eax, eax
lea ecx, [ebp + 0xc]
jne 0x407c9c
call fcn.0040f6f4
push ebx
push ebx
lea eax, [ebp + 8]
push eax
push dword [ebp - 0xc]
call esi
test eax, eax
jne 0x407b36
lea eax, [edi + 1]
push eax
mov dword [ebp - 8], eax
call fcn.0040e59d
cmp dword [ebp - 0x14], ebx
mov esi, eax
pop ecx
mov byte [esi], bl
jbe 0x407c27
mov eax, dword [ebp - 0x14]
mov edi, dword [ebp - 0x18]
mov dword [ebp + 0xc], eax
push dword [edi]
push esi
call fcn.0040e991
pop ecx
pop ecx
mov ecx, edi
call fcn.0040f6ac
add edi, 4
dec dword [ebp + 0xc]
jne 0x407c0e
push dword [ebp - 8]
call fcn.0040e59d
mov edi, eax
lea eax, [ebp - 8]
push eax
push edi
push dword [ebp - 0x1c]
push esi
call fcn.0040deb0
push esi
call fcn.0040e5b1
mov esi, dword [ebp - 0x10]
mov ecx, dword [esi + 0x20]
mov eax, dword [ecx]
add esp, 0x18
push ebx
push 4
lea edx, [ebp - 8]
push edx
call dword [eax + 8]
mov ecx, dword [esi + 0x20]
lea edx, [ebp - 0x38]
push edx
push dword [ebp - 8]
mov dword [ebp - 0x38], 0x1e
mov eax, dword [ecx]
push edi
call dword [eax + 8]
cmp eax, dword [ebp - 8]
jne 0x407c7a
mov byte [ebp - 1], 1
push edi
call fcn.0040e5b1
pop ecx
lea ecx, [ebp - 0x18]
call fcn.00401cc3
push dword [ebp - 0xc]
call dword [sym.imp.WININET.dll_InternetCloseHandle]
mov al, byte [ebp - 1]
pop edi
pop esi
pop ebx
leave
ret 8
call fcn.0040f6f4
jmp 0x407c81