#define NULL ((void *)0)
typedef unsigned long size_t; // Customize by platform.
typedef long intptr_t;
typedef unsigned long uintptr_t;
typedef long scalar_t__; // Either arithmetic or pointer type.
/* By default, we understand bool (as a convenience). */
typedef int bool;
#define false 0
#define true 1

/* Forward declarations */

/* Type definitions */

/* Variables and functions */
int /*<<< orphan*/ sprintf(char *, char *, int);
char *AtivarSAT(int sessao, int tipo_certificado, char *codigo_ativacao,
                char *contribuinte_cnpj, int codigo_uf) {
  static char resp[892];
  sprintf(resp,
          "%d|04000|Ativado corretamente|||"
          "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURSBSRVFVRVNULS0tLS0KTUlJQm5UQ0NBUVl"
          "DQVFBd1hURUxNQWtHQTFVRUJoTUNVMGN4RVRBUEJnTlZCQW9UQ0UweVEzSjVjSF"
          "J2TVJJdwpFQVlEVlFRREV3bHNiMk5oYkdodmMzUXhKekFsQmdrcWhraUc5dzBCQ"
          "1FFV0dHRmtiV2x1UUhObGNuWmxjaTVsCmVHRnRjR3hsTG1SdmJUQ0JuekFOQmdr"
          "cWhraUc5dzBCQVFFRkFBT0JqUUF3Z1lrQ2dZRUFyMW5ZWTFRcmxsMXIKdUIvRnF"
          "sQ1JycjVudnVwZElOKzN3RjdxOTE1dHZFUW9jNzRibnU2YjhJYmJHUk1oemR6bX"
          "ZRNFN6RmZWRUF1TQpNdVRIZXliUHE1dGg3WURyVE5pektLeE9CbnFFMktZdVg5W"
          "DIyQTFLaDQ5c29KSkZnNmtQYjlNVWdpWkJpTWx2CnRiN0szQ0hmZ3c1V2FnV25M"
          "bDhMYitjY3ZLWlpsKzhDQXdFQUFhQUFNQTBHQ1NxR1NJYjNEUUVCQkFVQUE0R0I"
          "KQUhwb1JwNVlTNTVDWnB5K3dkaWdRRXdqTC93U2x1dm8rV2p0cHZQMFlvQk1KdT"
          "RWTUtlWmk0MDVSN284b0V3aQpQZGxycmxpS05rbkZtSEtJYUNLVExSY1U1OVNjQ"
          "TZBREVJV1V6cW1VelA1Q3M2anJTUm8zTktmZzFiZDA5RDFLCjlyc1FrUmM5VXJ2"
          "OW1SQklzcmVkR25ZRUNOZVJhSzVSMXl6cE9vd25pblhDCi0tLS0tRU5EIENFUlR"
          "JRklDQVRFIFJFUVVFU1QtLS0tLQ==",
          sessao);
  return resp;
}


x86 assembly (clang, -O0):
<AtivarSAT>:
push   %rbp
mov    %rsp,%rbp
sub    $0x20,%rsp
mov    %edi,-0x4(%rbp)
mov    %esi,-0x8(%rbp)
mov    %rdx,-0x10(%rbp)
mov    %rcx,-0x18(%rbp)
mov    %r8d,-0x1c(%rbp)
mov    -0x4(%rbp),%edx
lea    0x2f0c(%rip),%rdi
lea    0xec5(%rip),%rsi
call   1030 <sprintf@plt>
lea    0x2ef9(%rip),%rax
add    $0x20,%rsp
pop    %rbp
ret

x86 assembly (clang, -O2):
<AtivarSAT>:
push   %rbx
mov    %edi,%edx
lea    0x2f26(%rip),%rbx
lea    0xedf(%rip),%rsi
mov    %rbx,%rdi
call   1030 <sprintf@plt>
mov    %rbx,%rax
pop    %rbx
ret

