Function at 0x451670
Capabilities:
Create process on windows
Terminate process

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5d4d5e
mov eax, dword fs:[0]
push eax
sub esp, 0x150
mov eax, dword [0x65a000]
xor eax, ebp
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebp + 0x10]
mov esi, dword [ebp + 8]
mov edi, dword [ebp + 0xc]
mov dword [ebp - 0x120], 0
mov dword [ebp - 0x15c], eax
mov eax, dword [0x6fb00c]
push 0x40
mov dword [ebp - 0xec], eax
lea eax, [ebp - 0xd0]
push 0
push eax
mov dword [ebp - 0x154], esi
mov dword [ebp - 0xd4], 0
call fcn.005a7690
xorps xmm0, xmm0
xor eax, eax
add esp, 0xc
mov dword [ebp - 0xe4], 0
movq qword [ebp - 0xe0], xmm0
mov dword [ebp - 0xd8], 0
mov dword [ebp - 0x18], 7
mov dword [ebp - 0x1c], 0
mov word [ebp - 0x2c], ax
push str.____________________________________________________
mov dword [ebp - 4], eax
call fcn.00415fc0
cmp dword [edi + 0x14], 8
jb 0x45172f
mov eax, dword [edi]
jmp 0x451731
mov eax, edi
push eax
push str.CFuncMgr::DoLanSetupInstall___s__App_Install_Start
push 0xffffffffffffffff
push 0x1000
push 0x6fb428
call fcn.005a4e29
add esp, 0x14
push 0x6fb428
call fcn.00415fc0
push 8
xor eax, eax
push str.INSTALL_
lea ecx, [ebp - 0x44]
mov dword [ebp - 0x30], 7
mov dword [ebp - 0x34], 0
mov word [ebp - 0x44], ax
call fcn.004058d0
push 0xffffffffffffffff
push 0
push edi
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 1
call fcn.00405690
push 0xb
xor eax, eax
push str.InstDrvName
lea ecx, [ebp - 0x138]
mov dword [ebp - 0x124], 7
mov dword [ebp - 0x128], 0
mov word [ebp - 0x138], ax
call fcn.004058d0
lea eax, [ebp - 0x138]
mov byte [ebp - 4], 2
mov ecx, dword [0x6fb010]
push eax
lea eax, [ebp - 0x74]
push eax
lea ecx, [ecx + 0xc]
call fcn.00406e30
mov byte [ebp - 4], 4
cmp dword [ebp - 0x124], 8
jb 0x4517f0
push dword [ebp - 0x138]
call fcn.0048166b
add esp, 4
xor eax, eax
cmp dword [ebp - 0x60], 8
lea edx, [ebp - 0x74]
cmovae edx, dword [ebp - 0x74]
mov dword [ebp - 0x108], 7
mov dword [ebp - 0x10c], eax
mov word [ebp - 0x11c], ax
mov dword [ebp - 0x124], 7
mov dword [ebp - 0x128], 0
mov word [ebp - 0x138], ax
cmp word [edx], ax
jne 0x451838
xor ecx, ecx
jmp 0x45184f
mov ecx, edx
lea ebx, [ecx + 2]
lea ecx, [ecx]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x451840
sub ecx, ebx
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x11c]
call fcn.004058d0
mov byte [ebp - 4], 5
push 0xb
xor eax, eax
push str.InstAppName
lea ecx, [ebp - 0x104]
mov dword [ebp - 0xf0], 7
mov dword [ebp - 0xf4], 0
mov word [ebp - 0x104], ax
call fcn.004058d0
lea eax, [ebp - 0x11c]
mov byte [ebp - 4], 6
mov ecx, dword [0x6fb010]
push eax
lea eax, [ebp - 0x104]
push eax
lea ecx, [ecx + 0xc]
call fcn.00407490
cmp dword [ebp - 0xf0], 8
jb 0x4518c6
push dword [ebp - 0x104]
call fcn.0048166b
add esp, 4
xor eax, eax
mov byte [ebp - 4], 4
cmp dword [ebp - 0x108], 8
mov dword [ebp - 0xf0], 7
mov dword [ebp - 0xf4], 0
mov word [ebp - 0x104], ax
jb 0x4518fe
push dword [ebp - 0x11c]
call fcn.0048166b
add esp, 4
push 0xa
xor eax, eax
push str.ONLINEFLAG
lea ecx, [ebp - 0x11c]
mov dword [ebp - 0x108], 7
mov dword [ebp - 0x10c], 0
mov word [ebp - 0x11c], ax
call fcn.004058d0
mov byte [ebp - 4], 7
mov ecx, dword [0x6fb010]
lea eax, [ebp - 0x11c]
mov ebx, 1
push eax
lea ecx, [ecx + 0xc]
mov dword [ebp - 0x120], ebx
call fcn.004070c0
cmp eax, ebx
je 0x4519b7
push 0xd
xor eax, eax
push str.CD_ONLINEFLAG
lea ecx, [ebp - 0x104]
mov dword [ebp - 0xf0], 7
mov dword [ebp - 0xf4], 0
mov word [ebp - 0x104], ax
call fcn.004058d0
mov dword [ebp - 4], 8
mov ecx, dword [0x6fb010]
lea eax, [ebp - 0x104]
mov ebx, 3
push eax
lea ecx, [ecx + 0xc]
mov dword [ebp - 0x120], ebx
call fcn.004070c0
mov byte [ebp - 0xe5], 0
cmp eax, 1
jne 0x4519be
mov byte [ebp - 0xe5], 1
test bl, 2
je 0x4519fa
and ebx, 0xfffffffd
cmp dword [ebp - 0xf0], 8
jb 0x4519dd
push dword [ebp - 0x104]
call fcn.0048166b
add esp, 4
xor eax, eax
mov dword [ebp - 0xf0], 7
mov dword [ebp - 0xf4], 0
mov word [ebp - 0x104], ax
mov dword [ebp - 4], 4
test bl, 1
je 0x451a1d
cmp dword [ebp - 0x108], 8
jb 0x451a1d
push dword [ebp - 0x11c]
call fcn.0048166b
add esp, 4
xor eax, eax
mov dword [ebp - 0x108], 7
mov dword [ebp - 0x10c], 0
lea ecx, [ebp - 0x11c]
mov word [ebp - 0x11c], ax
cmp byte [ebp - 0xe5], al
je 0x451b3a
push 0xb
push str.FILE_ONLINE
call fcn.004058d0
lea eax, [ebp - 0x11c]
push eax
lea eax, [ebp - 0x44]
push eax
mov byte [ebp - 4], 9
mov ecx, dword [0x6fb010]
push esi
lea eax, [ebp - 0x150]
push eax
lea ecx, [ecx + 0x2c]
call fcn.004120a0
push eax
mov byte [ebp - 4], 0xa
mov ebx, dword [ebp - 0xec]
lea eax, [ebp - 0x104]
push eax
mov ecx, ebx
call fcn.00452290
mov esi, eax
lea eax, [ebp - 0x2c]
cmp eax, esi
je 0x451acd
cmp dword [ebp - 0x18], 8
jb 0x451ab0
push dword [ebp - 0x2c]
call fcn.0048166b
add esp, 4
xor eax, eax
push esi
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x18], 7
mov dword [ebp - 0x1c], 0
mov word [ebp - 0x2c], ax
call fcn.004053e0
cmp dword [ebp - 0xf0], 8
jb 0x451ae4
push dword [ebp - 0x104]
call fcn.0048166b
add esp, 4
xor eax, eax
cmp dword [ebp - 0x13c], 8
mov dword [ebp - 0xf0], 7
mov dword [ebp - 0xf4], 0
mov word [ebp - 0x104], ax
jb 0x451b18
push dword [ebp - 0x150]
call fcn.0048166b
add esp, 4
xor eax, eax
mov dword [ebp - 0x13c], 7
mov dword [ebp - 0x140], 0
mov word [ebp - 0x150], ax
jmp 0x451c23
push 4
push str.FILE
call fcn.004058d0
lea eax, [ebp - 0x11c]
push eax
lea eax, [ebp - 0x44]
push eax
mov byte [ebp - 4], 0xb
mov ecx, dword [0x6fb010]
push esi
lea eax, [ebp - 0x104]
push eax
lea ecx, [ecx + 0x2c]
call fcn.004120a0
push eax
mov byte [ebp - 4], 0xc
mov ebx, dword [ebp - 0xec]
lea eax, [ebp - 0x150]
push eax
mov ecx, ebx
call fcn.00452290
mov esi, eax
lea eax, [ebp - 0x2c]
cmp eax, esi
je 0x451bbb
cmp dword [ebp - 0x18], 8
jb 0x451b9e
push dword [ebp - 0x2c]
call fcn.0048166b
add esp, 4
xor eax, eax
push esi
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x18], 7
mov dword [ebp - 0x1c], 0
mov word [ebp - 0x2c], ax
call fcn.004053e0
cmp dword [ebp - 0x13c], 8
jb 0x451bd2
push dword [ebp - 0x150]
call fcn.0048166b
add esp, 4
xor eax, eax
cmp dword [ebp - 0xf0], 8
mov dword [ebp - 0x13c], 7
mov dword [ebp - 0x140], 0
mov word [ebp - 0x150], ax
jb 0x451c06
push dword [ebp - 0x104]
call fcn.0048166b
add esp, 4
xor eax, eax
mov dword [ebp - 0xf0], 7
mov dword [ebp - 0xf4], 0
mov word [ebp - 0x104], ax
mov byte [ebp - 4], 4
cmp dword [ebp - 0x108], 8
jb 0x451c3e
push dword [ebp - 0x11c]
call fcn.0048166b
add esp, 4
push 6
xor eax, eax
push str.OPTION
lea ecx, [ebp - 0x104]
mov dword [ebp - 0xf0], 7
mov dword [ebp - 0xf4], 0
mov word [ebp - 0x104], ax
call fcn.004058d0
mov esi, dword [ebp - 0x154]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0x44]
push eax
mov byte [ebp - 4], 0xd
mov ecx, dword [0x6fb010]
push esi
lea eax, [ebp - 0x150]
push eax
lea ecx, [ecx + 0x2c]
call fcn.004120a0
push eax
lea eax, [ebp - 0x5c]
push eax
mov ecx, ebx
mov byte [ebp - 4], 0xe
call fcn.00452290
cmp dword [ebp - 0x13c], 8
jb 0x451cbf
push dword [ebp - 0x150]
call fcn.0048166b
add esp, 4
xor eax, eax
mov dword [ebp - 0x13c], 7
mov dword [ebp - 0x140], 0
mov word [ebp - 0x150], ax
mov byte [ebp - 4], 0x11
cmp dword [ebp - 0xf0], 8
jb 0x451cf7
push dword [ebp - 0x104]
call fcn.0048166b
add esp, 4
xor eax, eax
push 9
push str.PARAMETER
lea ecx, [ebp - 0x138]
mov dword [ebp - 0xf0], 7
mov dword [ebp - 0xf4], 0
mov word [ebp - 0x104], ax
mov dword [ebp - 0x124], 7
mov dword [ebp - 0x128], eax
mov word [ebp - 0x138], ax
call fcn.004058d0
lea eax, [ebp - 0x138]
push eax
lea eax, [ebp - 0x44]
push eax
mov byte [ebp - 4], 0x12
mov ecx, dword [0x6fb010]
push esi
lea eax, [ebp - 0x8c]
push eax
lea ecx, [ecx + 0x2c]
call fcn.004120a0
mov byte [ebp - 4], 0x14
cmp dword [ebp - 0x124], 8
jb 0x451d7d
push dword [ebp - 0x138]
call fcn.0048166b
add esp, 4
xor eax, eax
push 8
push str.Interval
lea ecx, [ebp - 0x11c]
mov dword [ebp - 0x124], 7
mov dword [ebp - 0x128], 0
mov word [ebp - 0x138], ax
mov dword [ebp - 0x108], 7
mov dword [ebp - 0x10c], eax
mov word [ebp - 0x11c], ax
call fcn.004058d0
lea eax, [ebp - 0x11c]
push eax
mov byte [ebp - 4], 0x15
mov ecx, dword [0x6fb010]
lea eax, [ebp - 0x44]
push eax
push esi
lea ecx, [ecx + 0x2c]
call fcn.00412330
mov byte [ebp - 4], 0x14
cmp dword [ebp - 0x108], 8
mov ebx, eax
jb 0x451dfe
push dword [ebp - 0x11c]
call fcn.0048166b
add esp, 4
push 7
xor eax, eax
push str.Timeout
lea ecx, [ebp - 0x11c]
mov dword [ebp - 0x108], 7
mov dword [ebp - 0x10c], 0
mov word [ebp - 0x11c], ax
call fcn.004058d0
lea eax, [ebp - 0x11c]
push eax
lea eax, [ebp - 0x44]
mov byte [ebp - 4], 0x16
mov ecx, dword [0x6fb010]
push eax
push esi
add ecx, 0x2c
call fcn.00412330
mov byte [ebp - 4], 0x14
cmp dword [ebp - 0x108], 8
mov esi, eax
jb 0x451e68
push dword [ebp - 0x11c]
call fcn.0048166b
add esp, 4
push 0
push 0x60ec18
push dword [ebp - 0x7c]
mov eax, 0x64
test ebx, ebx
cmove ebx, eax
mov eax, 0x493e0
test esi, esi
cmove esi, eax
push ecx
lea ecx, [ebp - 0x8c]
mov dword [ebp - 0x120], ebx
mov dword [ebp - 0x158], esi
call fcn.00406530
test eax, eax
je 0x451ebb
mov esi, dword [ebp - 0x154]
mov ecx, dword [ebp - 0xec]
lea eax, [ebp - 0x8c]
push eax
push esi
call fcn.004534f0
push 6
push str.Silent
mov ecx, 0x6fb2b8
call fcn.004058d0
call fcn.0048b870
xor ecx, ecx
mov edx, eax
test edx, edx
setne cl
test ecx, ecx
jne 0x451ee8
push 0x80004005
call fcn.004091f0
mov eax, dword [edx]
mov ecx, edx
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0xec], eax
push 0
push 0x60ec18
mov byte [ebp - 4], 0x17
push dword [ebp - 0x4c]
push ecx
lea ecx, [ebp - 0x5c]
call fcn.00406530
test eax, eax
lea eax, [ebp - 0x2c]
je 0x451f41
cmp dword [ebp - 0x48], 8
lea ecx, [ebp - 0x5c]
cmovae ecx, dword [ebp - 0x5c]
cmp dword [ebp - 0x18], 8
push ecx
cmovae eax, dword [ebp - 0x2c]
push eax
lea eax, [ebp - 0xec]
push str.__s___s
push eax
call fcn.0041c0f0
add esp, 0x10
jmp 0x451f5e
cmp dword [ebp - 0x18], 8
cmovae eax, dword [ebp - 0x2c]
push eax
lea eax, [ebp - 0xec]
push 0x622ac4
push eax
call fcn.0041c0f0
add esp, 0xc
mov esi, dword [ebp - 0xec]
cmp dword [esi - 4], 1
jle 0x451f7e
push dword [esi - 0xc]
lea ecx, [ebp - 0xec]
call fcn.00409070
mov esi, dword [ebp - 0xec]
cmp dword [edi + 0x14], 8
jb 0x451f88
mov eax, dword [edi]
jmp 0x451f8a
mov eax, edi
push esi
push eax
push str.CFuncMgr::DoLanSetupInstall___s__App_Install_Command:_s
push 0xffffffffffffffff
push 0x1000
push 0x6fb428
call fcn.005a4e29
add esp, 0x18
push 0x6fb428
call fcn.00415fc0
mov eax, 1
mov dword [ebp - 0xd4], 0x44
mov dword [ebp - 0xa8], 1
mov word [ebp - 0xa4], ax
cmp dword [esi - 4], eax
jle 0x451fe8
push dword [esi - 0xc]
lea ecx, [ebp - 0xec]
call fcn.00409070
mov esi, dword [ebp - 0xec]
lea eax, [ebp - 0xe4]
push eax
lea eax, [ebp - 0xd4]
push eax
push 0
push 0
push 0x20
push 0
push 0
push 0
push esi
push 0
call dword [sym.imp.KERNEL32.dll_CreateProcessW]
test eax, eax
je 0x45215e
mov eax, dword [ebp - 0xe4]
test eax, eax
je 0x45215e
mov ecx, dword [ebp - 0xe0]
test ecx, ecx
je 0x452038
push ecx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0xe4]
push dword [ebp - 0x120]
xor ebx, ebx
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test eax, eax
je 0x452071
jmp 0x452050
mov eax, dword [ebp - 0x120]
add ebx, eax
cmp ebx, dword [ebp - 0x158]
ja 0x4520a0
push eax
push dword [ebp - 0xe4]
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test eax, eax
jne 0x452050
call fcn.00457c00
call fcn.00457e50
mov ebx, dword [ebp - 0x15c]
test ebx, ebx
je 0x45210f
push ebx
push dword [ebp - 0xe4]
call dword [sym.imp.KERNEL32.dll_GetExitCodeProcess]
cmp dword [edi + 0x14], 8
jb 0x4520e7
mov eax, dword [edi]
jmp 0x4520e9
push 0
push dword [ebp - 0xe4]
call dword [sym.imp.KERNEL32.dll_TerminateProcess]
mov eax, dword [ebp - 0xe4]
test eax, eax
je 0x4520c0
push eax
mov eax, dword [sym.imp.KERNEL32.dll_CloseHandle]
call eax
cmp dword [edi + 0x14], 8
jb 0x4520c8
mov edi, dword [edi]
push edi
push str.CFuncMgr::DoLanSetupInstall___s__App_CreateProcess___Timeout_Failed
push 0xffffffffffffffff
push 0x1000
push 0x6fb428
call fcn.005a4e29
add esp, 0x14
jmp 0x452187
mov eax, edi
push dword [ebx]
push eax
push str.CFuncMgr::DoLanSetupInstall___s__App_CreateProcess___ExitCode:0x_08x
push 0xffffffffffffffff
push 0x1000
push 0x6fb428
call fcn.005a4e29
add esp, 0x18
push 0x6fb428
call fcn.00415fc0
mov eax, dword [ebp - 0xe4]
test eax, eax
je 0x452121
push eax
mov eax, dword [sym.imp.KERNEL32.dll_CloseHandle]
call eax
cmp dword [edi + 0x14], 8
jb 0x452129
mov edi, dword [edi]
push edi
push str.CFuncMgr::DoLanSetupInstall___s__App_Install_End
push 0xffffffffffffffff
push 0x1000
push 0x6fb428
call fcn.005a4e29
add esp, 0x14
push 0x6fb428
call fcn.00415fc0
push str.____________________________________________________
call fcn.00415fc0
mov edi, 1
jmp 0x45219d
cmp dword [edi + 0x14], 8
jb 0x452166
mov edi, dword [edi]
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push edi
push str.CFuncMgr::DoLanSetupInstall___s__App_CreateProcess___Failed_:0x_08x
push 0xffffffffffffffff
push 0x1000
push 0x6fb428
call fcn.005a4e29
add esp, 0x18
push 0x6fb428
call fcn.00415fc0
push str.____________________________________________________
call fcn.00415fc0
xor edi, edi
add esi, 0xfffffff0
mov byte [ebp - 4], 0x14
lea eax, [esi + 0xc]
or ecx, 0xffffffff
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x4521bb
mov ecx, dword [esi]
push esi
mov eax, dword [ecx]
call dword [eax + 4]
cmp dword [ebp - 0x78], 8
jb 0x4521cf
push dword [ebp - 0x8c]
call fcn.0048166b
add esp, 4
xor eax, eax
cmp dword [ebp - 0x48], 8
mov dword [ebp - 0x78], 7
mov dword [ebp - 0x7c], 0
mov word [ebp - 0x8c], ax
jb 0x4521f7
push dword [ebp - 0x5c]
call fcn.0048166b
add esp, 4
xor eax, eax
cmp dword [ebp - 0x60], 8
mov dword [ebp - 0x48], 7
mov dword [ebp - 0x4c], 0
mov word [ebp - 0x5c], ax
jb 0x45221c
push dword [ebp - 0x74]
call fcn.0048166b
add esp, 4
xor eax, eax
cmp dword [ebp - 0x30], 8
mov dword [ebp - 0x60], 7
mov dword [ebp - 0x64], 0
mov word [ebp - 0x74], ax
jb 0x452241
push dword [ebp - 0x44]
call fcn.0048166b
add esp, 4
xor eax, eax
cmp dword [ebp - 0x18], 8
mov dword [ebp - 0x30], 7
mov dword [ebp - 0x34], 0
mov word [ebp - 0x44], ax
jb 0x452266
push dword [ebp - 0x2c]
call fcn.0048166b
add esp, 4
mov eax, edi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.005a4646
mov esp, ebp
pop ebp
ret 0xc