Function at 0x42a2cb
Capabilities:
Encrypt or decrypt via wincrypt

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x20
mov eax, dword [0x513900]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
push str.Madino_Mino_n
mov edi, 0x514c00
push edi
call fcn.00401252
pop ecx
pop ecx
push str.kernel32.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
push str.Free
lea ecx, [ebp - 0x1c]
mov esi, eax
call fcn.00403432
mov ebx, str.Cons
push ebx
call fcn.00414a10
pop ecx
push eax
push ebx
lea ecx, [ebp - 0x1c]
call fcn.00404a51
mov ebx, 0x42b3d0
push ebx
call fcn.00414a10
pop ecx
push eax
push ebx
lea ecx, [ebp - 0x1c]
call fcn.00404a51
cmp dword [ebp - 8], 0xf
lea eax, [ebp - 0x1c]
cmova eax, dword [ebp - 0x1c]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
call eax
push str.Write_command._nFor_help_write_5_nDont_TRY_TO_WRITE_WORDS____nONLY_NUMBERS____nLike:help_and_other..._n_n_nroot_calculator_unstable:
push edi
call fcn.00401252
pop ecx
pop ecx
call fcn.0042a26f
mov eax, dword [0x5149fc]
mov ebx, 0x514b88
mov dword [ebp - 0x20], eax
mov ecx, ebx
lea eax, [ebp - 0x20]
push eax
call fcn.0040148f
mov eax, dword [ebp - 0x20]
mov esi, 0x42b480
mov dword [0x5149fc], eax
cmp eax, 1
jne 0x42a416
push str.Write_number_n
push edi
call fcn.00401252
mov eax, dword [0x5149f0]
pop ecx
pop ecx
mov dword [ebp - 0x20], eax
mov ecx, ebx
lea eax, [ebp - 0x20]
push eax
call fcn.0040148f
mov eax, dword [ebp - 0x20]
push str.Write_twice_number_n
push edi
mov dword [0x5149f0], eax
call fcn.00401252
mov eax, dword [0x5149f4]
pop ecx
pop ecx
mov dword [ebp - 0x20], eax
mov ecx, ebx
lea eax, [ebp - 0x20]
push eax
call fcn.0040148f
mov ecx, dword [ebp - 0x20]
mov eax, dword [0x5149f0]
add eax, ecx
mov dword [0x5149f4], ecx
push esi
push eax
push str.Sum:
push edi
mov dword [0x5149f8], eax
call fcn.00401252
pop ecx
pop ecx
mov ecx, eax
call fcn.00403954
push eax
call fcn.00401252
pop ecx
pop ecx
call main
mov eax, dword [0x5149fc]
cmp eax, 2
jne 0x42a4a3
push str.Write_number_n
push edi
call fcn.00401252
mov eax, dword [0x5149f0]
pop ecx
pop ecx
mov dword [ebp - 0x20], eax
mov ecx, ebx
lea eax, [ebp - 0x20]
push eax
call fcn.0040148f
mov eax, dword [ebp - 0x20]
push str.Write_twice_number_n
push edi
mov dword [0x5149f0], eax
call fcn.00401252
mov eax, dword [0x5149f4]
pop ecx
pop ecx
mov dword [ebp - 0x20], eax
mov ecx, ebx
lea eax, [ebp - 0x20]
push eax
call fcn.0040148f
mov eax, dword [ebp - 0x20]
mov dword [0x5149f4], eax
imul eax, dword [0x5149f0]
push esi
push eax
push str.Multiplication:
push edi
mov dword [0x5149f8], eax
call fcn.00401252
pop ecx
pop ecx
mov ecx, eax
call fcn.00403954
push eax
call fcn.00401252
pop ecx
pop ecx
call main
mov eax, dword [0x5149fc]
cmp eax, 3
jne 0x42a532
push str.Write_number_n
push edi
call fcn.00401252
mov eax, dword [0x5149f0]
pop ecx
pop ecx
mov dword [ebp - 0x20], eax
mov ecx, ebx
lea eax, [ebp - 0x20]
push eax
call fcn.0040148f
mov eax, dword [ebp - 0x20]
push str.Write_twice_number_n
push edi
mov dword [0x5149f0], eax
call fcn.00401252
mov eax, dword [0x5149f4]
pop ecx
pop ecx
mov dword [ebp - 0x20], eax
mov ecx, ebx
lea eax, [ebp - 0x20]
push eax
call fcn.0040148f
mov eax, dword [ebp - 0x20]
mov ecx, dword [0x5149f0]
sub ecx, eax
mov dword [0x5149f4], eax
push esi
push ecx
push str.Subtraction:
push edi
mov dword [0x5149f8], ecx
call fcn.00401252
pop ecx
pop ecx
mov ecx, eax
call fcn.00403954
push eax
call fcn.00401252
pop ecx
pop ecx
call main
mov eax, dword [0x5149fc]
cmp eax, 4
jne 0x42a5c1
push str.Write_number_n
push edi
call fcn.00401252
mov eax, dword [0x5149f0]
pop ecx
pop ecx
mov dword [ebp - 0x20], eax
mov ecx, ebx
lea eax, [ebp - 0x20]
push eax
call fcn.0040148f
mov eax, dword [ebp - 0x20]
push str.Write_twice_number_n
push edi
mov dword [0x5149f0], eax
call fcn.00401252
mov eax, dword [0x5149f4]
pop ecx
pop ecx
mov dword [ebp - 0x20], eax
mov ecx, ebx
lea eax, [ebp - 0x20]
push eax
call fcn.0040148f
mov eax, dword [0x5149f0]
mov ecx, dword [ebp - 0x20]
cdq
idiv ecx
push esi
push eax
push str.Division:
push edi
mov dword [0x5149f4], ecx
mov dword [0x5149f8], eax
call fcn.00401252
pop ecx
pop ecx
mov ecx, eax
call fcn.00403954
push eax
call fcn.00401252
pop ecx
pop ecx
call main
mov eax, dword [0x5149fc]
cmp eax, 5
jne 0x42a5dd
push str.Commands_n_1___Sum_n_2___Multiplication_Y_n_3___Subtraction_n_4___Division_n_5___Help_n_6___Close_n_7___Factorial_n_CtrlC___Emergency_stop_n
push edi
call fcn.00401252
pop ecx
pop ecx
call main
mov eax, dword [0x5149fc]
cmp eax, 6
je 0x42a680
cmp eax, 7
jne 0x42a65a
push str.Write_number_n__
push edi
call fcn.00401252
mov eax, dword [0x5149f0]
pop ecx
pop ecx
mov dword [ebp - 0x20], eax
mov ecx, ebx
lea eax, [ebp - 0x20]
push eax
call fcn.0040148f
mov eax, dword [ebp - 0x20]
push eax
mov dword [0x5149f0], eax
call fcn.0042a254
pop ecx
test eax, eax
jne 0x42a625
mov esi, str.Too_many_numbers..._n
jmp 0x42a63c
push eax
push str.Factorial:
push edi
call fcn.00401252
pop ecx
pop ecx
mov ecx, eax
call fcn.00403954
mov edi, eax
push esi
push edi
call fcn.00401252
pop ecx
pop ecx
call main
xor eax, eax
push eax
push eax
push eax
push eax
push eax
push eax
call dword [sym.imp.ADVAPI32.dll_CryptDecrypt]
jmp 0x42a667
push str.Error_Command_n
push edi
call fcn.00401252
pop ecx
pop ecx
lea ecx, [ebp - 0x1c]
call fcn.0040494b
mov ecx, dword [ebp - 4]
xor eax, eax
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.0040a419
leave
ret
push 0
call fcn.0040f364
int3