Function at 0x4060d8
Capabilities:
Link many functions at runtime
Terminate process

Disassembly:
push ebp
mov ebp, esp
push ebx
mov eax, 0x1664
call fcn.00416280
mov dword [ebp - 0xfbc], 0x3e8
mov dword [ebp - 0xfc4], 0
mov dword [ebp - 0xfd0], 0
mov eax, dword [ebp + 8]
mov dword [esp], eax
call sub.msvcrt.dll_strlen
mov dword [ebp - 0x12b4], eax
cmp dword [ebp - 0x12b4], 0
jle 0x40612c
cmp dword [ebp - 0x12b4], 0x104
jg 0x40612c
jmp 0x40613b
mov dword [ebp - 0x164c], 0x278
jmp 0x4069eb
mov dword [ebp - 0x12b8], 0
mov eax, dword [ebp - 0x12b8]
cmp eax, dword [ebp - 0x12b4]
jl 0x406155
jmp 0x406184
lea eax, [ebp - 8]
add eax, dword [ebp - 0x12b8]
lea ebx, [eax - 0x11f0]
mov eax, dword [ebp - 0x12b8]
add eax, dword [ebp + 8]
movsx eax, byte [eax]
mov dword [esp], eax
call sub.msvcrt.dll_toupper
mov byte [ebx], al
lea eax, [ebp - 0x12b8]
inc dword [eax]
jmp 0x406145
lea eax, [ebp - 8]
add eax, dword [ebp - 0x12b4]
sub eax, 0x11f0
mov byte [eax], 0
mov dword [ebp - 0x12a8], 0x94
lea eax, [ebp - 0x12a8]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.DLL_GetVersionExA]
call eax
sub esp, 4
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0
jne 0x4061ca
mov dword [ebp - 0x164c], 0x25e
jmp 0x4069eb
cmp dword [ebp - 0x1298], 2
je 0x4061eb
cmp dword [ebp - 0x1298], 1
je 0x4061eb
mov dword [ebp - 0x164c], 0x25f
jmp 0x4069eb
cmp dword [ebp - 0x1298], 2
jne 0x406559
mov dword [esp], 0x406033
mov eax, dword [sym.imp.KERNEL32.DLL_LoadLibraryA]
call eax
sub esp, 4
mov dword [ebp - 0x12ac], eax
cmp dword [ebp - 0x12ac], 0
jne 0x406227
mov dword [ebp - 0x164c], 0x25d
jmp 0x4069eb
mov dword [esp + 4], 0x40603d
mov eax, dword [ebp - 0x12ac]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.DLL_GetProcAddress]
call eax
sub esp, 8
mov dword [ebp - 0x162c], eax
mov dword [esp + 4], 0x40604b
mov eax, dword [ebp - 0x12ac]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.DLL_GetProcAddress]
call eax
sub esp, 8
mov dword [ebp - 0x1630], eax
mov dword [esp + 4], 0x40605e
mov eax, dword [ebp - 0x12ac]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.DLL_GetProcAddress]
call eax
sub esp, 8
mov dword [ebp - 0x1634], eax
cmp dword [ebp - 0x162c], 0
je 0x4062a5
cmp dword [ebp - 0x1630], 0
je 0x4062a5
cmp dword [ebp - 0x1634], 0
jne 0x4062c7
mov eax, dword [ebp - 0x12ac]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.DLL_FreeLibrary]
call eax
sub esp, 4
mov dword [ebp - 0x164c], 0x2bc
jmp 0x4069eb
lea eax, [ebp - 0xfc8]
mov dword [esp + 8], eax
mov eax, dword [ebp - 0xfbc]
mov dword [esp + 4], eax
lea eax, [ebp - 0xfb8]
mov dword [esp], eax
mov eax, dword [ebp - 0x162c]
call eax
sub esp, 0xc
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0
jne 0x40631a
mov eax, dword [ebp - 0x12ac]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.DLL_FreeLibrary]
call eax
sub esp, 4
mov dword [ebp - 0x164c], 0x2bd
jmp 0x4069eb
mov eax, dword [ebp - 0xfc8]
shr eax, 2
mov dword [ebp - 0xfc0], eax
mov dword [ebp - 0xfcc], 0
mov eax, dword [ebp - 0xfcc]
cmp eax, dword [ebp - 0xfc0]
jb 0x406346
jmp 0x406559
mov dword [esp + 4], 0x406071
lea eax, [ebp - 0x10e8]
mov dword [esp], eax
call sub.msvcrt.dll_strcpy
mov eax, dword [ebp - 0xfcc]
mov eax, dword [ebp + eax*4 - 0xfb8]
mov dword [esp + 8], eax
mov dword [esp + 4], 0
mov dword [esp], 0x410
mov eax, dword [sym.imp.KERNEL32.DLL_OpenProcess]
call eax
sub esp, 0xc
mov dword [ebp - 0x11fc], eax
cmp dword [ebp - 0x11fc], 0
je 0x4063ff
lea eax, [ebp - 0xfc8]
mov dword [esp + 0xc], eax
mov dword [esp + 8], 4
lea eax, [ebp - 0x12bc]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x11fc]
mov dword [esp], eax
mov eax, dword [ebp - 0x1630]
call eax
sub esp, 0x10
test eax, eax
je 0x4063ff
mov dword [esp + 0xc], 0x104
lea eax, [ebp - 0x10e8]
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x12bc]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x11fc]
mov dword [esp], eax
mov eax, dword [ebp - 0x1634]
call eax
sub esp, 0x10
mov dword [ebp - 0x12b0], eax
mov eax, dword [ebp - 0x11fc]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.DLL_CloseHandle]
call eax
sub esp, 4
lea ebx, [ebp - 0x11f8]
lea eax, [ebp - 0x10e8]
mov dword [esp], eax
call fcn.00405160
mov dword [esp + 4], ebx
mov dword [esp], eax
call sub.msvcrt.dll_strcmp
test eax, eax
jne 0x40654c
lea eax, [ebp - 0x11f8]
lea edx, [ebp - 0x10e8]
mov dword [esp + 4], eax
mov dword [esp], edx
call sub.msvcrt.dll_strcmp
test eax, eax
jne 0x40654c
mov dword [ebp - 0xfd0], 1
mov eax, dword [ebp - 0xfcc]
mov eax, dword [ebp + eax*4 - 0xfb8]
mov dword [esp + 8], eax
mov dword [esp + 4], 0
mov dword [esp], 1
mov eax, dword [sym.imp.KERNEL32.DLL_OpenProcess]
call eax
sub esp, 0xc
mov dword [ebp - 0x11fc], eax
cmp dword [ebp - 0x11fc], 0
je 0x40652a
mov dword [esp + 4], 0
mov eax, dword [ebp - 0x11fc]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.DLL_TerminateProcess]
call eax
sub esp, 8
test eax, eax
je 0x4064f5
mov eax, dword [ebp - 0x11fc]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.DLL_CloseHandle]
call eax
sub esp, 4
mov eax, dword [ebp - 0x12ac]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.DLL_FreeLibrary]
call eax
sub esp, 4
mov dword [ebp - 0x164c], 0
jmp 0x4069eb
mov eax, dword [ebp - 0x11fc]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.DLL_CloseHandle]
call eax
sub esp, 4
mov eax, dword [ebp - 0x12ac]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.DLL_FreeLibrary]
call eax
sub esp, 4
mov dword [ebp - 0x164c], 0x25a
jmp 0x4069eb
mov eax, dword [ebp - 0x12ac]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.DLL_FreeLibrary]
call eax
sub esp, 4
mov dword [ebp - 0x164c], 0x25c
jmp 0x4069eb
lea eax, [ebp - 0xfcc]
inc dword [eax]
jmp 0x406333
cmp dword [ebp - 0x1298], 1
jne 0x4069a6
mov dword [esp], 0x406079
mov eax, dword [sym.imp.KERNEL32.DLL_LoadLibraryA]
call eax
sub esp, 4
mov dword [ebp - 0x12ac], eax
cmp dword [ebp - 0x12ac], 0
jne 0x406595
mov dword [ebp - 0x164c], 0x2be
jmp 0x4069eb
mov dword [esp + 4], 0x406086
mov eax, dword [ebp - 0x12ac]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.DLL_GetProcAddress]
call eax
sub esp, 8
mov dword [ebp - 0x1638], eax
mov dword [esp + 4], 0x40609f
mov eax, dword [ebp - 0x12ac]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.DLL_GetProcAddress]
call eax
sub esp, 8
mov dword [ebp - 0x163c], eax
mov dword [esp + 4], 0x4060ae
mov eax, dword [ebp - 0x12ac]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.DLL_GetProcAddress]
call eax
sub esp, 8
mov dword [ebp - 0x1640], eax
mov dword [esp + 4], 0x4060bc
mov eax, dword [ebp - 0x12ac]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.DLL_GetProcAddress]
call eax
sub esp, 8
mov dword [ebp - 0x1644], eax
mov dword [esp + 4], 0x4060ca
mov eax, dword [ebp - 0x12ac]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.DLL_GetProcAddress]
call eax
sub esp, 8
mov dword [ebp - 0x1648], eax
cmp dword [ebp - 0x1640], 0
je 0x406667
cmp dword [ebp - 0x163c], 0
je 0x406667
cmp dword [ebp - 0x1648], 0
je 0x406667
cmp dword [ebp - 0x1644], 0
je 0x406667
cmp dword [ebp - 0x1638], 0
jne 0x406689
mov eax, dword [ebp - 0x12ac]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.DLL_FreeLibrary]
call eax
sub esp, 4
mov dword [ebp - 0x164c], 0x2bf
jmp 0x4069eb
mov dword [esp + 4], 0
mov dword [esp], 2
mov eax, dword [ebp - 0x1638]
call eax
sub esp, 8
mov dword [ebp - 0x1200], eax
cmp dword [ebp - 0x1200], 0xffffffff
jne 0x4066d4
mov eax, dword [ebp - 0x12ac]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.DLL_FreeLibrary]
call eax
sub esp, 4
mov dword [ebp - 0x164c], 0x2c0
jmp 0x4069eb
mov dword [ebp - 0x13f8], 0x128
lea eax, [ebp - 0x13f8]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x1200]
mov dword [esp], eax
mov eax, dword [ebp - 0x163c]
call eax
sub esp, 8
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0
jne 0x40670a
jmp 0x406993
mov eax, dword [ebp - 0x13f0]
mov dword [esp + 4], eax
mov dword [esp], 8
mov eax, dword [ebp - 0x1638]
call eax
sub esp, 8
mov dword [ebp - 0x1204], eax
cmp dword [ebp - 0x1204], 0xffffffff
jne 0x40676a
mov eax, dword [ebp - 0x1200]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.DLL_CloseHandle]
call eax
sub esp, 4
mov eax, dword [ebp - 0x12ac]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.DLL_FreeLibrary]
call eax
sub esp, 4
mov dword [ebp - 0x164c], 0x2c0
jmp 0x4069eb
mov dword [ebp - 0x1628], 0x224
lea eax, [ebp - 0x1628]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x1204]
mov dword [esp], eax
mov eax, dword [ebp - 0x1644]
call eax
sub esp, 8
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
jne 0x4067a0
jmp 0x406950
lea edx, [ebp - 0x11f8]
lea eax, [ebp - 0x1628]
add eax, 0x20
mov dword [esp + 4], edx
mov dword [esp], eax
call sub.msvcrt.dll_strcmp
test eax, eax
jne 0x406920
mov dword [ebp - 0xfd0], 1
mov eax, dword [ebp - 0x13f0]
mov dword [esp + 8], eax
mov dword [esp + 4], 0
mov dword [esp], 1
mov eax, dword [sym.imp.KERNEL32.DLL_OpenProcess]
call eax
sub esp, 0xc
mov dword [ebp - 0x11fc], eax
cmp dword [ebp - 0x11fc], 0
je 0x4068d8
mov dword [esp + 4], 0
mov eax, dword [ebp - 0x11fc]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.DLL_TerminateProcess]
call eax
sub esp, 8
test eax, eax
je 0x40687d
mov eax, dword [ebp - 0x1204]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.DLL_CloseHandle]
call eax
sub esp, 4
mov eax, dword [ebp - 0x1200]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.DLL_CloseHandle]
call eax
sub esp, 4
mov eax, dword [ebp - 0x11fc]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.DLL_CloseHandle]
call eax
sub esp, 4
mov eax, dword [ebp - 0x12ac]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.DLL_FreeLibrary]
call eax
sub esp, 4
mov dword [ebp - 0x164c], 0
jmp 0x4069eb
mov eax, dword [ebp - 0x1204]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.DLL_CloseHandle]
call eax
sub esp, 4
mov eax, dword [ebp - 0x1200]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.DLL_CloseHandle]
call eax
sub esp, 4
mov eax, dword [ebp - 0x11fc]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.DLL_CloseHandle]
call eax
sub esp, 4
mov eax, dword [ebp - 0x12ac]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.DLL_FreeLibrary]
call eax
sub esp, 4
mov dword [ebp - 0x164c], 0x25a
jmp 0x4069eb
mov eax, dword [ebp - 0x1204]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.DLL_CloseHandle]
call eax
sub esp, 4
mov eax, dword [ebp - 0x1200]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.DLL_CloseHandle]
call eax
sub esp, 4
mov eax, dword [ebp - 0x12ac]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.DLL_FreeLibrary]
call eax
sub esp, 4
mov dword [ebp - 0x164c], 0x25c
jmp 0x4069eb
mov dword [ebp - 0x1628], 0x224
lea eax, [ebp - 0x1628]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x1204]
mov dword [esp], eax
mov eax, dword [ebp - 0x1648]
call eax
sub esp, 8
mov dword [ebp - 0x10], eax
jmp 0x406795
mov eax, dword [ebp - 0x1204]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.DLL_CloseHandle]
call eax
sub esp, 4
mov dword [ebp - 0x13f8], 0x128
lea eax, [ebp - 0x13f8]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x1200]
mov dword [esp], eax
mov eax, dword [ebp - 0x1640]
call eax
sub esp, 8
mov dword [ebp - 0xc], eax
jmp 0x4066ff
mov eax, dword [ebp - 0x1200]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.DLL_CloseHandle]
call eax
sub esp, 4
cmp dword [ebp - 0xfd0], 0
jne 0x4069ce
mov eax, dword [ebp - 0x12ac]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.DLL_FreeLibrary]
call eax
sub esp, 4
mov dword [ebp - 0x164c], 0x25b
jmp 0x4069eb
mov eax, dword [ebp - 0x12ac]
mov dword [esp], eax
mov eax, dword [sym.imp.KERNEL32.DLL_FreeLibrary]
call eax
sub esp, 4
mov dword [ebp - 0x164c], 0
mov eax, dword [ebp - 0x164c]
mov ebx, dword [ebp - 4]
leave
ret