Last active
February 25, 2018 01:01
-
-
Save nathan130200/5427ca88d82b2fd577a1a42eed33a117 to your computer and use it in GitHub Desktop.
OperacoesMatematicasTest
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
int __cdecl main(int argc, char **argv) | |
{ | |
__int64 v2; // rax@1 | |
__int64 v3; // rax@1 | |
__int64 v4; // rax@1 | |
__int64 v5; // rax@1 | |
__int64 v6; // rax@1 | |
__int64 v7; // rax@1 | |
__int64 v8; // rax@1 | |
int v9; // eax@8 | |
__int64 v10; // rdi@8 | |
int v11; // ebx@8 | |
__int64 v12; // rsi@8 | |
__int64 v13; // rax@8 | |
__int64 v14; // rax@8 | |
__int64 v15; // rax@8 | |
__int64 v16; // rax@8 | |
__int64 v17; // rax@8 | |
int v18; // eax@9 | |
__int64 v19; // rdi@9 | |
int v20; // ebx@9 | |
__int64 v21; // rsi@9 | |
__int64 v22; // rax@9 | |
__int64 v23; // rax@9 | |
__int64 v24; // rax@9 | |
__int64 v25; // rax@9 | |
__int64 v26; // rax@9 | |
int v27; // eax@10 | |
__int64 v28; // rdi@10 | |
int v29; // ebx@10 | |
__int64 v30; // rsi@10 | |
__int64 v31; // rax@10 | |
__int64 v32; // rax@10 | |
__int64 v33; // rax@10 | |
__int64 v34; // rax@10 | |
__int64 v35; // rax@10 | |
int v36; // eax@11 | |
__int64 v37; // rdi@11 | |
int v38; // ebx@11 | |
__int64 v39; // rsi@11 | |
__int64 v40; // rax@11 | |
__int64 v41; // rax@11 | |
__int64 v42; // rax@11 | |
__int64 v43; // rax@11 | |
__int64 v44; // rax@11 | |
__int64 v45; // rax@12 | |
char operacao[1024]; // [sp+30h] [bp-50h]@1 | |
int in2; // [sp+438h] [bp+3B8h]@1 | |
int in1; // [sp+43Ch] [bp+3BCh]@1 | |
_main(); | |
LODWORD(v2) = ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc( | |
*(_QWORD *)&argc, | |
argv, | |
"Digite um numero: ", | |
&ZSt4cout); | |
ZNSolsEPFRSoS_E( | |
*(__int64 *)&argc, | |
(__int64)argv, | |
(__int64)&ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_, | |
v2); | |
ZNSirsERi(*(_QWORD *)&argc, argv, &in1, &ZSt3cin); | |
LODWORD(v3) = ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc( | |
*(_QWORD *)&argc, | |
argv, | |
"Digite outro numero: ", | |
&ZSt4cout); | |
ZNSolsEPFRSoS_E( | |
*(__int64 *)&argc, | |
(__int64)argv, | |
(__int64)&ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_, | |
v3); | |
ZNSirsERi(*(_QWORD *)&argc, argv, &in2, &ZSt3cin); | |
LODWORD(v4) = ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc( | |
*(_QWORD *)&argc, | |
argv, | |
"Digite uma das opcoes abaixo: ", | |
&ZSt4cout); | |
ZNSolsEPFRSoS_E( | |
*(__int64 *)&argc, | |
(__int64)argv, | |
(__int64)&ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_, | |
v4); | |
LODWORD(v5) = ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc( | |
*(_QWORD *)&argc, | |
argv, | |
"+ Para Adicao.", | |
&ZSt4cout); | |
ZNSolsEPFRSoS_E( | |
*(__int64 *)&argc, | |
(__int64)argv, | |
(__int64)&ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_, | |
v5); | |
LODWORD(v6) = ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc( | |
*(_QWORD *)&argc, | |
argv, | |
"- Para Subtracao.", | |
&ZSt4cout); | |
ZNSolsEPFRSoS_E( | |
*(__int64 *)&argc, | |
(__int64)argv, | |
(__int64)&ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_, | |
v6); | |
LODWORD(v7) = ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc( | |
*(_QWORD *)&argc, | |
argv, | |
"* Para Multiplicacao.", | |
&ZSt4cout); | |
ZNSolsEPFRSoS_E( | |
*(__int64 *)&argc, | |
(__int64)argv, | |
(__int64)&ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_, | |
v7); | |
LODWORD(v8) = ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc( | |
*(_QWORD *)&argc, | |
argv, | |
"/ Para Divisao.", | |
&ZSt4cout); | |
ZNSolsEPFRSoS_E( | |
*(__int64 *)&argc, | |
(__int64)argv, | |
(__int64)&ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_, | |
v8); | |
ZStrsIcSt11char_traitsIcEERSt13basic_istreamIT_T0_ES6_PS3_(*(_QWORD *)&argc, argv, operacao, &ZSt3cin); | |
if ( operacao[0] == 43 ) | |
{ | |
v9 = ZN10Matematica20OperacoesMatematicas6AdicaoEii( | |
*(Matematica::OperacoesMatematicas *const *)&argc, | |
(int)argv, | |
in1); | |
v10 = (unsigned int)v9; | |
v11 = in2; | |
v12 = (unsigned int)in1; | |
LODWORD(v13) = ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc( | |
(unsigned int)v9, | |
(unsigned int)in1, | |
"A Adicao entre ", | |
&ZSt4cout); | |
LODWORD(v14) = ZNSolsEi(v10, v12, (unsigned int)v12, v13); | |
LODWORD(v15) = ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(v10, v12, " e ", v14); | |
LODWORD(v16) = ZNSolsEi(v10, v12, (unsigned int)v11, v15); | |
LODWORD(v17) = ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(v10, v12, " e igual a: ", v16); | |
ZNSolsEi(v10, v12, (unsigned int)v10, v17); | |
} | |
else if ( operacao[0] > 43 ) | |
{ | |
if ( operacao[0] == 45 ) | |
{ | |
v18 = ZN10Matematica20OperacoesMatematicas9SubtracaoEii( | |
*(Matematica::OperacoesMatematicas *const *)&argc, | |
(int)argv, | |
in1); | |
v19 = (unsigned int)v18; | |
v20 = in2; | |
v21 = (unsigned int)in1; | |
LODWORD(v22) = ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc( | |
(unsigned int)v18, | |
(unsigned int)in1, | |
"A Subtracao entre ", | |
&ZSt4cout); | |
LODWORD(v23) = ZNSolsEi(v19, v21, (unsigned int)v21, v22); | |
LODWORD(v24) = ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(v19, v21, " e ", v23); | |
LODWORD(v25) = ZNSolsEi(v19, v21, (unsigned int)v20, v24); | |
LODWORD(v26) = ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(v19, v21, " e igual a: ", v25); | |
ZNSolsEi(v19, v21, (unsigned int)v19, v26); | |
} | |
else | |
{ | |
if ( operacao[0] != 47 ) | |
goto LABEL_12; | |
v36 = ZN10Matematica20OperacoesMatematicas7DivisaoEii( | |
*(Matematica::OperacoesMatematicas *const *)&argc, | |
(int)argv, | |
in1); | |
v37 = (unsigned int)v36; | |
v38 = in2; | |
v39 = (unsigned int)in1; | |
LODWORD(v40) = ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc( | |
(unsigned int)v36, | |
(unsigned int)in1, | |
"A Divisao entre ", | |
&ZSt4cout); | |
LODWORD(v41) = ZNSolsEi(v37, v39, (unsigned int)v39, v40); | |
LODWORD(v42) = ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(v37, v39, " e ", v41); | |
LODWORD(v43) = ZNSolsEi(v37, v39, (unsigned int)v38, v42); | |
LODWORD(v44) = ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(v37, v39, " e igual a: ", v43); | |
ZNSolsEi(v37, v39, (unsigned int)v37, v44); | |
} | |
} | |
else | |
{ | |
if ( operacao[0] != 42 ) | |
{ | |
LABEL_12: | |
LODWORD(v45) = ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc( | |
*(_QWORD *)&argc, | |
argv, | |
"Hm infelizmente a operacao digitada nao e valida!", | |
&ZSt4cout); | |
ZNSolsEPFRSoS_E( | |
*(__int64 *)&argc, | |
(__int64)argv, | |
(__int64)&ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_, | |
v45); | |
return 0; | |
} | |
v27 = ZN10Matematica20OperacoesMatematicas13MultiplicacaoEii( | |
*(Matematica::OperacoesMatematicas *const *)&argc, | |
(int)argv, | |
in1); | |
v28 = (unsigned int)v27; | |
v29 = in2; | |
v30 = (unsigned int)in1; | |
LODWORD(v31) = ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc( | |
(unsigned int)v27, | |
(unsigned int)in1, | |
"A Multiplicacao entre ", | |
&ZSt4cout); | |
LODWORD(v32) = ZNSolsEi(v28, v30, (unsigned int)v30, v31); | |
LODWORD(v33) = ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(v28, v30, " e ", v32); | |
LODWORD(v34) = ZNSolsEi(v28, v30, (unsigned int)v29, v33); | |
LODWORD(v35) = ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(v28, v30, " e igual a: ", v34); | |
ZNSolsEi(v28, v30, (unsigned int)v28, v35); | |
} | |
return 0; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment