Function at 0x428b70
Capabilities:
Create thread

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x464e3d
mov eax, dword fs:[0]
push eax
sub esp, 0xc
push esi
push edi
mov eax, dword [0x47e700]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 4], 0
push 1
mov dword [0x480140], 0
call fcn.00428800
mov esi, eax
mov byte [ebp - 4], 2
call fcn.0042a268
mov ecx, eax
mov byte [ebp - 4], 1
test ecx, ecx
je 0x428e85
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x10], eax
push esi
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 3
call fcn.00403570
test al, al
jne 0x428c0a
test esi, esi
jne 0x428bec
xor ecx, ecx
jmp 0x428c00
mov ecx, esi
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x428bf1
sub ecx, edx
sar ecx, 1
push ecx
push esi
lea ecx, [ebp - 0x10]
call fcn.004095e0
mov eax, dword [ebp - 0x10]
mov edx, 0x469ba0
mov ecx, eax
mov si, word [ecx]
cmp si, word [edx]
jne 0x428c3a
test si, si
je 0x428c36
mov si, word [ecx + 2]
cmp si, word [edx + 2]
jne 0x428c3a
add ecx, 4
add edx, 4
test si, si
jne 0x428c14
xor edx, edx
jmp 0x428c3f
sbb edx, edx
or edx, 1
xor ecx, ecx
mov byte [ebp - 4], 1
test edx, edx
lea edx, [eax - 0x10]
sete cl
or edi, 0xffffffff
mov dword [0x48013c], ecx
mov eax, edi
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x428c6a
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea eax, [ebp + 8]
push str.TRUE
push eax
call fcn.00410de0
add esp, 8
test al, al
je 0x428c89
mov dword [0x480144], 1
call fcn.00429200
test al, al
je 0x428e42
cmp dword [0x4801d0], 0
je 0x428cb4
push ecx
mov ecx, esp
push 0x469bac
call fcn.004015b0
call fcn.00429060
add esp, 4
mov eax, dword [ebp + 0xc]
xor ecx, ecx
cmp dword [eax - 0xc], ecx
jle 0x428cff
xor esi, esi
test ecx, ecx
js 0x428e94
cmp ecx, dword [eax - 0xc]
jg 0x428e94
xor edx, edx
cmp word [eax + ecx*2], 0x30
sete dl
cmp ecx, dword [0x4801b4]
jge 0x428e8f
mov eax, dword [0x4801b0]
inc ecx
mov dword [esi + eax + 0x14], edx
add esi, 0xb8
mov eax, dword [ebp + 0xc]
cmp ecx, dword [eax - 0xc]
jl 0x428cc0
cmp dword [0x4801d0], 0
je 0x428d59
push 0
call fcn.0044c5e3
mov ecx, eax
mov esi, edx
mov eax, dword [0x4801d0]
add esp, 4
cdq
sub ecx, eax
sbb esi, edx
test esi, esi
jg 0x428e22
jl 0x428e22
cmp ecx, 0x2a2c4
ja 0x428e22
test esi, esi
jl 0x428e22
jg 0x428d4c
test ecx, ecx
jb 0x428e22
push str.__mb_Silent_Install_Builder_Demo_Package.
call fcn.004282a0
add esp, 4
push 0
push 0
push 0x428110
call fcn.0044c781
add esp, 0xc
mov esi, eax
push 0xffffffffffffffff
push esi
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp dword [0x4801d0], 0
je 0x428e0c
cmp dword [0x480148], 0
je 0x428e15
push 0x96
lea eax, [ebp - 0x14]
mov ecx, 0x480160
push eax
call fcn.0040f620
push dword [eax]
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 5
call fcn.0040b340
mov edx, dword [ebp - 0x14]
mov eax, edi
mov byte [ebp - 4], 7
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x428dd5
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push ecx
mov eax, esp
lea ecx, [ebp - 0x10]
push ecx
push 0x469c44
push eax
call fcn.0040c5f0
add esp, 0xc
call fcn.00416880
mov edx, dword [ebp - 0x10]
add esp, 4
add edx, 0xfffffff0
mov eax, edi
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x428e0c
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
cmp dword [0x480148], 0
jne 0x428e3b
cmp dword [0x48014c], 0
jne 0x428e3b
push 0
jmp 0x428e3d
push str.__mb_Demo_Package_is_expired
call fcn.004282a0
add esp, 4
mov dword [0x480148], 1
jmp 0x428e42
push 0xffffffffffffffff
call fcn.00428830
mov edx, dword [ebp + 8]
mov eax, edi
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x428e5c
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp + 0xc]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], edi
dec edi
test edi, edi
jg 0x428e74
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret
push 0x80004005
call fcn.00403310
call fcn.00429c0d
push 0x80070057
call fcn.00403310
int3