Function at 0x4621d6
Capabilities:
Check os version

Disassembly:
push ebp
lea ebp, [esp - 0x5c]
sub esp, 0x8c8
push ebx
push esi
xor ecx, ecx
push edi
inc ecx
call fcn.0045c6f7
xor ecx, ecx
mov dword [ebp + 0x4c], eax
call fcn.0045c6f7
mov dword [ebp + 0x54], eax
mov eax, dword [0x54b01c]
mov esi, 0x681a
cmp eax, esi
je 0x46220c
mov dword [0x534a0c], eax
xor cl, cl
call fcn.00427067
lea ecx, [ebp + 0x58]
mov dword [ebp + 0x50], eax
call fcn.0042ec8c
lea ecx, [ebp + 0x58]
call fcn.0048e720
push eax
mov ebx, 0x4f4924
push ebx
lea eax, [ebp - 0x86c]
push 0x7ff
push eax
call fcn.0048d2a2
mov dword [ebp + 0x48], eax
xor eax, eax
mov dword [ebp - 0x6c], str.v_d
mov dword [ebp - 0x68], 0x621681a
lea edi, [ebp - 0x64]
stosd dword es:[edi], eax
mov eax, dword [ebp + 0x50]
mov dword [ebp - 0x5c], eax
xor eax, eax
mov dword [ebp - 0x60], 0x4f751c
lea edi, [ebp - 0x58]
stosd dword es:[edi], eax
add esp, 0x10
mov dword [ebp - 0x54], str.w_X
call dword [sym.imp.KERNEL32.DLL_GetVersion]
mov dword [ebp - 0x50], eax
xor eax, eax
lea edi, [ebp - 0x4c]
stosd dword es:[edi], eax
mov dword [ebp - 0x48], str.bu_d
call fcn.00462170
xor ecx, ecx
test al, al
setne cl
xor eax, eax
lea edi, [ebp - 0x40]
push 0x60
mov dword [ebp - 0x44], ecx
stosd dword es:[edi], eax
mov eax, dword [0x534a0c]
mov ecx, eax
sub ecx, esi
neg ecx
sbb ecx, ecx
and ecx, eax
xor eax, eax
mov dword [ebp - 0x3c], str.pr_d
mov dword [ebp - 0x38], ecx
lea edi, [ebp - 0x34]
stosd dword es:[edi], eax
mov eax, dword [0x54bc04]
mov dword [ebp - 0x2c], eax
xor eax, eax
mov dword [ebp - 0x30], str.cmp_d
lea edi, [ebp - 0x28]
stosd dword es:[edi], eax
mov dword [ebp - 0x24], ebx
mov ebx, dword [ebp + 0x64]
mov eax, dword [ebx*4 + 0x5349dc]
mov dword [ebp - 0x20], eax
xor eax, eax
lea edi, [ebp - 0x1c]
push eax
stosd dword es:[edi], eax
lea eax, [ebp - 0x18]
push eax
call sub.MSVCRT.dll_memset
add esp, 0xc
push 7
pop esi
cmp ebx, 0xa
ja case.0x462302.0
jmp dword [ebx*4 + 0x4624d6]
mov eax, dword [ebp + 0x68]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp + 0x6c]
mov dword [ebp - 0x18], str.installresult_d
mov dword [ebp - 0xc], str.exit_d
mov dword [ebp - 8], eax
push 9
jmp 0x46244a
mov dword [ebp - 0x18], str.tbe_d
call fcn.0045c699
xor ecx, ecx
test al, al
setne cl
mov esi, ecx
call fcn.0045c6e2
mov edx, dword [ebp + 0x54]
movzx ecx, al
mov eax, dword [ebp + 0x4c]
neg ecx
sbb ecx, ecx
or edx, eax
and edx, 1
and ecx, 2
shl edx, 2
or ecx, edx
or ecx, esi
shl eax, 3
or eax, dword [ebp + 0x54]
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0xc], str.cd_d
jmp 0x462320
mov eax, dword [ebp + 0x68]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp + 0x6c]
push 9
mov dword [ebp - 0x18], str.tbofferresult_d
mov dword [ebp - 0xc], str.exit_d
mov dword [ebp - 8], eax
pop esi
mov ecx, dword [0x534a08]
mov edi, esi
imul edi, edi, 0xc
push 0
push str.offer_id
mov dword [ebp + edi - 0x6c], str.tb_s
call fcn.004060b5
mov dword [ebp + edi - 0x68], eax
inc esi
jmp case.0x462302.0
mov eax, dword [ebp + 0x68]
mov ecx, dword [0x534a08]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp + 0x6c]
mov dword [ebp - 8], eax
mov eax, dword [ebp + 0x70]
push 0
push str.offer_id
mov dword [ebp - 0x18], str.tbinstallresult_d
mov dword [ebp - 0xc], str.error_d
mov dword [ebp], str.msg_U
mov dword [ebp + 4], eax
mov dword [ebp + 0xc], str.tb_s
call fcn.004060b5
mov dword [ebp + 0x10], eax
mov eax, dword [ebp + 0x74]
mov dword [ebp + 0x1c], eax
mov eax, dword [ebp + 0x78]
mov dword [ebp + 0x28], eax
mov eax, dword [ebp + 0x7c]
mov dword [ebp + 0x18], str.url_U
mov dword [ebp + 0x24], str.prog_u
mov dword [ebp + 0x30], str.t_U
mov dword [ebp + 0x34], eax
push 0xe
jmp 0x46244a
mov dword [ebp - 0x18], str.toroffer_d
mov eax, dword [ebp + 0x68]
jmp 0x462445
mov dword [ebp - 0x18], str.shoffer_d
jmp 0x46242d
mov eax, dword [ebp + 0x70]
mov dword [ebp - 0x18], str.cancellastpage_U
mov dword [ebp - 0x14], eax
push 8
pop esi
mov eax, esi
imul eax, eax, 0xc
push 5
mov dword [ebp + eax - 0x6c], str.view_s
mov dword [ebp + eax - 0x68], str.win32
inc esi
push esi
lea eax, [ebp - 0x6c]
push eax
mov eax, dword [ebp + 0x48]
mov edx, 0x800
sub edx, eax
lea ecx, [ebp + eax - 0x86c]
call fcn.00443118
push dword [0x5482fc]
inc dword [0x5484dc]
lea ecx, [ebp + 0x68]
call fcn.004090f5
push 0
lea eax, [ebp + 0x68]
push eax
push 0x45f12f
xor edx, edx
lea ecx, [ebp - 0x86c]
call fcn.0044ee06
mov ecx, dword [ebp + 0x68]
pop edi
pop esi
pop ebx
test ecx, ecx
je 0x4624b9
call fcn.00407a4e
lea ecx, [ebp + 0x58]
call fcn.0048e50a
mov ecx, dword [ebp + 0x50]
test ecx, ecx
je 0x4624cf
mov dl, 1
call fcn.0046b197
add ebp, 0x5c
leave
ret 0x1c