Function at 0x431e30
Capabilities:
Read data from internet
Receive data

Disassembly:
push 0xffffffffffffffff
push 0x44e9fb
mov eax, dword fs:[0]
push eax
mov eax, 0x101c
call fcn.004468f0
mov eax, dword [0x45f2b0]
xor eax, esp
mov dword [esp + 0x1018], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x45f2b0]
xor eax, esp
push eax
lea eax, [esp + 0x1030]
mov dword fs:[0], eax
mov ebp, dword [sym.imp.USER32.dll_GetSystemMetrics]
push 4
mov esi, ecx
call ebp
lea ecx, [esp + 0x18]
cmp eax, ecx
jle 0x431e8b
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
jmp 0x431e97
push 0xe
call ebp
lea edx, [esp + 0x18]
cmp eax, edx
jle 0x431e9c
call fcn.004353a0
xor ebx, ebx
push ebx
call fcn.00439283
add esp, 4
mov dword [esp + 0x1c], ebx
call fcn.00417cd0
mov ecx, eax
mov eax, 0xc4ffb935
imul ecx
add edx, ecx
sar edx, 0xe
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 0x532b
jle 0x431ee1
push 0x532b
call dword [sym.imp.KERNEL32.dll_Sleep]
call fcn.00435230
call fcn.00406fe0
cmp dword [esi + 0xc0], ebx
je 0x4320dd
mov eax, dword [esi + 0xb0]
lea ecx, [esp + 0x1c]
push ecx
push 0xff6
lea edx, [esp + 0x2c]
push edx
push eax
call dword [sym.imp.WININET.dll_InternetReadFile]
mov eax, dword [esp + 0x1c]
cmp eax, ebx
ja 0x432072
cmp dword [esi + 0xb4], ebx
je 0x43211e
call fcn.00431c10
mov eax, dword [esi + 0xbc]
lea ecx, [eax + 1]
mov dword [esi + 0xbc], ecx
cmp eax, 0xa
ja 0x4320e2
call fcn.00417a20
mov ecx, eax
mov eax, 0x1e285167
imul ecx
sar edx, 0xb
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 0x43e9
jle 0x431f72
push 0x43e9
call dword [sym.imp.KERNEL32.dll_Sleep]
call fcn.00401440
call fcn.004197b0
push 0x2710
call dword [sym.imp.KERNEL32.dll_Sleep]
mov ecx, dword [esi + 0x8c]
push ecx
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x38], esp
push 0xffffffffffffffff
lea eax, [esi + 0x1c]
push ebx
mov edi, 0xf
mov dword [ecx + 0x18], edi
mov dword [ecx + 0x14], ebx
push eax
mov byte [ecx + 4], bl
call fcn.00402d10
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x5c], esp
push 0xffffffffffffffff
mov dword [esp + 0x1078], ebx
push ebx
mov dword [ecx + 0x18], edi
mov dword [ecx + 0x14], ebx
push esi
mov byte [ecx + 4], bl
call fcn.00402d10
push esi
mov dword [esp + 0x1078], 0xffffffff
call fcn.00431890
push 4
mov edi, eax
call ebp
lea edx, [esp + 0x18]
cmp eax, edx
jle 0x431ff5
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov ecx, 1
jmp 0x432006
push 0xe
call ebp
lea ecx, [esp + 0x18]
xor edx, edx
cmp eax, ecx
setg dl
mov ecx, edx
mov eax, 0x4bda12f7
imul ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 0xd8
jle 0x432033
push 0xd8
call dword [sym.imp.KERNEL32.dll_Sleep]
call fcn.00401440
call fcn.0042fbc0
cmp edi, ebx
jl 0x4320d1
mov dword [esi + 0xb8], ebx
call fcn.0042f950
test eax, eax
je 0x432054
call fcn.00418a10
call fcn.00418a10
lea edi, [esi + 0x70]
call fcn.00429ca0
push ebx
call fcn.00439283
add esp, 4
mov dword [esp + 0x1038], 0xffffffff
jmp 0x4320d1
push eax
lea ecx, [esp + 0x28]
push ecx
lea eax, [esi + 0x70]
call fcn.00405ca0
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, 2
je 0x432099
sub eax, 2
je 0x432099
sub eax, 4
je 0x432099
xor eax, eax
jmp 0x4320a4
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov eax, 1
sub eax, 1
jne 0x4320b3
call fcn.00401440
call fcn.0042fc90
mov edx, dword [esp + 0x1c]
add dword [esi + 0xb8], edx
mov eax, dword [esi + 0xb4]
mov ecx, dword [esi + 0xb8]
cmp eax, ebx
je 0x4320d1
cmp ecx, eax
jae 0x43211e
cmp dword [esi + 0xc0], ebx
jne 0x431eed
call fcn.00431c10
mov eax, dword [esi + 0xc4]
neg eax
sbb eax, eax
and eax, 0x7fffbffb
add eax, 0x80004005
mov ecx, dword [esp + 0x1030]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x1018]
xor ecx, esp
call fcn.00437983
add esp, 0x1028
ret
mov dword [esi + 0xc4], 1
jmp 0x4320e2