LLVM IR (-O0):
@AtivarSAT.resp = internal global [892 x i8] zeroinitializer
@.str = [881 x i8] c"%d|04000|Ativado corretamente|||LS0tLS1CRUdJTiBDRVJUSUZJQ0FURSBSRVFVRVNULS0tLS0KTUlJQm5UQ0NBUVlDQVFBd1hURUxNQWtHQTFVRUJoTUNVMGN4RVRBUEJnTlZCQW9UQ0UweVEzSjVjSFJ2TVJJdwpFQVlEVlFRREV3bHNiMk5oYkdodmMzUXhKekFsQmdrcWhraUc5dzBCQ1FFV0dHRmtiV2x1UUhObGNuWmxjaTVsCmVHRnRjR3hsTG1SdmJUQ0JuekFOQmdrcWhraUc5dzBCQVFFRkFBT0JqUUF3Z1lrQ2dZRUFyMW5ZWTFRcmxsMXIKdUIvRnFsQ1JycjVudnVwZElOKzN3RjdxOTE1dHZFUW9jNzRibnU2YjhJYmJHUk1oemR6bXZRNFN6RmZWRUF1TQpNdVRIZXliUHE1dGg3WURyVE5pektLeE9CbnFFMktZdVg5WDIyQTFLaDQ5c29KSkZnNmtQYjlNVWdpWkJpTWx2CnRiN0szQ0hmZ3c1V2FnV25MbDhMYitjY3ZLWlpsKzhDQXdFQUFhQUFNQTBHQ1NxR1NJYjNEUUVCQkFVQUE0R0IKQUhwb1JwNVlTNTVDWnB5K3dkaWdRRXdqTC93U2x1dm8rV2p0cHZQMFlvQk1KdTRWTUtlWmk0MDVSN284b0V3aQpQZGxycmxpS05rbkZtSEtJYUNLVExSY1U1OVNjQTZBREVJV1V6cW1VelA1Q3M2anJTUm8zTktmZzFiZDA5RDFLCjlyc1FrUmM5VXJ2OW1SQklzcmVkR25ZRUNOZVJhSzVSMXl6cE9vd25pblhDCi0tLS0tRU5EIENFUlRJRklDQVRFIFJFUVVFU1QtLS0tLQ==\00"
define i8* @AtivarSAT(i32 %0, i32 %1, i8* %2, i8* %3, i32 %4) {
%6 = alloca i32
%7 = alloca i32
%8 = alloca i8*
%9 = alloca i8*
%10 = alloca i32
store i32 %0, i32* %6
store i32 %1, i32* %7
store i8* %2, i8** %8
store i8* %3, i8** %9
store i32 %4, i32* %10
%11 = load i32, i32* %6
%12 = call i32 @sprintf(i8* getelementptr inbounds ([892 x i8], [892 x i8]* @AtivarSAT.resp, i64 0, i64 0), i8* getelementptr inbounds ([881 x i8], [881 x i8]* @.str, i64 0, i64 0), i32 %11)
ret i8* getelementptr inbounds ([892 x i8], [892 x i8]* @AtivarSAT.resp, i64 0, i64 0)
}

LLVM IR (-O2):
@AtivarSAT.resp = internal global [892 x i8] zeroinitializer
@.str = [881 x i8] c"%d|04000|Ativado corretamente|||LS0tLS1CRUdJTiBDRVJUSUZJQ0FURSBSRVFVRVNULS0tLS0KTUlJQm5UQ0NBUVlDQVFBd1hURUxNQWtHQTFVRUJoTUNVMGN4RVRBUEJnTlZCQW9UQ0UweVEzSjVjSFJ2TVJJdwpFQVlEVlFRREV3bHNiMk5oYkdodmMzUXhKekFsQmdrcWhraUc5dzBCQ1FFV0dHRmtiV2x1UUhObGNuWmxjaTVsCmVHRnRjR3hsTG1SdmJUQ0JuekFOQmdrcWhraUc5dzBCQVFFRkFBT0JqUUF3Z1lrQ2dZRUFyMW5ZWTFRcmxsMXIKdUIvRnFsQ1JycjVudnVwZElOKzN3RjdxOTE1dHZFUW9jNzRibnU2YjhJYmJHUk1oemR6bXZRNFN6RmZWRUF1TQpNdVRIZXliUHE1dGg3WURyVE5pektLeE9CbnFFMktZdVg5WDIyQTFLaDQ5c29KSkZnNmtQYjlNVWdpWkJpTWx2CnRiN0szQ0hmZ3c1V2FnV25MbDhMYitjY3ZLWlpsKzhDQXdFQUFhQUFNQTBHQ1NxR1NJYjNEUUVCQkFVQUE0R0IKQUhwb1JwNVlTNTVDWnB5K3dkaWdRRXdqTC93U2x1dm8rV2p0cHZQMFlvQk1KdTRWTUtlWmk0MDVSN284b0V3aQpQZGxycmxpS05rbkZtSEtJYUNLVExSY1U1OVNjQTZBREVJV1V6cW1VelA1Q3M2anJTUm8zTktmZzFiZDA5RDFLCjlyc1FrUmM5VXJ2OW1SQklzcmVkR25ZRUNOZVJhSzVSMXl6cE9vd25pblhDCi0tLS0tRU5EIENFUlRJRklDQVRFIFJFUVVFU1QtLS0tLQ==\00"
define i8* @AtivarSAT(i32 %0, i32 %1, i8* nocapture readnone %2, i8* nocapture readnone %3, i32 %4) {
%6 = tail call i32 @sprintf(i8* dereferenceable(1) getelementptr inbounds ([892 x i8], [892 x i8]* @AtivarSAT.resp, i64 0, i64 0), i8* dereferenceable(1) getelementptr inbounds ([881 x i8], [881 x i8]* @.str, i64 0, i64 0), i32 %0)
ret i8* getelementptr inbounds ([892 x i8], [892 x i8]* @AtivarSAT.resp, i64 0, i64 0)
}