Function at 0x43421c
Capabilities:
Create http request
Read data from internet
Receive data

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffb8
push ebx
push esi
push edi
xor ecx, ecx
mov dword [ebp - 0x40], ecx
mov dword [ebp - 0x48], ecx
mov dword [ebp - 0x44], ecx
mov dword [ebp - 0x3c], ecx
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x30], ecx
xor eax, eax
push ebp
push 0x43485f
push dword fs:[eax]
mov dword fs:[eax], esp
mov al, byte [0x442b6c]
dec eax
test al, al
jb 0x4345a1
inc eax
mov byte [ebp - 0x11], al
mov edi, 0x442b70
mov eax, dword [edi]
mov esi, eax
cmp byte [esi + 0x6f4], 0
jne 0x434595
xor ebx, ebx
jmp 0x434288
inc ebx
mov eax, dword [0x4428a8]
call fcn.004087dc
push 0xfa
call sub.kernel32.dll_Sleep
lea eax, [esi + 0x6d4]
push eax
mov eax, dword [esi + 0x28]
push eax
call sub.kernel32.dll_GetDevicePowerState
test eax, eax
jne 0x4342a1
cmp bl, 0x28
jne 0x434273
cmp bl, 0x28
jne 0x4342c5
mov byte [esi + 0x6f4], 1
mov edx, dword [edi]
mov eax, 0x434878
call fcn.0041e248
mov eax, esi
call fcn.004250bc
jmp 0x434595
cmp byte [esi + 0x6be], 0
je 0x4342de
cmp dword [esi + 0x6c0], 0
jne 0x4342de
mov eax, esi
call fcn.00421e24
xor ebx, ebx
jmp 0x434307
inc ebx
mov eax, dword [0x4428a8]
call fcn.004087dc
push 0xfa
call sub.kernel32.dll_Sleep
lea eax, [esi + 0x6d4]
push eax
mov eax, dword [esi + 0x28]
push eax
call sub.kernel32.dll_GetDevicePowerState
cmp dword [esi + 0x6d4], 0
jne 0x434315
cmp bl, 0x28
jne 0x4342e2
mov eax, dword [esi + 0x6d4]
cmp eax, 1
sbb eax, eax
neg eax
neg al
sbb eax, eax
mov dword [esi + 0x6d4], eax
test eax, eax
je 0x43435b
cmp byte [esi + 0x6d8], 0
jne 0x4344f9
mov byte [esi + 0x6d8], 1
mov ecx, 1
mov edx, 0x43489c
mov eax, dword [esi + 0x24]
call fcn.0040683c
jmp 0x4344f9
mov ebx, dword [esi + 0x6dc]
mov al, byte [esi + 0xa4]
mov byte [ebp - 1], al
mov al, byte [esi + 0xa7]
mov byte [ebp - 2], al
mov al, byte [esi + 0x8e]
mov byte [ebp - 3], al
mov eax, esi
call fcn.00421d6c
cmp byte [esi + 0x713], 0
jne 0x4343af
mov eax, esi
call fcn.004253b8
test al, al
jne 0x4343af
mov byte [esi + 0x713], 1
mov edx, dword [edi]
mov eax, 0x4348b8
call fcn.0041e248
jmp 0x434837
mov eax, esi
call fcn.00425398
mov byte [esi + 0x2aa], al
cmp byte [esi + 0x2aa], 0
jne 0x4343d6
mov edx, dword [edi]
mov eax, 0x4348e8
call fcn.0041e248
jmp 0x434837
mov eax, esi
call fcn.004253e8
mov eax, esi
call fcn.0041fb34
mov al, byte [esi + 0x8e]
cmp al, byte [ebp - 3]
je 0x4343f6
mov byte [esi + 0x712], 1
mov al, byte [esi + 0x8e]
test al, al
je 0x434441
cmp al, byte [esi + 0x8f]
jbe 0x434423
mov byte [esi + 0x8f], al
xor ecx, ecx
mov cl, byte [esi + 0x8e]
mov edx, 0x43490c
mov eax, dword [esi + 0x24]
call fcn.0040683c
cmp byte [esi + 0x6e9], 0
jne 0x434441
mov al, byte [esi + 0x8e]
cmp al, byte [0x442bc1]
jbe 0x434441
mov eax, esi
call fcn.00425108
cmp byte [0x442c28], 0
je 0x434462
cmp byte [esi + 0x6d9], 0
je 0x434462
cmp ebx, dword [esi + 0x6dc]
je 0x434462
mov eax, esi
call fcn.004250c8
cmp byte [ebp - 1], 0
je 0x434487
cmp byte [esi + 0xa4], 0
jne 0x434487
mov byte [esi + 0xa6], 0
xor ecx, ecx
mov edx, 0x434924
mov eax, dword [esi + 0x24]
call fcn.0040683c
cmp byte [0x442c28], 0
je 0x4344a9
cmp byte [esi + 0xa4], 0
je 0x4344a9
cmp byte [esi + 0xa6], 0
jne 0x4344a9
mov eax, esi
call fcn.00425168
cmp byte [ebp - 2], 0
je 0x4344ce
cmp byte [esi + 0xa7], 0
jne 0x4344ce
mov byte [esi + 0xa9], 0
xor ecx, ecx
mov edx, 0x434940
mov eax, dword [esi + 0x24]
call fcn.0040683c
cmp byte [0x442c28], 0
je 0x4344f9
cmp byte [esi + 0xa4], 0
jne 0x4344f9
cmp byte [esi + 0xa7], 0
je 0x4344f9
cmp byte [esi + 0xa9], 0
jne 0x4344f9
mov eax, esi
call fcn.00425180
cmp byte [0x442c28], 0
je 0x434595
cmp byte [esi + 0x6ad], 0
jne 0x434518
cmp byte [esi + 0x6ae], 0
je 0x434595
xor eax, eax
mov al, byte [esi + 0x416]
shr eax, 4
mov byte [esi + 0x416], al
cmp al, 0xf
je 0x43458e
mov byte [esi + 0x6ad], 0
mov byte [esi + 0x6ae], 0
mov al, byte [esi + 0x416]
test al, al
jne 0x43454e
mov eax, esi
call fcn.00425120
jmp 0x434595
cmp al, 1
jne 0x43455b
mov eax, esi
call fcn.00425138
jmp 0x434595
mov eax, esi
call fcn.00425150
lea edx, [ebp - 0x30]
xor eax, eax
mov al, byte [esi + 0x416]
call fcn.0040623c
mov ecx, dword [ebp - 0x30]
lea eax, [ebp - 0x2c]
mov edx, 0x434958
call fcn.00403df4
mov eax, dword [ebp - 0x2c]
mov edx, dword [edi]
call fcn.0041e248
jmp 0x434595
mov eax, esi
call fcn.00421e24
add edi, 4
dec byte [ebp - 0x11]
jne 0x43425e
call fcn.0042ff00
cmp byte [0x442c70], 0
je 0x4345bb
mov byte [0x442c70], 0
jmp 0x434837
inc dword [0x442c68]
mov eax, dword [0x442c68]
mov dword [ebp - 0x38], eax
xor eax, eax
mov dword [ebp - 0x34], eax
fild qword [ebp - 0x38]
fdiv dword [0x43497c]
call fcn.00402a3c
fcomp dword [0x434980]
fnstsw ax
sahf
jne 0x434837
xor ebx, ebx
mov byte [0x442c6f], 0
mov al, byte [0x442b6c]
dec eax
test al, al
jb 0x4346e5
inc eax
mov byte [ebp - 0x11], al
mov esi, 0x442b70
mov eax, dword [esi]
mov edi, eax
cmp byte [edi + 0x6f4], 0
jne 0x4346d9
cmp byte [edi + 0x6be], 0
je 0x434689
cmp dword [edi + 0x6c0], 0
jne 0x434689
mov edx, dword [edi + 0x6c4]
cmp edx, dword [edi + 0x6c8]
jbe 0x434656
mov edx, eax
mov eax, 0x43498c
call fcn.0041e248
mov eax, dword [edi + 0x6c8]
mov dword [edi + 0x6c4], eax
jmp 0x434689
mov eax, dword [edi + 0x6c8]
sub eax, dword [edi + 0x6c4]
mov dword [edi + 0x6c0], eax
test eax, eax
jne 0x434676
mov dword [edi + 0x6c0], 1
mov ecx, dword [edi + 0x6c0]
mov eax, dword [edi + 0x24]
mov edx, 0x4349a8
call fcn.0040683c
lea ecx, [ebp - 0x3c]
mov eax, dword [edi + 0x24]
mov edx, 0x4349c4
call fcn.004067d8
mov edx, dword [ebp - 0x3c]
mov eax, dword [0x4429ec]
call fcn.00403ef4
je 0x4346a9
inc ebx
cmp byte [edi + 0x8e], 0
je 0x4346d9
mov al, byte [edi + 0x8f]
cmp al, byte [edi + 0x90]
jbe 0x4346d9
mov al, byte [edi + 0x8f]
cmp al, byte [0x442c6f]
jbe 0x4346d9
mov al, byte [edi + 0x8f]
mov byte [0x442c6f], al
add esi, 4
dec byte [ebp - 0x11]
jne 0x43460b
test bl, bl
je 0x434715
cmp byte [0x442c6c], 0
jne 0x434837
lea ecx, [ebp - 0x38]
mov edx, 0x433f80
xor eax, eax
call fcn.00405c3c
push dword [ebp - 0x34]
push dword [ebp - 0x38]
call fcn.00406ad8
jmp 0x434837
cmp byte [0x442c6f], 0
je 0x43474a
cmp byte [0x442c6d], 0
jne 0x434837
lea ecx, [ebp - 0x38]
mov edx, 0x433d78
xor eax, eax
call fcn.00405c3c
push dword [ebp - 0x34]
push dword [ebp - 0x38]
call fcn.00406ad8
jmp 0x434837
cmp byte [0x442c37], 0
je 0x434837
cmp byte [0x442c6e], 0
jne 0x434837
push 0
push 0
push 0
push 0
push 0x4349d8
call sub.wininet.dll_InternetOpenA
mov dword [ebp - 8], eax
mov eax, dword [ebp - 8]
call fcn.0040e810
push 0
push 0x80000000
push 0
push 0
push 0x4349e4
mov eax, dword [ebp - 8]
push eax
call sub.wininet.dll_InternetOpenUrlA
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0
je 0x43482e
lea eax, [ebp - 0x28]
xor ecx, ecx
mov edx, 0x17
call fcn.00402b54
lea eax, [ebp - 0x10]
push eax
push 0x17
lea eax, [ebp - 0x28]
push eax
mov eax, dword [ebp - 0xc]
push eax
call sub.wininet.dll_InternetReadFile
mov eax, dword [ebp - 0xc]
push eax
call sub.wininet.dll_InternetCloseHandle
mov eax, dword [ebp - 8]
push eax
call sub.wininet.dll_InternetCloseHandle
lea eax, [ebp - 0x44]
lea edx, [ebp - 0x28]
mov ecx, 0x17
call fcn.00403d60
mov eax, dword [ebp - 0x44]
lea edx, [ebp - 0x40]
call fcn.0043419c
mov eax, dword [ebp - 0x40]
push eax
lea edx, [ebp - 0x48]
mov eax, dword [0x4429ec]
call fcn.0043419c
mov edx, dword [ebp - 0x48]
pop eax
call fcn.00403ef4
jbe 0x434837
lea ecx, [ebp - 0x38]
mov edx, 0x433ecc
xor eax, eax
call fcn.00405c3c
push dword [ebp - 0x34]
push dword [ebp - 0x38]
call fcn.00406ad8
jmp 0x434837
mov eax, dword [ebp - 8]
push eax
call sub.wininet.dll_InternetCloseHandle
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x434866
lea eax, [ebp - 0x48]
mov edx, 4
call fcn.00403b30
lea eax, [ebp - 0x30]
mov edx, 2
call fcn.00403b30
ret