Function at 0x41aa90
Capabilities:
Create http request
Print debug messages
Reference http user-agent string

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x1b70
call fcn.00438700
push ebx
mov ebx, ecx
mov eax, dword [ebx + 0x11c]
push eax
call fcn.00429580
mov edx, dword [ebx + 0x11c]
mov cl, byte [ebx + 0x86]
push edx
mov byte [ebp - 9], cl
call fcn.004295a0
add esp, 8
cmp byte [ebp - 9], 0
jne 0x41ab82
mov eax, dword [ebx + 0x1a0]
push eax
call fcn.00429580
add dword [ebx + 0x198], 1
mov ecx, dword [ebx + 0x1a0]
push ecx
adc dword [ebx + 0x19c], 0
call fcn.004295a0
mov edx, dword [ebp + 0xc]
add esp, 8
push esi
push edi
push 0
push edx
mov ecx, ebx
call fcn.00414870
mov edi, eax
mov eax, dword [ebp + 8]
push 0
push eax
mov ecx, ebx
mov dword [ebp - 0x10], edi
call fcn.00414870
mov esi, eax
mov dword [ebp - 0x2c], esi
mov dword [ebp - 8], 0
test edi, edi
je 0x41ab3e
cmp byte [edi], 0
mov eax, edi
je 0x41ab3e
nop
cmp byte [eax], 0x5c
jne 0x41ab38
mov byte [eax], 0x2f
inc eax
cmp byte [eax], 0
jne 0x41ab30
test esi, esi
je 0x41ab5e
cmp byte [esi], 0
mov eax, esi
je 0x41ab5e
lea esp, [esp]
cmp byte [eax], 0x5c
jne 0x41ab58
mov byte [eax], 0x2f
inc eax
cmp byte [eax], 0
jne 0x41ab50
mov eax, dword [ebp + 0x2c]
dec eax
je 0x41ab8b
dec eax
je 0x41ab73
push edi
mov ecx, ebx
call fcn.004141b0
test al, al
je 0x41ab8b
push 0
push edi
mov ecx, ebx
call fcn.00414870
mov dword [ebp - 0x44], eax
jmp 0x41abcd
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret 0x2c
mov eax, edi
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41ab90
sub eax, edx
add eax, 2
push eax
push esi
mov ecx, ebx
call fcn.00414870
push 0
mov esi, eax
push edi
mov ecx, ebx
mov dword [ebp - 0x44], esi
call fcn.00414870
push 0x2f
push eax
push esi
mov ecx, ebx
mov dword [ebp + 0x2c], eax
call fcn.004170e0
lea ecx, [ebp + 0x2c]
push ecx
mov ecx, ebx
call fcn.00414a30
lea edx, [ebp - 0x158]
xor esi, esi
push edx
push edi
mov ecx, ebx
mov byte [ebp - 0x28c], 0
mov dword [ebp - 4], esi
mov dword [ebp - 0x20], esi
mov dword [ebp - 0x38], esi
mov dword [ebp - 0x34], esi
call fcn.0041a740
mov edi, dword [ebp + 0x20]
test al, al
je 0x41ae99
lea eax, [ebp - 0x188]
push eax
lea ecx, [ebp - 0x158]
push ecx
call fcn.004368ec
add esp, 8
test eax, eax
jne 0x41afab
push eax
push 0x10
mov ecx, ebx
call fcn.00425110
test edi, edi
je 0x41af9d
lea edx, [ebp - 0x158]
push 0x46e9ac
push edx
call fcn.0043571a
mov esi, eax
add esp, 8
mov dword [ebp - 4], esi
mov ecx, ebx
test esi, esi
je 0x41af53
lea eax, [ebp - 8]
push eax
push esi
call fcn.00417570
test al, al
je 0x41acb2
mov esi, dword [ebp - 8]
mov eax, esi
mov cl, byte [eax]
cmp cl, byte [edi]
jne 0x41ac82
test cl, cl
je 0x41ac7e
mov cl, byte [eax + 1]
cmp cl, byte [edi + 1]
jne 0x41ac82
add eax, 2
add edi, 2
test cl, cl
jne 0x41ac62
xor eax, eax
jmp 0x41ac87
sbb eax, eax
sbb eax, 0xffffffff
push 0
mov ecx, ebx
test eax, eax
je 0x41aca8
push 0x12
call fcn.00425110
push esi
call fcn.00433b53
add esp, 4
mov dword [ebp - 8], 0
jmp 0x41acaf
push 0x11
call fcn.00425110
mov esi, dword [ebp - 4]
push esi
call fcn.00435e10
xor esi, esi
add esp, 4
mov dword [ebp - 4], esi
cmp dword [ebp - 8], esi
je 0x41af5c
xor eax, eax
jmp 0x41acd0
mov cl, byte [ebp + eax - 0x158]
mov byte [ebp + eax - 0x28c], cl
inc eax
test cl, cl
jne 0x41acd0
push 1
push 1
push 0x104
lea ecx, [ebp - 0x158]
push ecx
mov ecx, ebx
call fcn.0041a590
test al, al
je 0x41af77
mov edi, dword [ebp - 0x174]
add edi, 0xffffff80
mov dword [ebp - 0x34], edi
mov byte [ebp + 0x2f], 1
cmp edi, 0x1000
jbe 0x41ae53
push 1
push 0
push 0
push 0
push 1
lea edx, [ebp - 0x3c]
push edx
lea eax, [ebp - 0x30]
push eax
lea ecx, [ebp - 0x158]
push ecx
sub edi, 0x1000
mov ecx, ebx
mov dword [ebp - 0x34], edi
mov dword [ebp - 0x30], esi
call fcn.00418830
test al, al
je 0x41ae53
mov eax, dword [ebp - 0x30]
push 0
push 0
lea edx, [edi + 0x80]
push edx
push eax
lea ecx, [ebp - 0x158]
push ecx
mov ecx, ebx
call fcn.00418450
test al, al
je 0x41ae3e
lea edx, [ebp - 0x158]
push 0x4678e4
push edx
call fcn.0043571a
mov esi, eax
add esp, 8
mov dword [ebp - 4], esi
test esi, esi
je 0x41ae3e
xor eax, eax
push eax
push edi
lea eax, [ebp - 0x33c]
push str.Range:bytes_llu__n
push eax
mov byte [ebp + 0x2f], 0
call fcn.00434d42
add esp, 0x10
push 0
lea ecx, [ebp - 0x33c]
push ecx
mov ecx, ebx
call fcn.00414870
mov dword [ebp - 0x20], eax
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41add0
sub eax, edx
cmp dword [ebp + 0x30], 0
mov dword [ebp - 0x38], eax
je 0x41adee
mov ecx, dword [ebp + 0x30]
xor eax, eax
push eax
push edi
call fcn.0040abc0
mov edx, dword [ebp - 8]
mov ecx, dword [ebp + 0x30]
mov eax, dword [edx + 0x20]
push ecx
push eax
mov dword [ebp - 0x3c], edi
fild dword [ebp - 0x3c]
push edi
test edi, edi
jns 0x41ae0a
fadd qword [0x470208]
mov dword [ebp - 0x3c], eax
fild dword [ebp - 0x3c]
test eax, eax
jns 0x41ae1a
fadd qword [0x470208]
fdivp st(1)
mov eax, dword [ebp + 0x18]
push ecx
mov ecx, dword [ebp + 0x14]
lea edx, [ebp - 0x158]
fstp dword [ebp - 0x24]
fld dword [ebp - 0x24]
fstp dword [esp]
push edx
push 0x20
push eax
push ecx
mov ecx, ebx
call fcn.00419cd0
mov edx, dword [ebp - 0x30]
push edx
mov ecx, ebx
call fcn.004147b0
cmp byte [ebp + 0x2f], 0
je 0x41af6a
lea eax, [ebp - 0x158]
push 0x467824
push eax
call fcn.0043571a
mov esi, eax
add esp, 8
mov dword [ebp - 4], esi
test esi, esi
je 0x41ae99
mov ecx, dword [ebp - 8]
push ecx
push esi
mov ecx, ebx
call fcn.00415300
test al, al
jne 0x41afc4
push esi
call fcn.00435e10
add esp, 4
xor esi, esi
mov byte [ebp - 0x28c], 0
mov dword [ebp - 4], esi
push 0
push 0x24
mov ecx, ebx
call fcn.00425110
mov eax, dword [ebx + 0x10c]
push eax
call fcn.00429580
mov edx, dword [ebx + 0x10c]
mov cl, byte [ebx + 0x7e]
push edx
mov byte [ebp + 0x2f], cl
call fcn.004295a0
add esp, 8
cmp byte [ebp + 0x2f], 0
push 0
mov ecx, ebx
je 0x41b034
push 0x1a
call fcn.00425110
mov eax, dword [ebp + 0x28]
test eax, eax
je 0x41aee4
mov byte [eax], 0
test esi, esi
je 0x41aef1
push esi
call fcn.00435e10
add esp, 4
lea eax, [ebp - 0x10]
push eax
mov ecx, ebx
call fcn.00414a30
lea ecx, [ebp - 0x2c]
push ecx
mov ecx, ebx
call fcn.00414a30
mov eax, dword [ebp - 8]
test eax, eax
je 0x41af17
push eax
call fcn.00433b53
add esp, 4
mov edx, dword [ebx + 0x1a0]
push edx
call fcn.00429580
mov eax, dword [ebx + 0x198]
mov ecx, dword [ebx + 0x19c]
mov edx, eax
add esp, 4
or edx, ecx
je 0x41b0f3
add eax, 0xffffffff
adc ecx, 0xffffffff
mov dword [ebx + 0x198], eax
mov dword [ebx + 0x19c], ecx
jmp 0x41b0fe
push 0
push 0x22
call fcn.00425110
push 0x467824
lea edx, [ebp - 0x158]
push edx
jmp 0x41afb7
push 0
push 0x23
mov ecx, ebx
call fcn.00425110
jmp 0x41afc4
push 0
push 0x23
mov ecx, ebx
call fcn.00425110
xor esi, esi
push esi
push 0x12
mov ecx, ebx
mov dword [ebp - 4], esi
mov byte [ebp - 0x28c], 0
call fcn.00425110
jmp 0x41ae99
push 0x467824
lea eax, [ebp - 0x158]
push eax
jmp 0x41afb7
push 0x467824
lea ecx, [ebp - 0x158]
push ecx
call fcn.0043571a
mov esi, eax
add esp, 8
mov dword [ebp - 4], esi
test esi, esi
je 0x41ae99
lea edx, [ebp - 0x2bc]
push edx
lea eax, [ebp - 0x158]
push eax
call fcn.004368ec
add esp, 8
test eax, eax
jne 0x41aea4
mov eax, dword [ebp - 0x2b6]
test eax, 0x4000
je 0x41b010
lea ecx, [ebp - 0x158]
push 0x1ff
push ecx
call fcn.00447cdd
add esp, 8
jmp 0x41aea4
test eax, 0x8000
je 0x41aea4
lea edx, [ebp - 0x158]
push 0x1b6
push edx
call fcn.00447cdd
add esp, 8
jmp 0x41aea4
push 0x13
call fcn.00425110
push 0
push 0
push 0
push 0
push str.Mozilla_5.0__Windows__U__Windows_NT_5.1__en_GB__rv:1.9.0.5__Gecko_2008120122_Firefox_3.0.5
call dword [sym.imp.WININET.dll_InternetOpenA]
mov esi, eax
mov dword [ebp - 0x40], esi
test esi, esi
jne 0x41b130
lea ecx, [ebp + 0x30]
push ecx
mov dword [ebp + 0x30], eax
call fcn.0042f8c0
mov eax, dword [ebp + 0x30]
add esp, 4
test eax, eax
je 0x41b098
fldz
mov edx, dword [ebp + 0x18]
push esi
push esi
push esi
push ecx
fstp dword [esp]
push eax
mov eax, dword [ebp + 0x14]
push 0x11
push edx
push eax
mov ecx, ebx
call fcn.00419cd0
mov ecx, dword [ebp + 0x30]
push ecx
call fcn.00434c0f
add esp, 4
lea edx, [ebp - 0x10]
push edx
mov ecx, ebx
call fcn.00414a30
lea eax, [ebp - 0x2c]
push eax
mov ecx, ebx
call fcn.00414a30
mov eax, dword [ebp - 8]
test eax, eax
je 0x41b0be
push eax
call fcn.00433b53
add esp, 4
mov ecx, dword [ebx + 0x1a0]
push ecx
call fcn.00429580
mov eax, dword [ebx + 0x198]
mov ecx, dword [ebx + 0x19c]
mov edx, eax
add esp, 4
or edx, ecx
je 0x41b0f3
add eax, 0xffffffff
adc ecx, 0xffffffff
mov dword [ebx + 0x198], eax
mov dword [ebx + 0x19c], ecx
jmp 0x41b0fe
push str.Attempt_to_reduce_CMuppet_ref_count___0_IGNORED
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov eax, dword [ebx + 0x1a0]
push eax
call fcn.004295a0
mov ecx, dword [ebx + 0x11c]
push ecx
call fcn.00429580
mov eax, dword [ebx + 0x11c]
push eax
call fcn.004295a0
add esp, 0xc
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret 0x2c
mov ecx, dword [ebx + 0x24]
mov edi, dword [sym.imp.WININET.dll_InternetSetOptionA]
push 4
lea edx, [ebp - 0x48]
push edx
push 6
push esi
mov dword [ebp - 0x48], ecx
call edi
push 4
lea eax, [ebp - 0x48]
push eax
push 2
push esi
call edi
push 4
lea ecx, [ebp - 0x4c]
push ecx
push 0x1f
push esi
mov dword [ebp - 0x4c], 0x3180
call edi
push 0
push 0x14
mov ecx, ebx
call fcn.00425110
mov edx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x44]
push 0
push 0x40300
push edx
push eax
push ecx
push esi
call dword [sym.imp.WININET.dll_InternetOpenUrlA]
lea edx, [ebp - 0x44]
push edx
mov ecx, ebx
mov dword [ebp - 0x14], eax
call fcn.00414a30
xor edi, edi
mov dword [ebp - 0x50], 0x400
cmp dword [ebp - 0x14], edi
jne 0x41b291
lea eax, [ebp + 0x30]
push eax
mov dword [ebp + 0x30], edi
call fcn.0042f8c0
add esp, 4
lea ecx, [ebp - 0x50]
push ecx
lea edx, [ebp - 0x73c]
push edx
lea eax, [ebp - 0x54]
push eax
call dword [sym.imp.WININET.dll_InternetGetLastResponseInfoA]
fldz
mov edx, dword [ebp + 0x14]
push edi
push edi
push edi
mov edi, dword [ebp + 0x18]
push ecx
fstp dword [esp]
lea ecx, [ebp - 0x73c]
push ecx
push 0x11
push edi
push edx
mov ecx, ebx
call fcn.00419cd0
mov ecx, dword [ebp - 0x54]
lea eax, [ebp - 0x73c]
push eax
mov eax, dword [ebp + 0x30]
push 0
push ecx
cdq
push edx
push eax
lea edx, [ebp - 0xb70]
push str._s____llu_::__s
push edx
call fcn.00434d42
mov eax, dword [ebp + 0x30]
push eax
call fcn.00434c0f
fldz
mov edx, dword [ebp + 0x14]
add esp, 0x20
push 0
push 0
push 0
push ecx
fstp dword [esp]
lea ecx, [ebp - 0xb70]
push ecx
push 0x11
push edi
push edx
mov ecx, ebx
call fcn.00419cd0
push esi
call dword [sym.imp.WININET.dll_InternetCloseHandle]
lea eax, [ebp - 0x10]
push eax
mov ecx, ebx
call fcn.00414a30
lea ecx, [ebp - 0x2c]
push ecx
mov ecx, ebx
call fcn.00414a30
mov eax, dword [ebp - 8]
test eax, eax
je 0x41b26c
push eax
call fcn.00433b53
add esp, 4
mov ecx, ebx
call fcn.00413650
test al, al
je 0x41bb12
push 0
push 0x28
mov ecx, ebx
call fcn.00425110
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret 0x2c
mov edx, dword [ebx + 0x140]
push edx
call fcn.00429580
mov eax, dword [ebx + 0x160]
add esp, 4
test eax, eax
je 0x41b2b3
mov ecx, dword [ebx + 0x18]
add dword [eax + 0x10], ecx
adc dword [eax + 0x14], edi
mov edx, dword [ebx + 0x140]
push edx
call fcn.004295a0
mov eax, dword [ebp - 0x14]
add esp, 4
push 0x13
push eax
mov ecx, ebx
mov byte [ebp + 0x2f], 0
call fcn.00414150
mov esi, eax
mov dword [ebp - 0x24], esi
cmp dword [ebp - 0x20], edi
je 0x41b2e8
lea ecx, [ebp - 0x20]
push ecx
mov ecx, ebx
call fcn.00414a30
cmp byte [ebx + 0x13], 0
mov byte [ebp - 9], 0
mov dword [ebp - 0x18], edi
je case.0x41b309.302
lea eax, [esi - 0x12d]
cmp eax, 0xcb
ja case.0x41b309.302
movzx edx, byte [eax + 0x41c084]
jmp dword [edx*4 + 0x41c05c]
push 0
push 0x29
jmp 0x41b344
push 0
push 0x2a
jmp 0x41b344
push 0
push 0x2b
jmp 0x41b344
push 0
push 0x2c
jmp 0x41b344
push 0
push 0x2d
jmp 0x41b344
push 0
push 0x2e
jmp 0x41b344
push 0
push 0x2f
jmp 0x41b344
push 0
push 0x30
jmp 0x41b344
push 0
push 0x31
mov ecx, ebx
call fcn.00425110
lea eax, [esi - 0xc8]
cmp eax, 0xd8
ja case.0x41b363.201
movzx eax, byte [eax + 0x41c160]
jmp dword [eax*4 + 0x41c150]
mov ecx, dword [ebp - 0x14]
push 5
push ecx
mov ecx, ebx
call fcn.00414150
cmp dword [ebp - 8], 0
mov edx, dword [ebp - 0x34]
lea edi, [eax + edx]
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x1c], edi
jne 0x41b3cf
push 0x24
call fcn.00433bd9
add esp, 4
test eax, eax
je 0x41b3a5
mov ecx, dword [ebp + 0x20]
push edi
push ecx
mov ecx, eax
call fcn.00412d80
jmp 0x41b3a7
xor eax, eax
mov edx, dword [ebp + 0x30]
fldz
push edx
mov edx, dword [ebp + 0x18]
mov dword [ebp - 8], eax
mov eax, dword [eax + 0x20]
push eax
mov eax, dword [ebp + 0x14]
push 0
push ecx
mov ecx, dword [ebp - 0x10]
fstp dword [esp]
push ecx
push 0x1b
push edx
push eax
mov ecx, ebx
call fcn.00419cd0
mov ecx, dword [ebp - 0x30]
xor esi, esi
mov dword [ebp - 0x20], esi
test ecx, ecx
je 0x41b8a2
cmp dword [ebp - 4], esi
je 0x41b517
mov eax, dword [ebp - 0x24]
cmp eax, 0xce
jne 0x41b4b1
mov edx, dword [ebp - 8]
mov eax, dword [edx + 0x20]
sub eax, dword [ebp - 0x174]
add eax, 0x1080
cmp ecx, eax
je 0x41b551
mov ecx, dword [ebp - 4]
push ecx
call fcn.00435e10
mov edx, dword [ebp - 0x14]
mov esi, dword [sym.imp.WININET.dll_InternetCloseHandle]
add esp, 4
push edx
call esi
mov eax, dword [ebp - 0x40]
push eax
call esi
lea ecx, [ebp - 0x158]
push ecx
call fcn.00438455
lea edx, [ebp - 0x28c]
push edx
call fcn.00438455
add esp, 8
lea eax, [ebp - 0x10]
push eax
mov ecx, ebx
call fcn.00414a30
lea ecx, [ebp - 0x2c]
push ecx
mov ecx, ebx
call fcn.00414a30
mov edx, dword [ebp - 8]
push edx
call fcn.00433b53
add esp, 4
mov ecx, ebx
call fcn.00413650
test al, al
je 0x41bb12
mov eax, dword [ebp + 0x28]
mov ecx, dword [ebp + 0x24]
mov edx, dword [ebp + 0x20]
push 0
push 0
push eax
mov eax, dword [ebp + 0x1c]
push ecx
mov ecx, dword [ebp + 0x18]
push edx
mov edx, dword [ebp + 0x14]
push eax
mov eax, dword [ebp + 0x10]
push ecx
mov ecx, dword [ebp + 0xc]
push edx
mov edx, dword [ebp + 8]
push eax
push ecx
push edx
mov ecx, ebx
call fcn.0041aa90
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x2c
cmp eax, 0xc8
jne 0x41b551
mov ecx, dword [ebp - 4]
mov eax, dword [ebp - 8]
push ecx
mov dword [eax + 0x20], edi
call fcn.00435e10
lea edx, [ebp - 0x158]
push 0x467824
push edx
call fcn.0043571a
mov dword [ebp - 4], eax
lea eax, [ebp - 0x158]
push 0
push eax
call fcn.00415120
add esp, 0x14
cmp dword [ebp - 4], esi
je 0x41b517
mov ecx, dword [ebp - 8]
mov edx, dword [ebp - 4]
push ecx
push edx
mov ecx, ebx
call fcn.00415300
test al, al
jne 0x41b551
mov eax, dword [ebp - 4]
push eax
call fcn.00435e10
add esp, 4
mov dword [ebp - 4], esi
mov ecx, dword [ebp + 0x1c]
lea edx, [edi + ecx]
push edx
mov ecx, ebx
call fcn.00414540
mov dword [ebp - 0x18], eax
test eax, eax
jne 0x41b54b
mov eax, dword [ebp - 8]
test eax, eax
je 0x41bb04
push eax
call fcn.00433b53
add esp, 4
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret 0x2c
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x24], esi
cmp dword [ebp - 0x30], esi
jbe 0x41ba2b
lea ecx, [ecx]
mov ecx, dword [ebp - 0x24]
sub ecx, esi
cmp ecx, dword [ebx + 0x1c]
jbe 0x41b5bf
mov ecx, dword [ebp + 0x30]
mov edx, dword [ebp - 0x34]
push ecx
lea eax, [esi + edx]
push edi
push eax
imul eax, eax, 0x64
mov dword [ebp + 0xc], eax
fild dword [ebp + 0xc]
test eax, eax
jns 0x41b589
fadd qword [0x470208]
mov edx, edi
mov dword [ebp + 0xc], edx
fild dword [ebp + 0xc]
test edx, edx
jns 0x41b59b
fadd qword [0x470208]
fdivp st(1)
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp + 0x14]
push ecx
mov ecx, dword [ebp + 0x18]
fstp dword [ebp + 0xc]
fld dword [ebp + 0xc]
fstp dword [esp]
push eax
push 0x1b
push ecx
push edx
mov ecx, ebx
call fcn.00419cd0
mov dword [ebp - 0x24], esi
mov eax, dword [ebp - 0x30]
sub eax, esi
mov dword [ebp - 0x38], eax
cmp eax, 0x1000
jle 0x41b5d5
mov dword [ebp - 0x38], 0x1000
cmp dword [ebp - 4], 0
mov dword [ebp - 0x28], 0
je 0x41b765
mov eax, dword [ebx + 0x10c]
push eax
mov byte [ebp + 0xb], 0
call fcn.00429580
mov edx, dword [ebx + 0x10c]
mov cl, byte [ebx + 0x7c]
push edx
mov byte [ebp + 0xf], cl
call fcn.004295a0
add esp, 8
cmp byte [ebp + 0xf], 0
je 0x41b665
mov esi, dword [sym.imp.KERNEL32.dll_Sleep]
cmp byte [ebp + 0xb], 0
jne 0x41b628
push 0
push 0x1b
mov ecx, ebx
call fcn.00425110
push 0xfa
mov byte [ebp + 0xb], 1
call esi
mov eax, dword [ebx + 0x10c]
push eax
call fcn.00429580
mov edx, dword [ebx + 0x10c]
mov cl, byte [ebx + 0x7c]
push edx
mov byte [ebp + 0xf], cl
call fcn.004295a0
add esp, 8
cmp byte [ebp + 0xf], 0
jne 0x41b617
push 0
push 0x1c
mov ecx, ebx
call fcn.00425110
push 0
push 0x15
mov ecx, ebx
call fcn.00425110
mov ecx, ebx
call fcn.00413750
test al, al
jne 0x41b7fa
mov ecx, dword [ebp - 0x38]
lea eax, [ebp - 0x28]
push eax
mov eax, dword [ebp - 0x14]
push ecx
lea edx, [ebp - 0x1b70]
push edx
push eax
call dword [sym.imp.WININET.dll_InternetReadFile]
test eax, eax
je 0x41b78f
cmp byte [ebx + 0xa0], 0
je 0x41b6d9
mov ecx, dword [ebx + 0x98]
push ecx
call fcn.00429580
mov edx, dword [ebx + 0x9c]
push edx
call fcn.00429580
mov eax, dword [ebx + 0x94]
mov byte [eax], 1
mov ecx, dword [ebx + 0x9c]
push ecx
call fcn.004295a0
add esp, 0xc
mov edx, dword [ebp - 4]
mov eax, dword [ebp - 0x28]
push edx
push eax
lea ecx, [ebp - 0x1b70]
push 1
push ecx
call fcn.004374b0
mov edx, dword [ebp - 4]
push edx
mov esi, eax
call fcn.00437772
add esp, 0x14
cmp esi, dword [ebp - 0x28]
mov ecx, ebx
setne byte [ebp + 0xf]
call fcn.00413750
test al, al
jne 0x41b833
cmp byte [ebp + 0xf], al
jne 0x41b833
mov eax, dword [ebx + 0x9c]
push eax
call fcn.00429580
add esp, 4
cmp dword [ebx + 0x94], 0
je 0x41b743
mov ecx, dword [ebx + 0x98]
push ecx
call fcn.004295a0
add esp, 4
mov edx, dword [ebx + 0x9c]
push edx
call fcn.004295a0
add esp, 4
cmp byte [ebx + 0x89], 0
je 0x41b78f
push 0x32
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x41b78f
mov ecx, dword [ebp - 0x38]
mov edx, dword [ebp - 0x3c]
lea eax, [ebp - 0x28]
push eax
mov eax, dword [ebp - 0x14]
push ecx
add edx, esi
push edx
push eax
call dword [sym.imp.WININET.dll_InternetReadFile]
test eax, eax
jne 0x41b78f
push eax
push 0x16
mov ecx, ebx
mov byte [ebp + 0x2f], 1
call fcn.00425110
cmp dword [ebp - 0x28], 0
jbe 0x41ba28
mov ecx, dword [ebx + 0x140]
push ecx
call fcn.00429580
mov eax, dword [ebx + 0x160]
add esp, 4
test eax, eax
je 0x41b7bb
mov edx, dword [ebp - 0x28]
add dword [eax], edx
adc dword [eax + 4], 0
mov eax, dword [ebx + 0x140]
push eax
call fcn.004295a0
add esp, 4
mov ecx, ebx
call fcn.00416360
mov ecx, dword [ebp + 0x30]
test ecx, ecx
je 0x41b7e3
mov edx, dword [ebp - 0x28]
push 0
push edx
call fcn.0040abc0
mov esi, dword [ebp - 0x20]
add esi, dword [ebp - 0x28]
mov dword [ebp - 0x20], esi
cmp esi, dword [ebp - 0x30]
jb 0x41b560
jmp 0x41ba2b
mov eax, dword [ebp + 0x28]
push eax
mov eax, dword [ebp - 4]
lea ecx, [ebp - 0x28c]
push ecx
mov ecx, dword [ebp - 0x40]
lea edx, [ebp - 0x158]
push edx
mov edx, dword [ebp - 0x14]
push eax
push ecx
push edx
mov ecx, ebx
call fcn.0041a9b0
lea eax, [ebp - 0x10]
push eax
mov ecx, ebx
call fcn.00414a30
lea ecx, [ebp - 0x2c]
push ecx
jmp 0x41bae6
mov edx, dword [ebx + 0x9c]
push edx
call fcn.00429580
add esp, 4
cmp dword [ebx + 0x94], 0
je 0x41b85a
mov eax, dword [ebx + 0x98]
push eax
call fcn.004295a0
add esp, 4
mov ecx, dword [ebx + 0x9c]
push ecx
call fcn.004295a0
mov edx, dword [ebp + 0x28]
add esp, 4
push edx
mov edx, dword [ebp - 4]
lea eax, [ebp - 0x28c]
push eax
mov eax, dword [ebp - 0x40]
lea ecx, [ebp - 0x158]
push ecx
mov ecx, dword [ebp - 0x14]
push edx
push eax
push ecx
mov ecx, ebx
call fcn.0041a9b0
lea edx, [ebp - 0x10]
push edx
mov ecx, ebx
call fcn.00414a30
lea eax, [ebp - 0x2c]
push eax
jmp 0x41bae6
fldz
push 0
push 0x15
fstp dword [ebp + 8]
mov ecx, ebx
mov byte [ebp - 9], 1
mov dword [ebp + 0x2c], esi
call fcn.00425110
lea esp, [esp]
mov ecx, dword [ebp + 0x30]
fld dword [ebp + 8]
mov edx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x10]
push ecx
push edi
push edx
mov edx, dword [ebp + 0x14]
push ecx
mov ecx, dword [ebp + 0x18]
fstp dword [esp]
push eax
push 0x1b
push ecx
push edx
mov ecx, ebx
call fcn.00419cd0
fld dword [ebp + 8]
fld qword [0x470200]
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x41b906
fsub st(1)
fmul qword [0x467570]
faddp st(1)
fstp dword [ebp + 8]
jmp 0x41b90a
fstp st(1)
fstp st(0)
cmp dword [ebp - 4], 0
je 0x41b9b5
push 0
push 0x15
mov ecx, ebx
call fcn.00425110
mov edx, dword [ebp - 0x14]
lea eax, [ebp + 0xc]
push eax
push 0x1000
lea ecx, [ebp - 0x1b70]
push ecx
push edx
call dword [sym.imp.WININET.dll_InternetReadFile]
add edi, dword [ebp + 0xc]
mov esi, eax
mov eax, dword [ebx + 0x140]
push eax
call fcn.00429580
mov eax, dword [ebx + 0x160]
add esp, 4
test eax, eax
je 0x41b960
mov ecx, dword [ebp + 0xc]
add dword [eax], ecx
adc dword [eax + 4], 0
mov edx, dword [ebx + 0x140]
push edx
call fcn.004295a0
add esp, 4
mov ecx, ebx
call fcn.00416360
mov ecx, ebx
call fcn.00413750
test al, al
jne 0x41ba84
mov eax, dword [ebp - 4]
mov ecx, dword [ebp + 0xc]
push eax
push ecx
lea edx, [ebp - 0x1b70]
push 1
push edx
call fcn.004374b0
add esp, 0x10
cmp eax, dword [ebp + 0xc]
jne 0x41ba84
mov eax, dword [ebp - 4]
push eax
call fcn.00437772
add esp, 4
jmp 0x41ba05
mov eax, dword [ebp + 0x2c]
mov ecx, dword [ebp - 0x18]
add eax, 0x1000
push eax
push ecx
mov ecx, ebx
mov dword [ebp + 0x2c], eax
call fcn.00417d10
mov dword [ebp - 0x18], eax
test eax, eax
je 0x41bb0f
mov ecx, dword [ebp - 0x14]
lea edx, [ebp + 0xc]
push edx
push 0x1000
add eax, edi
push eax
push ecx
call dword [sym.imp.WININET.dll_InternetReadFile]
mov esi, eax
mov eax, dword [ebp + 0xc]
add edi, eax
cmp dword [ebp + 0x30], 0
je 0x41ba05
mov ecx, dword [ebp + 0x30]
push 0
push eax
call fcn.0040abc0
test esi, esi
je 0x41ba13
cmp dword [ebp + 0xc], 0
ja 0x41b8c0
push 0
push 0x1f
mov ecx, ebx
mov dword [ebp - 0x1c], edi
call fcn.00425110
mov byte [ebp + 0x2f], 1
mov dword [ebp - 0x20], edi
mov esi, dword [ebp - 0x20]
cmp dword [ebp - 4], 0
je 0x41bc48
mov eax, dword [ebp - 4]
push eax
call fcn.00435e10
mov ecx, dword [ebp - 0x34]
add esi, ecx
add esp, 4
cmp edi, esi
je 0x41bb1d
mov edx, dword [ebp - 8]
cmp dword [edx + 0x20], 0
je 0x41bb1d
fldz
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp + 0x14]
push 0
push 0
push 0
push ecx
mov ecx, dword [ebp + 0x18]
fstp dword [esp]
push eax
push 5
push ecx
push edx
mov ecx, ebx
call fcn.00419cd0
mov esi, dword [ebp + 0x24]
jmp 0x41bda9
mov edx, dword [ebp - 4]
push edx
mov dword [ebp - 0x1c], edi
call fcn.00435e10
fld dword [ebp + 8]
mov eax, dword [ebp + 0x30]
mov ecx, dword [ebp - 0x34]
add esp, 4
push eax
mov eax, dword [ebp + 0x18]
push edi
push ecx
push ecx
mov ecx, dword [ebp + 0x14]
fstp dword [esp]
lea edx, [ebp - 0x158]
push edx
push 8
push eax
push ecx
mov ecx, ebx
call fcn.00419cd0
mov eax, dword [ebp + 0x28]
test eax, eax
je 0x41bac5
mov byte [eax], 1
mov edx, dword [ebp - 0x14]
mov esi, dword [sym.imp.WININET.dll_InternetCloseHandle]
push edx
call esi
mov eax, dword [ebp - 0x40]
push eax
call esi
lea ecx, [ebp - 0x10]
push ecx
mov ecx, ebx
call fcn.00414a30
lea edx, [ebp - 0x2c]
push edx
mov ecx, ebx
call fcn.00414a30
mov eax, dword [ebp - 8]
test eax, eax
je 0x41bafd
push eax
call fcn.00433b53
add esp, 4
mov ecx, ebx
call fcn.00413650
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret 0x2c
mov dword [ebp - 0x1c], edi
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret 0x2c
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x20]
push 1
neg eax
push 0
sbb eax, eax
and eax, 0x80
push eax
push 0
push 1
lea ecx, [ebp - 0x1c]
push ecx
lea edx, [ebp - 0x18]
push edx
lea eax, [ebp - 0x158]
push eax
mov ecx, ebx
call fcn.00418830
mov esi, dword [ebp + 0x24]
test al, al
jne 0x41bb62
xor edi, edi
mov dword [ebp - 0x1c], edi
test esi, esi
jne 0x41bb65
mov ecx, dword [ebp + 0x10]
mov dword [ecx], edi
jmp 0x41bb65
mov edi, dword [ebp - 0x1c]
cmp byte [ebp - 9], 0
jne 0x41bb7a
lea edx, [ebp - 0x158]
push edx
call fcn.00438455
add esp, 4
mov eax, dword [ebp + 0x20]
test eax, eax
je 0x41bc4b
push 0x467a28
push eax
call fcn.004342d0
add esp, 8
test eax, eax
jne 0x41bc4b
mov dword [ebp + 0xc], eax
test esi, esi
jne 0x41bba5
mov esi, dword [ebp - 0x44]
mov eax, dword [ebp + 0x18]
mov ecx, dword [ebp + 0x14]
push eax
mov eax, dword [ebp - 0x18]
push ecx
push esi
lea edx, [ebp + 0xc]
push edx
push edi
push eax
mov ecx, ebx
call fcn.0041a430
mov esi, dword [ebp + 0x20]
mov eax, dword [ebp + 0xc]
mov cl, byte [eax]
cmp cl, byte [esi]
jne 0x41bbe4
test cl, cl
je 0x41bbe0
mov cl, byte [eax + 1]
cmp cl, byte [esi + 1]
jne 0x41bbe4
add eax, 2
add esi, 2
test cl, cl
jne 0x41bbc4
xor eax, eax
jmp 0x41bbe9
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x41bc3d
cmp byte [ebx + 8], 0
je 0x41bc0d
lea ecx, [ebp - 0x18]
push ecx
mov ecx, ebx
call fcn.00417be0
xor edi, edi
mov dword [ebp - 0x1c], edi
cmp dword [ebp + 0x24], edi
jne 0x41bc0d
mov edx, dword [ebp + 0x10]
mov dword [edx], edi
inc dword [ebx + 0x150]
cmp dword [ebx + 0xa4], 0
je 0x41bc3d
fldz
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp + 0x14]
push 0
push 0
push 0
push ecx
mov ecx, dword [ebp + 0x18]
fstp dword [esp]
push eax
push 4
push ecx
push edx
mov ecx, ebx
call fcn.00419cd0
lea eax, [ebp + 0xc]
push eax
mov ecx, ebx
call fcn.00414a30
mov esi, dword [ebp + 0x24]
test edi, edi
je 0x41bdab
test esi, esi
je 0x41bdab
mov edx, dword [ebp - 0x18]
lea ecx, [ebp + 0xc]
push ecx
push 0
push edi
push edx
push esi
mov ecx, ebx
mov byte [ebp + 0x23], 1
mov dword [ebp + 0xc], 0
call fcn.00418450
test al, al
je 0x41bc83
mov byte [ebp + 0x23], 0
jmp 0x41bca1
fldz
mov eax, dword [ebp + 0x18]
push 0
push 0
push 0
push ecx
mov ecx, dword [ebp + 0x14]
fstp dword [esp]
push esi
push 8
push eax
push ecx
mov ecx, ebx
call fcn.00419cd0
cmp dword [ebp + 0xc], 0
je 0x41bda3
push 0
lea edx, [ebp + 8]
push edx
push 0x467a28
push esi
mov dword [ebp + 8], 0
call fcn.0042a990
add esp, 0x10
mov dword [ebp - 0x3c], eax
test eax, eax
je 0x41bd85
mov eax, dword [ebp + 0xc]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41bcd7
sub eax, edx
add eax, 3
push eax
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
push ecx
mov ecx, ebx
call fcn.00414870
mov dword [ebp - 0x24], eax
test eax, eax
je 0x41bd85
lea edi, [eax - 1]
nop
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x41bd00
mov dx, word [0x467a28]
mov ecx, dword [ebp + 0xc]
mov word [edi], dx
mov esi, ecx
mov dl, byte [ecx]
inc ecx
test dl, dl
jne 0x41bd17
sub ecx, esi
mov edx, ecx
lea edi, [eax - 1]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x41bd25
mov ecx, edx
fldz
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
push 0
push 0
push 0
push ecx
mov ecx, dword [ebp + 0x14]
fstp dword [esp]
push eax
mov eax, dword [ebp + 0x18]
push 0x3b
push eax
push ecx
mov ecx, ebx
call fcn.00419cd0
mov edx, dword [ebp + 0xc]
push edx
call fcn.00434c0f
mov eax, dword [ebp - 0x3c]
push eax
lea ecx, [ebp + 8]
push ecx
call fcn.0042a140
add esp, 0xc
lea edx, [ebp - 0x24]
push edx
mov ecx, ebx
call fcn.00414a30
mov edi, dword [ebp - 0x1c]
mov esi, dword [ebp + 0x24]
jmp 0x41bda3
fldz
mov eax, dword [ebp + 0x18]
push 0
push 0
push 0
push ecx
mov ecx, dword [ebp + 0x14]
fstp dword [esp]
push esi
push 8
push eax
push ecx
mov ecx, ebx
call fcn.00419cd0
cmp byte [ebp + 0x23], 0
je 0x41bdab
xor edi, edi
mov eax, dword [ebp + 0x10]
test eax, eax
je 0x41bdb9
mov edx, dword [ebp - 0x18]
mov dword [eax], edx
jmp 0x41bdc4
lea eax, [ebp - 0x18]
push eax
mov ecx, ebx
call fcn.00417be0
mov eax, dword [ebp + 0x1c]
test eax, eax
je 0x41bdee
test edi, edi
je 0x41bdee
test esi, esi
jne 0x41bdee
mov esi, dword [ebp + 0x10]
mov edx, dword [esi]
lea ecx, [edi + eax]
push ecx
push edx
mov ecx, ebx
call fcn.00417d10
mov dword [esi], eax
test eax, eax
je 0x41bb12
mov eax, dword [ebp + 0x28]
test eax, eax
je 0x41bf6c
mov byte [eax], 1
jmp 0x41bf6c
mov eax, dword [ebp + 0x28]
test eax, eax
je 0x41be0b
mov byte [eax], 1
mov eax, dword [ebp - 4]
test eax, eax
je 0x41be1b
push eax
call fcn.00435e10
add esp, 4
lea eax, [ebp - 0x158]
push eax
call fcn.00438455
lea ecx, [ebp - 0x28c]
push ecx
call fcn.00438455
xor edi, edi
add esp, 8
cmp dword [ebp + 0x24], edi
jne 0x41be42
mov edx, dword [ebp + 0x10]
mov dword [edx], edi
fldz
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp + 0x14]
push 0
push 0
push 0
push ecx
mov ecx, dword [ebp + 0x18]
fstp dword [esp]
push eax
push 3
push ecx
push edx
mov ecx, ebx
call fcn.00419cd0
jmp 0x41bf6c
mov eax, dword [ebp + 0x28]
test eax, eax
je 0x41be72
mov byte [eax], 0
mov eax, dword [ebp - 4]
test eax, eax
je 0x41be82
push eax
call fcn.00435e10
add esp, 4
lea eax, [ebp - 0x158]
push eax
call fcn.00438455
lea ecx, [ebp - 0x28c]
push ecx
call fcn.00438455
fldz
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp + 0x18]
add esp, 8
push 0
push 0
push 0
push ecx
mov ecx, dword [ebp + 0x14]
fstp dword [esp]
push edx
push 6
push eax
push ecx
mov ecx, ebx
call fcn.00419cd0
xor edi, edi
cmp dword [ebp + 0x24], edi
jne 0x41bf6c
mov edx, dword [ebp + 0x10]
mov dword [edx], edi
jmp 0x41bf6c
mov eax, dword [ebp + 0x28]
test eax, eax
je 0x41bedd
mov byte [eax], 0
mov eax, dword [ebp - 4]
test eax, eax
je 0x41beed
push eax
call fcn.00435e10
add esp, 4
lea eax, [ebp - 0x158]
push eax
call fcn.00438455
lea ecx, [ebp - 0x28c]
push ecx
call fcn.00438455
mov eax, dword [ebp - 0x10]
add esp, 8
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41bf10
sub eax, edx
add eax, 0x20
push eax
push 0
mov ecx, ebx
call fcn.00414870
mov edx, dword [ebp - 0x24]
push 0
mov esi, eax
mov eax, dword [ebp - 0x10]
push edx
push eax
push str._s_llu
push esi
mov dword [ebp + 0x24], esi
call fcn.00434d42
fldz
mov edx, dword [ebp + 0x14]
add esp, 0x14
push 0
push 0
push 0
push ecx
mov ecx, dword [ebp + 0x18]
fstp dword [esp]
push esi
push 0x10
push ecx
push edx
mov ecx, ebx
call fcn.00419cd0
lea eax, [ebp + 0x24]
push eax
mov ecx, ebx
call fcn.00414a30
mov ecx, dword [ebp - 0x14]
mov esi, dword [sym.imp.WININET.dll_InternetCloseHandle]
push ecx
call esi
mov edx, dword [ebp - 0x40]
push edx
call esi
mov esi, dword [ebp - 8]
test esi, esi
je 0x41bfb9
mov eax, dword [esi + 0x20]
cmp edi, eax
je 0x41bf94
test edi, edi
je 0x41bfb9
test eax, eax
jne 0x41bfb9
mov eax, dword [ebp + 0x30]
fld dword [0x467a2c]
mov edx, dword [ebp + 0x18]
push eax
mov eax, dword [ebp + 0x14]
push edi
push edi
push ecx
mov ecx, dword [ebp - 0x10]
fstp dword [esp]
push ecx
push 0x1b
push edx
push eax
mov ecx, ebx
call fcn.00419cd0
push esi
call fcn.00433b53
add esp, 4
test edi, edi
je 0x41bff6
mov ecx, dword [ebx + 0x140]
push ecx
call fcn.00429580
mov eax, dword [ebx + 0x160]
add esp, 4
test eax, eax
je 0x41bfe7
add dword [eax + 8], 1
adc dword [eax + 0xc], 0
mov edx, dword [ebx + 0x140]
push edx
call fcn.004295a0
add esp, 4
lea eax, [ebp - 0x10]
push eax
mov ecx, ebx
call fcn.00414a30
lea ecx, [ebp - 0x2c]
push ecx
mov ecx, ebx
call fcn.00414a30
mov ecx, ebx
call fcn.00413650
test al, al
je 0x41bb12
lea eax, [ebp - 0x28c]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41c024
sub eax, edx
je 0x41c03e
lea edx, [ebp - 0x28c]
push edx
call fcn.00438455
add esp, 4
cmp byte [ebp + 0x2f], 0
jne 0x41c04f
push 0
push 0x1e
mov ecx, ebx
call fcn.00425110
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x2c