Function at 0x40653c
Capabilities:
Execute command

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc
nop
mov eax, dword [ebp + 8]
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
cmp eax, 1
jne 0x4065b8
mov eax, dword [0x4095bc]
cmp eax, 0
je 0x40656c
call fcn.0040305f
call fcn.00402caa
mov eax, 0
mov dword [0x40c804], eax
mov eax, 0
mov dword [0x40c808], eax
mov eax, 0
mov dword [0x40c80c], eax
mov eax, 0
mov dword [0x40c810], eax
mov eax, 0
mov dword [0x40c7ac], eax
mov eax, 0
mov dword [0x40c7cc], eax
call fcn.00403b24
mov eax, str._CLS
push eax
call sub.msvcrt.dll_system
add esp, 4
mov eax, dword [ebp - 4]
push eax
call fcn.00403d2f
add esp, 4
mov eax, dword [ebp - 4]
cmp eax, 1
jle 0x4065e3
call fcn.0040376e
mov eax, dword [0x40c804]
cmp eax, 5
jne 0x406602
call fcn.00404ffb
mov eax, 0
mov dword [0x40c804], eax
call sub.msvcrt.dll_rand
mov ecx, 0x64
imul eax, ecx
mov ecx, 0x8000
cdq
idiv ecx
mov dword [ebp - 8], eax
mov eax, dword [ebp - 8]
cmp eax, 0x19
jge 0x406647
mov eax, 0x40bf17
push eax
call sub.msvcrt.dll_printf
add esp, 4
mov eax, 0x40bf44
push eax
call sub.msvcrt.dll_printf
add esp, 4
jmp 0x406675
mov eax, 0x40bf79
push eax
call sub.msvcrt.dll_printf
add esp, 4
call fcn.0040363e
mov dword [ebp - 8], eax
mov eax, dword [ebp - 8]
cmp eax, 1
jne 0x406675
mov eax, dword [ebp - 4]
push eax
call fcn.00403ffa
add esp, 4
mov eax, dword [0x40c804]
cmp eax, 0
jne 0x4066b3
call sub.msvcrt.dll_rand
mov ecx, 0x64
imul eax, ecx
mov ecx, 0x8000
cdq
idiv ecx
mov dword [ebp - 8], eax
mov eax, dword [ebp - 8]
cmp eax, 0x19
jge 0x4066b3
call fcn.00404eb8
mov dword [0x40c804], eax
mov eax, dword [0x40c804]
cmp eax, 1
jle 0x4066eb
call sub.msvcrt.dll_rand
mov ecx, 0x64
imul eax, ecx
mov ecx, 0x8000
cdq
idiv ecx
mov dword [ebp - 8], eax
mov eax, dword [ebp - 8]
cmp eax, 0x14
jge 0x4066eb
call fcn.00404f50
mov eax, dword [0x40c804]
cmp eax, 0
jle 0x406709
mov eax, dword [0x40c804]
mov ecx, eax
inc eax
mov dword [0x40c804], eax
call sub.msvcrt.dll_rand
mov ecx, 0x64
imul eax, ecx
mov ecx, 0x8000
cdq
idiv ecx
mov dword [ebp - 8], eax
mov eax, dword [ebp - 8]
cmp eax, 0x14
jge 0x406732
call fcn.00405051
mov eax, dword [0x40c814]
cmp eax, 0
je 0x406772
mov eax, 0x40bf9e
push eax
call sub.msvcrt.dll_printf
add esp, 4
call fcn.00405837
mov eax, 0x40bfe8
push eax
call sub.msvcrt.dll_printf
add esp, 4
call fcn.00401000
mov eax, 0
mov dword [0x40c814], eax
mov eax, dword [0x40c7a8]
cmp eax, 0x64
jge 0x4067d5
call sub.msvcrt.dll_rand
mov ecx, 0x64
imul eax, ecx
mov ecx, 0x8000
cdq
idiv ecx
mov dword [ebp - 8], eax
mov eax, dword [ebp - 8]
mov ecx, dword [0x40c7a8]
cmp eax, ecx
jle 0x4067d0
mov eax, 0x40c003
push eax
call sub.msvcrt.dll_printf
add esp, 4
call fcn.00405837
mov eax, 0x40c04c
push eax
call sub.msvcrt.dll_printf
add esp, 4
call fcn.00401000
jmp 0x406833
call sub.msvcrt.dll_rand
mov ecx, 0x64
imul eax, ecx
mov ecx, 0x8000
cdq
idiv ecx
mov dword [ebp - 8], eax
mov eax, dword [ebp - 8]
cmp eax, 0x1e
jge 0x406833
mov eax, 0x40c067
push eax
call sub.msvcrt.dll_printf
add esp, 4
call fcn.0040363e
mov dword [ebp - 8], eax
mov eax, dword [ebp - 8]
cmp eax, 1
jne 0x406833
call fcn.00405837
mov eax, 0x40c0a9
push eax
call sub.msvcrt.dll_printf
add esp, 4
call fcn.00401000
mov eax, dword [0x40c810]
cmp eax, 1
jne 0x40686b
call sub.msvcrt.dll_rand
mov ecx, 0x64
imul eax, ecx
mov ecx, 0x8000
cdq
idiv ecx
mov dword [ebp - 8], eax
mov eax, dword [ebp - 8]
cmp eax, 0xf
jge 0x40686b
call fcn.004054d1
call sub.msvcrt.dll_rand
mov ecx, 0x64
imul eax, ecx
mov ecx, 0x8000
cdq
idiv ecx
mov dword [ebp - 8], eax
mov eax, dword [ebp - 8]
cmp eax, 0xa
jge 0x406894
call fcn.004054ab
mov eax, dword [0x40c808]
cmp eax, 1
jne 0x4068cc
call sub.msvcrt.dll_rand
mov ecx, 0x64
imul eax, ecx
mov ecx, 0x8000
cdq
idiv ecx
mov dword [ebp - 8], eax
mov eax, dword [ebp - 8]
cmp eax, 0xa
jge 0x4068cc
call fcn.00405b4d
mov eax, dword [0x40c808]
cmp eax, 0
jne 0x406904
call sub.msvcrt.dll_rand
mov ecx, 0x64
imul eax, ecx
mov ecx, 0x8000
cdq
idiv ecx
mov dword [ebp - 8], eax
mov eax, dword [ebp - 8]
cmp eax, 0xf
jge 0x406904
call fcn.00405553
mov eax, dword [0x40c808]
cmp eax, 1
jne 0x40693c
call sub.msvcrt.dll_rand
mov ecx, 0x64
imul eax, ecx
mov ecx, 0x8000
cdq
idiv ecx
mov dword [ebp - 8], eax
mov eax, dword [ebp - 8]
cmp eax, 0xa
jge 0x40693c
call fcn.00405bb2
mov eax, dword [0x40c808]
cmp eax, 1
jne 0x40695f
mov eax, dword [0x4095b8]
cmp eax, 0
je 0x40695f
call fcn.00405c73
call sub.msvcrt.dll_rand
mov ecx, 0x64
imul eax, ecx
mov ecx, 0x8000
cdq
idiv ecx
mov dword [ebp - 8], eax
mov eax, dword [ebp - 4]
shl eax, 1
mov ecx, dword [ebp - 8]
cmp ecx, eax
jge 0x4069c1
mov eax, dword [ebp - 4]
push eax
call fcn.00405f9b
add esp, 4
mov dword [0x40c80c], eax
mov eax, 0x40c0c4
push eax
call sub.msvcrt.dll_printf
add esp, 4
call fcn.00401000
mov eax, dword [0x40c80c]
cmp eax, 0
je 0x4069c1
jmp 0x406b25
call fcn.00404189
call fcn.00404515
mov dword [0x40c800], eax
mov eax, dword [0x40c800]
cmp eax, 1
jne 0x4069ea
call fcn.00401000
jmp 0x406b25
call fcn.00403b24
mov eax, dword [0x4095bc]
cmp eax, 0
je 0x406a17
mov eax, dword [ebp - 4]
cmp eax, 0x32
jge 0x406a17
mov eax, dword [ebp - 4]
inc eax
push eax
call fcn.00406102
add esp, 4
mov eax, 0x40c0df
push eax
call sub.msvcrt.dll_printf
add esp, 4
call fcn.0040363e
mov dword [ebp - 8], eax
mov eax, dword [ebp - 8]
cmp eax, 0
jne 0x406a3e
jmp 0x406b25
mov eax, dword [0x4095b8]
cmp eax, 0
je 0x406b10
mov eax, 0x40c109
push eax
call sub.msvcrt.dll_printf
add esp, 4
call fcn.0040363e
mov dword [ebp - 8], eax
mov eax, dword [ebp - 8]
cmp eax, 1
jne 0x406b10
mov eax, dword [0x40c794]
push eax
mov eax, 0x40c134
push eax
call sub.msvcrt.dll_printf
add esp, 8
call fcn.004036dc
mov dword [ebp - 0xc], eax
mov eax, dword [ebp - 0xc]
push eax
mov eax, dword [0x40c794]
push eax
call fcn.00403739
add esp, 8
mov dword [ebp - 0xc], eax
mov eax, dword [0x40c794]
mov ecx, dword [ebp - 0xc]
sub eax, ecx
mov dword [0x40c794], eax
mov eax, dword [ebp - 0xc]
cmp eax, 0
jne 0x406ae0
mov eax, 0x40c161
push eax
call sub.msvcrt.dll_printf
add esp, 4
mov eax, 0x40c1ae
push eax
call sub.msvcrt.dll_printf
add esp, 4
jmp 0x406b10
mov eax, dword [0x40c808]
cmp eax, 0
jle 0x406b02
mov eax, 0x40c1f2
push eax
call sub.msvcrt.dll_printf
add esp, 4
jmp 0x406b10
mov eax, 0x40c20b
push eax
call sub.msvcrt.dll_printf
add esp, 4
mov eax, dword [ebp - 4]
mov ecx, eax
inc eax
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
cmp eax, 0x32
jle 0x4065b8
mov eax, dword [ebp - 4]
cmp eax, 0x32
jle 0x406b39
mov eax, 0x32
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
push eax
call fcn.00404b05
add esp, 4
leave
ret