Function at 0x402790
Capabilities:
Copy file
Delete file
Enumerate processes
Get disk information
Get system information on windows
Move file
Query environment variable
Set console window title
Terminate process

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4acd44
mov eax, dword fs:[0]
push eax
sub esp, 0x7b8
mov eax, dword [0x4c83a4]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
xor eax, eax
mov dword [ebp - 0x7b8], eax
lea eax, [ebp - 0x114]
push 0x104
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
lea eax, [ebp - 0x114]
cmp eax, 0x20
jle 0x4029e3
mov ecx, eax
mov dword [ebp - 0x584], 0
xorps xmm0, xmm0
mov dword [ebp - 0x580], 0
movups xmmword [ebp - 0x594], xmm0
lea edx, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x402810
sub ecx, edx
lea eax, [ebp - 0x114]
push ecx
push eax
lea ecx, [ebp - 0x594]
call fcn.00407470
lea ecx, [ebp - 0x570]
mov dword [ebp - 4], 0
call fcn.004023f0
mov ecx, eax
mov byte [ebp - 4], 1
mov esi, dword [ecx + 0x14]
mov eax, esi
mov edx, dword [ecx + 0x10]
sub eax, edx
cmp eax, 4
jb 0x402870
lea eax, [edx + 4]
mov dword [ecx + 0x10], eax
mov eax, ecx
cmp esi, 0x10
jb 0x402862
mov eax, dword [ecx]
mov dword [eax + edx], 0x4558452e
mov byte [eax + edx + 4], 0
jmp 0x40288d
push 4
push str..EXE
mov byte [ebp - 0x528], 0
push dword [ebp - 0x528]
push 4
call fcn.004076a0
mov ecx, eax
mov dword [ebp - 0x548], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x558], xmm0
mov dword [ebp - 0x544], 0
movups xmm0, xmmword [ecx]
mov dword [ebp - 0x7b8], 2
movups xmmword [ebp - 0x558], xmm0
movq xmm0, qword [ecx + 0x10]
movq qword [ebp - 0x548], xmm0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
mov byte [ecx], 0
mov byte [ebp - 4], 0
mov ecx, dword [ebp - 0x55c]
cmp ecx, 0x10
jb 0x40291b
mov edx, dword [ebp - 0x570]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x402911
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40387e
push ecx
push edx
call fcn.0048573c
add esp, 8
cmp dword [ebp - 0x544], 0x10
lea ecx, [ebp - 0x558]
lea eax, [ebp - 0x594]
cmovae ecx, dword [ebp - 0x558]
cmp dword [ebp - 0x580], 0x10
push ecx
cmovae eax, dword [ebp - 0x594]
push eax
call fcn.0048db56
mov ecx, dword [ebp - 0x544]
add esp, 8
cmp ecx, 0x10
jb 0x402987
mov edx, dword [ebp - 0x558]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40297d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x403883
push ecx
push edx
call fcn.0048573c
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x580]
mov dword [ebp - 0x548], 0
mov dword [ebp - 0x544], 0xf
mov byte [ebp - 0x558], 0
cmp ecx, 0x10
jb 0x4029e3
mov edx, dword [ebp - 0x594]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4029d9
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x403883
push ecx
push edx
call fcn.0048573c
add esp, 8
push 0x20
xorps xmm0, xmm0
mov dword [ebp - 0x5e4], 0
push str.13a27d9e33b4a0d0e0fdd32d7f2775f3
lea ecx, [ebp - 0x5f4]
mov dword [ebp - 0x5e0], 0
movups xmmword [ebp - 0x5f4], xmm0
call fcn.00407470
lea eax, [ebp - 0x57c]
mov dword [ebp - 4], 2
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemInfo]
movzx eax, word [ebp - 0x55a]
add eax, dword [ebp - 0x564]
movzx ecx, word [ebp - 0x55c]
add ecx, eax
lea eax, [ebp - 0x31c]
push 0xa
push eax
push ecx
call fcn.0048e6e8
lea edx, [ebp - 0x31c]
add esp, 0xc
mov esi, edx
mov al, byte [edx]
inc edx
test al, al
jne 0x402a57
mov edi, 0x4ca6c8
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x402a66
mov ecx, edx
lea eax, [ebp - 0x218]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
push 0x104
mov ecx, edx
and ecx, 3
push eax
rep movsb byte es:[edi], byte [esi]
push str.HOMEDRIVE
call dword [sym.imp.KERNEL32.dll_GetEnvironmentVariableA]
lea edi, [ebp - 0x218]
dec edi
nop word [eax + eax]
mov al, byte [edi + 1]
lea edi, [edi + 1]
test al, al
jne 0x402aa0
mov ax, word [0x4b7fd4]
push 0
push 0
push 0
push 0
mov word [edi], ax
lea eax, [ebp - 0x528]
push eax
push 0
push 0
lea eax, [ebp - 0x218]
push eax
call dword [sym.imp.KERNEL32.dll_GetVolumeInformationA]
test eax, eax
je 0x40382a
push 0xa
lea eax, [ebp - 0x420]
push eax
push dword [ebp - 0x528]
call fcn.0048e6e8
lea edx, [ebp - 0x420]
add esp, 0xc
mov esi, edx
nop word [eax + eax]
mov al, byte [edx]
inc edx
test al, al
jne 0x402b00
mov edi, 0x4ca6c8
sub edx, esi
dec edi
nop
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x402b10
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
push str.ADVAPI32.DLL
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov esi, eax
mov dword [ebp - 0x7bc], esi
test esi, esi
je 0x40382a
push str.GetCurrentHwProfileA
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
je 0x403823
lea ecx, [ebp - 0x688]
push ecx
call eax
test eax, eax
je 0x403823
push 0xa
lea eax, [ebp - 0x524]
push eax
push dword [ebp - 0x688]
call fcn.0048e6e8
lea edx, [ebp - 0x524]
add esp, 0xc
mov esi, edx
mov al, byte [edx]
inc edx
test al, al
jne 0x402b85
mov edi, 0x4ca6c8
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x402b94
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
lea edx, [ebp - 0x684]
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov esi, edx
mov al, byte [edx]
inc edx
test al, al
jne 0x402bb2
mov edi, 0x4ca6c8
sub edx, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x402bc1
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
lea edx, [ebp - 0x65d]
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov esi, edx
nop
mov al, byte [edx]
inc edx
test al, al
jne 0x402be0
mov ecx, 0x4ca6c8
sub edx, esi
dec ecx
nop
mov al, byte [ecx + 1]
inc ecx
test al, al
jne 0x402bf0
mov edi, ecx
mov ecx, edx
push dword [ebp - 0x7bc]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
xorps xmm0, xmm0
mov dword [ebp - 0x5b4], 0
movups xmmword [ebp - 0x5c4], xmm0
mov dword [ebp - 0x5b0], 0xf
mov byte [ebp - 0x5c4], 0
movups xmmword [ebp - 0x60c], xmm0
mov dword [ebp - 0x5fc], 0
mov dword [ebp - 0x5f8], 0xf
mov byte [ebp - 0x60c], 0
movups xmmword [ebp - 0x5dc], xmm0
mov dword [ebp - 0x5cc], 0
mov dword [ebp - 0x5c8], 0xf
mov byte [ebp - 0x5dc], 0
movups xmmword [ebp - 0x540], xmm0
mov dword [ebp - 0x530], 0
mov dword [ebp - 0x52c], 0xf
mov byte [ebp - 0x540], 0
movups xmmword [ebp - 0x5ac], xmm0
mov dword [ebp - 0x59c], 0
mov dword [ebp - 0x598], 0xf
mov byte [ebp - 0x5ac], 0
sub esp, 0x18
mov byte [ebp - 4], 7
mov edx, esp
mov ecx, 0x4ca6c8
movups xmmword [edx], xmm0
mov dword [edx + 0x10], 0
lea esi, [ecx + 1]
mov dword [edx + 0x14], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x402ce3
sub ecx, esi
push ecx
push 0x4ca6c8
mov ecx, edx
call fcn.00407470
lea ecx, [ebp - 0x570]
call fcn.00408890
add esp, 0x18
mov edx, eax
mov byte [ebp - 4], 8
cmp dword [edx + 0x14], 0x10
jb 0x402d15
mov edx, dword [edx]
mov ecx, edx
lea esi, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x402d20
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0x5dc]
call fcn.004060d0
mov byte [ebp - 4], 7
mov ecx, dword [ebp - 0x55c]
cmp ecx, 0x10
jb 0x402d74
mov edx, dword [ebp - 0x570]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x402d6a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x403888
push ecx
push edx
call fcn.0048573c
add esp, 8
sub esp, 0x18
mov ecx, 0x4ca6c8
mov edx, esp
xorps xmm0, xmm0
lea esi, [ecx + 1]
movups xmmword [edx], xmm0
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x402d95
sub ecx, esi
push ecx
push 0x4ca6c8
mov ecx, edx
call fcn.00407470
lea ecx, [ebp - 0x570]
call fcn.00408890
add esp, 0x18
cmp dword [eax + 0x14], 0x10
jb 0x402dc1
mov eax, dword [eax]
push eax
call dword [sym.imp.KERNEL32.dll_SetConsoleTitleA]
mov ecx, dword [ebp - 0x55c]
cmp ecx, 0x10
jb 0x402e02
mov edx, dword [ebp - 0x570]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x402df8
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40388d
push ecx
push edx
call fcn.0048573c
add esp, 8
mov edi, dword [ebp - 0x540]
mov dword [ebp - 0x528], edi
nop
call fcn.004020c0
mov edx, 0x4b80d8
call fcn.004067b0
mov edx, str.____www.hdcheats.net___SF_VIP
call fcn.004067b0
mov edx, str._n_n_Select_option:_n
call fcn.004067b0
mov edx, str._n_____1_____Login_n_____2_____Topup_n_n_
call fcn.004067b0
lea edx, [ebp - 0x5ac]
call fcn.00406e10
cmp dword [0x4c8e7c], 0x10
lea ecx, [ebp - 0x5c4]
push dword [0x4c8e78]
mov eax, 0x4c8e68
cmovae eax, dword [0x4c8e68]
push eax
call fcn.004060d0
push 0
push 0x4b7f7c
lea ecx, [ebp - 0x60c]
call fcn.004060d0
cmp dword [ebp - 0x598], 0x10
lea ecx, [ebp - 0x5ac]
mov edx, dword [ebp - 0x5ac]
mov esi, dword [ebp - 0x59c]
setae byte [ebp - 0x7b1]
cmovae ecx, edx
cmp esi, 1
jne 0x402ebf
movzx eax, byte [ecx]
cmp al, 0x31
jne 0x402eb2
xor eax, eax
jmp 0x402eb7
sbb eax, eax
or eax, 1
test eax, eax
je 0x403361
cmp byte [ebp - 0x7b1], 0
lea eax, [ebp - 0x5ac]
cmovne eax, edx
cmp esi, 1
jne 0x403345
movzx eax, byte [eax]
cmp al, 0x32
jne 0x402ee3
xor eax, eax
jmp 0x402ee8
sbb eax, eax
or eax, 1
test eax, eax
jne 0x403345
push 0x4b8138
call fcn.0048d943
push str.color_0b
call fcn.0048d943
sub esp, 0x10
mov ecx, 0x4ca6c8
mov edx, esp
xorps xmm0, xmm0
lea esi, [ecx + 1]
movups xmmword [edx], xmm0
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x402f25
sub ecx, esi
push ecx
push 0x4ca6c8
mov ecx, edx
call fcn.00407470
lea ecx, [ebp - 0x570]
call fcn.00408890
add esp, 0x18
cmp dword [eax + 0x14], 0x10
jb 0x402f51
mov eax, dword [eax]
push eax
call dword [sym.imp.KERNEL32.dll_SetConsoleTitleA]
mov ecx, dword [ebp - 0x55c]
cmp ecx, 0x10
jb 0x402f92
mov edx, dword [ebp - 0x570]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x402f88
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40387e
push ecx
push edx
call fcn.0048573c
add esp, 8
sub esp, 0x18
mov byte [ebp - 0x7b1], 0
lea eax, [ebp - 0x5dc]
mov dword [ebp - 0x7c4], esp
mov ecx, esp
push eax
call fcn.00405450
sub esp, 0x18
mov byte [ebp - 4], 0xa
lea eax, [ebp - 0x5c4]
mov ecx, esp
push eax
call fcn.00405450
mov dl, byte [ebp - 0x7b1]
lea ecx, [ebp - 0x570]
mov byte [ebp - 4], 7
call fcn.00408ab0
mov esi, eax
add esp, 0x30
lea eax, [ebp - 0x540]
cmp eax, esi
je 0x403053
mov eax, dword [ebp - 0x52c]
cmp eax, 0x10
jb 0x40301f
lea ecx, [eax + 1]
mov eax, edi
cmp ecx, 0x1000
jb 0x403015
mov edi, dword [eax - 4]
add ecx, 0x23
sub eax, edi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40387e
push ecx
push edi
call fcn.0048573c
add esp, 8
movups xmm0, xmmword [esi]
movups xmmword [ebp - 0x540], xmm0
mov edi, dword [ebp - 0x540]
movq xmm0, qword [esi + 0x10]
movq qword [ebp - 0x530], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
mov byte [esi], 0
mov dword [ebp - 0x528], edi
mov ecx, dword [ebp - 0x55c]
cmp ecx, 0x10
jb 0x40308d
mov edx, dword [ebp - 0x570]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x403083
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40387e
push ecx
push edx
call fcn.0048573c
add esp, 8
push 0x4b8138
call fcn.0048d943
mov esi, dword [ebp - 0x52c]
lea ecx, [ebp - 0x540]
add esp, 4
cmp esi, 0x10
setae dl
cmovae ecx, edi
cmp dword [ebp - 0x530], 2
jne 0x4030de
movzx eax, byte [ecx]
cmp al, 0x73
jne 0x4030cb
movzx eax, byte [ecx + 1]
cmp al, 0x31
jne 0x4030cb
xor eax, eax
jmp 0x4030d0
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4030de
mov edx, str._nSQL_Failed_1_n_n
jmp 0x403314
test dl, dl
lea ecx, [ebp - 0x540]
mov edx, dword [ebp - 0x530]
cmovne ecx, edi
cmp edx, 2
jne 0x4032ae
movzx eax, byte [ecx]
cmp al, 0x73
jne 0x40310b
movzx eax, byte [ecx + 1]
cmp al, 0x32
jne 0x40310b
xor eax, eax
jmp 0x403110
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4032ae
lea eax, [ebp - 0x5c4]
mov edx, str._nThis___
push eax
lea ecx, [ebp - 0x594]
call fcn.004070f0
add esp, 4
mov edi, eax
mov byte [ebp - 4], 0xb
mov edx, dword [edi + 0x14]
mov eax, edx
mov ecx, dword [edi + 0x10]
sub eax, ecx
cmp eax, 0x14
jb 0x40316f
lea eax, [ecx + 0x14]
mov dword [edi + 0x10], eax
mov eax, edi
cmp edx, 0x10
jb 0x403156
mov eax, dword [edi]
push 0x14
lea esi, [eax + ecx]
push str.____already_exists_n_n
push esi
call fcn.004876b0
add esp, 0xc
mov byte [esi + 0x14], 0
jmp 0x40318e
push 0x14
push str.____already_exists_n_n
mov byte [ebp - 0x7bc], 0
mov ecx, edi
push dword [ebp - 0x7bc]
push 0x14
call fcn.004076a0
mov edi, eax
or dword [ebp - 0x7b8], 1
xorps xmm0, xmm0
movups xmmword [ebp - 0x558], xmm0
mov dword [ebp - 0x548], 0
mov dword [ebp - 0x544], 0
movups xmm0, xmmword [edi]
movups xmmword [ebp - 0x558], xmm0
movq xmm0, qword [edi + 0x10]
movq qword [ebp - 0x548], xmm0
mov dword [edi + 0x10], 0
mov dword [edi + 0x14], 0xf
mov byte [edi], 0
mov byte [ebp - 4], 0xc
lea edx, [ebp - 0x558]
cmp dword [ebp - 0x544], 0x10
push dword [ebp - 0x548]
cmovae edx, dword [ebp - 0x558]
call fcn.00407d20
mov byte [ebp - 4], 0xb
add esp, 4
mov ecx, dword [ebp - 0x544]
cmp ecx, 0x10
jb 0x40323f
mov edx, dword [ebp - 0x558]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x403235
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40387e
push ecx
push edx
call fcn.0048573c
add esp, 8
mov byte [ebp - 4], 7
mov ecx, dword [ebp - 0x580]
mov dword [ebp - 0x548], 0
mov dword [ebp - 0x544], 0xf
mov byte [ebp - 0x558], 0
cmp ecx, 0x10
jb 0x403298
mov edx, dword [ebp - 0x594]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40328e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40387e
push ecx
push edx
call fcn.0048573c
add esp, 8
push 0x7d0
call dword [sym.imp.KERNEL32.dll_Sleep]
mov edi, dword [ebp - 0x528]
jmp 0x402e10
cmp esi, 0x10
lea ecx, [ebp - 0x540]
cmovae ecx, edi
cmp edx, 2
jne 0x4032e2
movzx eax, byte [ecx]
cmp al, 0x73
jne 0x4032d2
movzx eax, byte [ecx + 1]
cmp al, 0x34
jne 0x4032d2
xor eax, eax
jmp 0x4032d7
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4032e2
mov edx, str._nTruemoeny_14_PIN___OK____n_n
jmp 0x403314
cmp esi, 0x10
lea ecx, [ebp - 0x540]
cmovae ecx, edi
cmp edx, 2
jne 0x403329
movzx eax, byte [ecx]
cmp al, 0x73
jne 0x403306
movzx eax, byte [ecx + 1]
cmp al, 0x33
jne 0x403306
xor eax, eax
jmp 0x40330b
sbb eax, eax
or eax, 1
test eax, eax
jne 0x403329
mov edx, str._nTruemoeny_14_PIN___ERROR___n_n
call fcn.004067b0
push 0x7d0
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x402e10
mov edx, str.an_unspecified_error_occurred_n_n
call fcn.004067b0
push str.pause
call fcn.0048d943
add esp, 4
jmp 0x402e10
push 0x4b8138
call fcn.0048d943
add esp, 4
mov edx, str._n_n_Please_input__1__or__2_
call fcn.004067b0
jmp 0x402e10
push 0x4b8138
call fcn.0048d943
push str.color_0b
call fcn.0048d943
sub esp, 0x10
mov ecx, 0x4ca6c8
mov edx, esp
xorps xmm0, xmm0
lea esi, [ecx + 1]
movups xmmword [edx], xmm0
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x403396
sub ecx, esi
push ecx
push 0x4ca6c8
mov ecx, edx
call fcn.00407470
lea ecx, [ebp - 0x570]
call fcn.00408890
add esp, 0x18
cmp dword [eax + 0x14], 0x10
jb 0x4033c2
mov eax, dword [eax]
push eax
call dword [sym.imp.KERNEL32.dll_SetConsoleTitleA]
mov ecx, dword [ebp - 0x55c]
cmp ecx, 0x10
jb 0x403403
mov edx, dword [ebp - 0x570]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4033f9
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40387e
push ecx
push edx
call fcn.0048573c
add esp, 8
sub esp, 0x18
mov byte [ebp - 0x7b1], 1
lea eax, [ebp - 0x5dc]
mov dword [ebp - 0x7c0], esp
mov ecx, esp
push eax
call fcn.00405450
sub esp, 0x18
mov byte [ebp - 4], 9
lea eax, [ebp - 0x5c4]
mov ecx, esp
push eax
call fcn.00405450
mov dl, byte [ebp - 0x7b1]
lea ecx, [ebp - 0x570]
mov byte [ebp - 4], 7
call fcn.00408ab0
mov esi, eax
add esp, 0x30
lea eax, [ebp - 0x540]
cmp eax, esi
je 0x4034be
mov eax, dword [ebp - 0x52c]
cmp eax, 0x10
jb 0x403490
lea ecx, [eax + 1]
mov eax, edi
cmp ecx, 0x1000
jb 0x403486
mov edi, dword [eax - 4]
add ecx, 0x23
sub eax, edi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40387e
push ecx
push edi
call fcn.0048573c
add esp, 8
movups xmm0, xmmword [esi]
movups xmmword [ebp - 0x540], xmm0
mov edi, dword [ebp - 0x540]
movq xmm0, qword [esi + 0x10]
movq qword [ebp - 0x530], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
mov byte [esi], 0
mov ecx, dword [ebp - 0x55c]
cmp ecx, 0x10
jb 0x4034f8
mov edx, dword [ebp - 0x570]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4034ee
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40387e
push ecx
push edx
call fcn.0048573c
add esp, 8
push 0x7d0
call dword [sym.imp.KERNEL32.dll_Sleep]
mov esi, dword [ebp - 0x52c]
lea ecx, [ebp - 0x540]
mov eax, dword [ebp - 0x530]
cmp esi, 0x10
cmovae ecx, edi
cmp eax, 4
jne 0x40355e
mov eax, dword [ecx]
mov edx, 0x4b81fc
cmp eax, dword [edx]
je 0x403547
cmp al, byte [edx]
jne 0x40354b
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x40354b
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x40354b
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x40354b
xor eax, eax
jmp 0x403550
sbb eax, eax
or eax, 1
test eax, eax
je 0x4035e0
mov eax, dword [ebp - 0x530]
cmp esi, 0x10
lea ecx, [ebp - 0x540]
cmovae ecx, edi
cmp eax, 7
jne 0x4035ba
mov edx, str.TimeOut
lea esi, [eax - 4]
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x403586
add ecx, 4
add edx, 4
or esi, 0xffffffff
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x4035ad
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x4035ad
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x4035ad
cmp esi, 0xffffffff
je 0x4035a9
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x4035ad
xor eax, eax
jmp 0x4035b2
sbb eax, eax
or eax, 1
test eax, eax
je 0x4037f9
push 0x4b8138
call fcn.0048d943
mov edx, str._n_n____Incorrect_14_PIN_._n
call fcn.004067b0
push str.pause
call fcn.0048d943
add esp, 8
jmp 0x403361
push 0x4b8138
call fcn.0048d943
add esp, 4
mov edx, str._n_n____Authenticated._n
call fcn.004067b0
push 0x1388
call dword [sym.imp.KERNEL32.dll_Sleep]
push 0x4b8138
call fcn.0048d943
push str.color_0b
call fcn.0048d943
sub esp, 0x10
mov ecx, esp
push 0x4ca6c8
call fcn.00405410
lea ecx, [ebp - 0x570]
call fcn.00408890
add esp, 0x18
mov ecx, eax
call fcn.004053b0
push eax
call dword [sym.imp.KERNEL32.dll_SetConsoleTitleA]
lea ecx, [ebp - 0x570]
call fcn.004053c0
mov edx, str._n_n_
call fcn.004067b0
mov edx, str._n_n_CheckDll
call fcn.004067b0
call fcn.00402000
mov edi, dword [sym.imp.KERNEL32.dll_Beep]
push 0x12c
push 0x1b8
call edi
mov esi, dword [sym.imp.KERNEL32.dll_DeleteFileA]
push str.C:WindowsSystem32VPNv8CSP_.dll
call esi
push str.C:WindowsSysWOW64VPNv8CSP_.dll
call esi
push 0x64
call dword [sym.imp.KERNEL32.dll_Sleep]
push 0x12c
push 0x1b8
call edi
mov esi, dword [sym.imp.KERNEL32.dll_CopyFileA]
push 1
push str.C:WindowsSystem32VPNv8CSP_.dll
push str.sizeof.bin
call esi
push 1
push str.C:WindowsSysWOW64VPNv8CSP_.dll
push str.sizeof.bin
call esi
push 0x64
call dword [sym.imp.KERNEL32.dll_Sleep]
push 0x12c
push 0x1b8
call edi
push 0x4b8138
call fcn.0048d943
push str.color_06
call fcn.0048d943
mov edx, str._n_n_
call fcn.004067b0
mov edx, str._n_n_Start_Game_SpecialForce_
call fcn.004067b0
push 0x124
lea eax, [ebp - 0x7ac]
mov dword [ebp - 0x7b8], 0
push 0
push eax
mov dword [ebp - 0x7b0], 0x128
call fcn.00487550
mov edi, dword [sym.imp.KERNEL32.dll_Process32Next]
add esp, 0x14
nop dword [eax]
push 0
push 2
call dword [sym.imp.KERNEL32.dll_CreateToolhelp32Snapshot]
mov esi, eax
lea eax, [ebp - 0x7b0]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_Process32First]
test eax, eax
je 0x403797
nop
mov eax, str.SpecialForce.exe
lea ecx, [ebp - 0x78c]
nop dword [eax + eax]
mov dl, byte [ecx]
cmp dl, byte [eax]
jne 0x403780
test dl, dl
je 0x40377c
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x403780
add ecx, 2
add eax, 2
test dl, dl
jne 0x403760
xor eax, eax
jmp 0x403785
sbb eax, eax
or eax, 1
test eax, eax
je 0x4037eb
lea eax, [ebp - 0x7b0]
push eax
push esi
call edi
test eax, eax
jne 0x403750
mov eax, dword [ebp - 0x7b8]
test eax, eax
je 0x403730
mov edi, dword [ebp - 0x7b8]
mov ecx, edi
call fcn.00401ec0
test al, al
jne 0x4037c7
mov edx, str._n_n_DLL_failed_to_inject
call fcn.004067b0
mov ecx, edi
call fcn.00401ec0
test al, al
je 0x4037b2
mov edx, str._n__n__successfuly_n
call fcn.004067b0
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push 0x1f4
call dword [sym.imp.KERNEL32.dll_Sleep]
push 1
call dword [sym.imp.KERNEL32.dll_ExitProcess]
mov eax, dword [ebp - 0x7a8]
mov dword [ebp - 0x7b8], eax
jmp 0x40379d
push 0x4b8138
call fcn.0048d943
add esp, 4
mov edx, str._n_n____TimeOut....._n
call fcn.004067b0
push 0xbb8
call dword [sym.imp.KERNEL32.dll_Sleep]
push 1
call dword [sym.imp.KERNEL32.dll_ExitProcess]
push esi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov ecx, dword [ebp - 0x5e0]
cmp ecx, 0x10
jb 0x403860
mov edx, dword [ebp - 0x5f4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x403856
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x403892
push ecx
push edx
call fcn.0048573c
add esp, 8
or eax, 0xffffffff
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004854a8
mov esp, ebp
pop ebp
ret
call fcn.0048eff6
call fcn.0048eff6
call fcn.0048eff6
call fcn.0048eff6
call fcn.0048eff6
int3