Function at 0x407beb
Capabilities:
Terminate process

Disassembly:
sub esp, 0x418
mov dl, byte [0x42868c]
push ebx
push ebp
push esi
push edi
mov ebx, ecx
push 0x40
xor eax, eax
pop ecx
lea edi, [esp + 0x19]
mov byte [esp + 0x18], dl
push 0x40
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
pop ecx
xor eax, eax
lea edi, [esp + 0x11d]
mov byte [esp + 0x11c], dl
rep stosd dword es:[edi], eax
mov esi, dword [esp + 0x42c]
push str.__vProcessCMDLine
stosw word es:[edi], ax
mov dword [esp + 0x14], ebx
stosb byte es:[edi], al
call fcn.004013fd
test esi, esi
pop ecx
mov ebp, 0x42a254
je 0x407ec4
mov al, byte [esi]
test al, al
je 0x407ec4
cmp al, 0x2f
je 0x407c60
cmp al, 0x2d
jne 0x407ebd
inc esi
mov cl, byte [esi + 1]
lea eax, [esi + 1]
cmp cl, 0x20
je 0x407c74
test cl, cl
jne 0x407f3d
movsx ecx, byte [esi]
push ecx
mov esi, eax
call fcn.0040ca01
cmp eax, 0x4b
pop ecx
jg 0x407d9c
je 0x407d90
sub eax, 0x41
je 0x407d84
dec eax
je 0x407d78
dec eax
dec eax
je 0x407cf2
dec eax
dec eax
je 0x407cbc
sub eax, 3
jne 0x407f59
mov byte [0x4265e4], 1
jmp 0x407ebd
xor ecx, ecx
mov al, byte [esi]
cmp al, 0x20
jne 0x407ccb
test al, al
je 0x407ccb
inc esi
jmp 0x407cbe
mov al, byte [esi]
cmp al, 0x20
je 0x407cdf
test al, al
je 0x407cdf
mov byte [ecx + 0x42a560], al
inc ecx
inc esi
jmp 0x407ccb
and byte [ecx + 0x42a560], 0
mov byte [0x42a14b], 1
jmp 0x407ebd
xor edi, edi
mov al, byte [esi]
cmp al, 0x20
jne 0x407d01
test al, al
je 0x407d01
inc esi
jmp 0x407cf4
mov al, byte [esi]
test al, al
je 0x407d22
cmp al, 0x20
jne 0x407d18
mov cl, byte [esi + 1]
cmp cl, 0x2d
je 0x407d22
cmp cl, 0x2f
je 0x407d22
mov byte [edi + 0x42a254], al
inc edi
inc esi
jmp 0x407d01
and byte [edi + 0x42a254], 0
push 0x426c04
push ebp
call fcn.0040c250
pop ecx
test eax, eax
pop ecx
jne 0x407f4b
lea eax, [edi + 0x42a253]
cmp byte [eax], 0x20
jne 0x407d4f
and byte [eax], 0
dec eax
jmp 0x407d44
push ebp
call fcn.0040c0a0
cmp byte [eax + 0x42a253], 0x5c
pop ecx
je 0x407d6c
push 0x42503c
push ebp
call fcn.0040bb40
pop ecx
pop ecx
mov byte [0x42a14a], 1
jmp 0x407ebd
mov byte [0x42a147], 1
jmp 0x407ebd
mov byte [0x42a14d], 1
jmp 0x407ebd
mov byte [0x42a148], 1
jmp 0x407ebd
sub eax, 0x50
je 0x407eb6
dec eax
dec eax
je 0x407ea6
dec eax
je 0x407e9d
sub eax, 3
je 0x407f75
dec eax
jne 0x407f59
xor edi, edi
mov al, byte [esi]
cmp al, 0x20
jne 0x407dd3
test al, al
je 0x407dd3
inc esi
jmp 0x407dc6
mov al, byte [esi]
cmp al, 0x20
je 0x407de7
test al, al
je 0x407de7
mov byte [edi + 0x42a45c], al
inc edi
inc esi
jmp 0x407dd3
and byte [edi + 0x42a45c], 0
push 0x426c04
push 0x42a45c
call fcn.0040c250
pop ecx
test eax, eax
pop ecx
jne 0x407f67
lea eax, [edi + 0x42a45b]
cmp byte [eax], 0x20
jne 0x407e18
and byte [eax], 0
dec eax
jmp 0x407e0d
mov edi, 0x42a45c
push edi
call fcn.0040c0a0
cmp byte [eax + 0x42a45b], 0x5c
pop ecx
jne 0x407e43
push edi
call fcn.0040c0a0
and byte [eax + 0x42a45b], 0
push edi
call fcn.0040c0a0
pop ecx
jmp 0x407e23
lea edi, [ebx + 0xc0]
push 0x104
push 0
push edi
call fcn.0040ba40
add esp, 0xc
push 0x104
push edi
push 0x42a45c
call dword [sym.imp.KERNEL32.dll_GetShortPathNameA]
test eax, eax
je 0x407e7b
push edi
push 0x42a45c
call fcn.0040bb30
pop ecx
pop ecx
mov edi, 0x42a45c
push edi
push str.SetSourcePath_:__s
call fcn.004013fd
push edi
call fcn.0040a0c5
add esp, 0xc
mov byte [0x42a149], 1
jmp 0x407ebd
mov byte [0x42a146], 1
jmp 0x407ebd
and byte [0x4265e4], 0
mov byte [0x42a145], 1
jmp 0x407ebd
and byte [0x4265e5], 0
inc esi
jne 0x407c4a
cmp byte [0x4265e5], 0
jne 0x407ed6
cmp byte [0x42a145], 0
jne 0x407f2f
cmp byte [0x42a14d], 0
mov al, byte [0x42a141]
je 0x407f15
cmp byte [0x42a145], 0
jne 0x407f2f
cmp byte [0x42a13c], 0
jne 0x407f2f
cmp byte [0x42a13d], 0
jne 0x407f2f
cmp byte [0x42a13e], 0
jne 0x407f2f
cmp byte [0x42a13f], 0
jne 0x407f2f
test al, al
jne 0x407f2f
cmp byte [0x42a148], 0
je 0x408022
cmp byte [0x42a145], 0
jne 0x408022
mov ecx, ebx
call fcn.00408738
push 2
call fcn.0040be8d
mov ecx, ebx
call fcn.00408738
push 2
call fcn.0040be8d
mov ecx, ebx
call fcn.00408738
push 2
call fcn.0040be8d
mov ecx, ebx
call fcn.00408738
push 2
call fcn.0040be8d
mov ecx, ebx
call fcn.00408738
push 2
call fcn.0040be8d
mov esi, 0x104
lea edi, [ebx + 0xc0]
push esi
push edi
xor ebp, ebp
push 0xc357
push ebp
call dword [sym.imp.USER32.dll_LoadStringA]
lea eax, [esp + 0x324]
push esi
push eax
push ebp
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
test eax, eax
je 0x407fef
lea esi, [ebx + 0x1c4]
lea eax, [esp + 0x324]
push eax
mov ecx, esi
call fcn.00401421
lea eax, [esp + 0x14]
mov ecx, esi
push eax
call fcn.004014d2
push dword [eax]
lea eax, [esp + 0x224]
push edi
push str._s__s
push eax
call fcn.0040becd
add esp, 0x10
lea ecx, [esp + 0x14]
call fcn.00415c12
mov ecx, esi
call fcn.0040140d
jmp 0x408005
push edi
lea eax, [esp + 0x224]
push str._s_3.01
push eax
call fcn.0040becd
add esp, 0xc
push 0x40
lea eax, [esp + 0x224]
push 0x425048
push eax
push ebp
call dword [sym.imp.USER32.dll_MessageBoxA]
push 2
call fcn.0040be8d
test al, al
mov edi, 0x42a560
je 0x408045
mov esi, 0x426bd8
push esi
push edi
call fcn.0040bb30
push esi
push 0x42a768
call fcn.0040bb30
add esp, 0x10
push ebp
call fcn.0040c0a0
test eax, eax
pop ecx
jne 0x40808e
push 0x42a150
push ebp
call fcn.0040bb30
push str.winsetup
push ebp
call fcn.0040bb40
push ebp
call fcn.0040c0a0
add esp, 0x14
cmp byte [eax + 0x42a253], 0x5c
je 0x408161
push 0x42503c
push ebp
call fcn.0040bb40
pop ecx
pop ecx
jmp 0x408161
mov esi, 0x425200
push esi
call fcn.0040c0a0
push eax
push esi
push ebp
call fcn.0040c8b9
add esp, 0x10
test eax, eax
jne 0x4080cb
lea eax, [esp + 0x18]
push 0x42a150
push eax
call fcn.0040bb30
lea eax, [esp + 0x20]
push ebp
push eax
push esi
call fcn.00409227
add esp, 0x14
jmp 0x408161
mov esi, 0x426bd4
push esi
call fcn.0040c0a0
push eax
push esi
push ebp
call fcn.0040c8b9
add esp, 0x10
test eax, eax
jne 0x408161
lea eax, [esp + 0x18]
push 0x42a150
push eax
call fcn.0040bb30
push esi
mov ebx, ebp
call fcn.0040c0a0
push eax
push esi
push ebp
call fcn.0040c8b9
add esp, 0x18
test eax, eax
jne 0x408134
mov ecx, dword [esp + 0x10]
lea eax, [esp + 0x18]
push eax
call fcn.004086e8
push esi
call fcn.0040c0a0
push esi
add ebx, eax
call fcn.0040c0a0
push eax
push esi
push ebx
call fcn.0040c8b9
add esp, 0x14
jmp 0x408107
lea eax, [esp + 0x11c]
push ebx
push eax
call fcn.0040bb30
lea eax, [esp + 0x124]
push eax
lea eax, [esp + 0x24]
push eax
push 0x425080
push ebp
call fcn.0040becd
mov ebx, dword [esp + 0x28]
add esp, 0x18
push edi
mov byte [0x4265e6], 1
call fcn.0040c0a0
test eax, eax
pop ecx
jne 0x408208
push ebp
mov ecx, ebx
call fcn.004082b9
test eax, eax
jne 0x408289
push ebp
mov ecx, ebx
call fcn.004086e8
push ebp
mov ecx, ebx
call fcn.004082b9
test eax, eax
jne 0x408289
push ebp
mov ecx, ebx
call fcn.004086e8
push ebp
mov ecx, ebx
call fcn.004082b9
test eax, eax
jne 0x408289
and byte [0x42a257], al
push ebp
mov ecx, ebx
call fcn.004082b9
test eax, eax
jne 0x408289
cmp byte [0x4265e6], al
je 0x408289
lea esi, [ebx + 0xc0]
push 0x104
push esi
push 0xc358
push eax
call dword [sym.imp.USER32.dll_LoadStringA]
push 0x40
push 0x425048
push esi
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
push 2
call fcn.0040be8d
push edi
push ebp
mov ecx, ebx
call fcn.0040845f
test eax, eax
jne 0x408289
push ebp
mov ecx, ebx
call fcn.004086e8
push edi
push ebp
mov ecx, ebx
call fcn.0040845f
test eax, eax
jne 0x408289
push ebp
mov ecx, ebx
call fcn.004086e8
push edi
push ebp
mov ecx, ebx
call fcn.0040845f
test eax, eax
jne 0x408289
and byte [0x42a257], al
push edi
push ebp
mov ecx, ebx
call fcn.0040845f
test eax, eax
jne 0x408289
cmp byte [0x4265e6], al
je 0x408289
lea esi, [ebx + 0xc0]
push 0x104
push esi
push 0xc358
push eax
call dword [sym.imp.USER32.dll_LoadStringA]
push 0x40
push 0x425048
push esi
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
push 2
call fcn.0040be8d
push ebp
push str.vProcessCMDLine_m_szDriverPath:__s
call fcn.004013fd
push edi
push str.vProcessCMDLine_m_szInfName:__s
call fcn.004013fd
push 0x426b7c
call fcn.004013fd
add esp, 0x14
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x418
ret 4