// File: /workspace/github_c_makefile_star2_O0/Ziddykins[P]Dawn/src/commands.c
// Function: cmd_make
void cmd_make(int pindex, struct Message * msg) {
    char * out;
    CALLEXIT(!(out = malloc(MAX_MESSAGE_BUFFER)))
    if (matches_regex(msg->message, CMD_LIT" snow angels")) {
        if (dawn->weather == SNOWING) {
            int yeti_chance = rand() % 100;
            if (yeti_chance >= 75) {
                snprintf(out, MAX_MESSAGE_BUFFER, "PRIVMSG %s :%s falls to the ground and begins making snow angels!"
                        " Unfortunately, they were mauled by a yeti in the process. -25 HP\r\n", msg->receiver,
                        msg->sender_nick);
                dawn->players[pindex].health -= 25;
                add_msg(out, strlen(out));
                check_alive(msg);
                return;
            }
            snprintf(out, MAX_MESSAGE_BUFFER, "PRIVMSG %s :%s falls to the ground and begins making snow angels!\r\n",
                    msg->receiver, msg->sender_nick);
            add_msg(out, strlen(out));
        } else {
            snprintf(out, MAX_MESSAGE_BUFFER, "PRIVMSG %s :There is no snow\r\n", msg->receiver);
            add_msg(out, strlen(out));
        }
    }
    free(out);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x40, %rsp
movl %edi, -0x4(%rbp)
movq %rsi, -0x10(%rbp)
movl $0x190, %edi            # imm = 0x190
callq 0x22b0
movq %rax, -0x18(%rbp)
cmpq $0x0, %rax
jne 0x73c9
leaq 0x1493c(%rip), %rdi     # 0x1bcf6
callq 0x2190
movl $0x1, %edi
callq 0x2260
movq -0x10(%rbp), %rdi
addq $0x100, %rdi            # imm = 0x100
leaq 0x14966(%rip), %rsi     # 0x1bd41
callq 0x13090
cmpl $0x0, %eax
je 0x7521
leaq 0x21680(%rip), %rax     # 0x28a70
movq (%rax), %rax
cmpl $0x2, 0x14c(%rax)
jne 0x74e0
callq 0x2080
movl $0x64, %ecx
cltd
idivl %ecx
movl %edx, -0x1c(%rbp)
cmpl $0x4b, -0x1c(%rbp)
jl 0x749b
movq -0x18(%rbp), %rdi
movq -0x10(%rbp), %rcx
addq $0xc0, %rcx
movq -0x10(%rbp), %r8
movl $0x190, %esi            # imm = 0x190
leaq 0x1491f(%rip), %rdx     # 0x1bd58
movb $0x0, %al
callq 0x2390
leaq 0x21629(%rip), %rax     # 0x28a70
movq (%rax), %rax
addq $0x1a0, %rax            # imm = 0x1A0
movslq -0x4(%rbp), %rcx
imulq $0x26a8, %rcx, %rcx     # imm = 0x26A8
addq %rcx, %rax
movq 0x2650(%rax), %rcx
subq $0x19, %rcx
movq %rcx, 0x2650(%rax)
movq -0x18(%rbp), %rax
movq %rax, -0x28(%rbp)
movq -0x18(%rbp), %rdi
callq 0x20c0
movq -0x28(%rbp), %rdi
movq %rax, %rsi
callq 0x12840
movq -0x10(%rbp), %rdi
callq 0x4590
jmp 0x752a
movq -0x18(%rbp), %rdi
movq -0x10(%rbp), %rcx
addq $0xc0, %rcx
movq -0x10(%rbp), %r8
movl $0x190, %esi            # imm = 0x190
leaq 0x14923(%rip), %rdx     # 0x1bddd
movb $0x0, %al
callq 0x2390
movq -0x18(%rbp), %rax
movq %rax, -0x30(%rbp)
movq -0x18(%rbp), %rdi
callq 0x20c0
movq -0x30(%rbp), %rdi
movq %rax, %rsi
callq 0x12840
jmp 0x751f
movq -0x18(%rbp), %rdi
movq -0x10(%rbp), %rcx
addq $0xc0, %rcx
movl $0x190, %esi            # imm = 0x190
leaq 0x14926(%rip), %rdx     # 0x1be21
movb $0x0, %al
callq 0x2390
movq -0x18(%rbp), %rax
movq %rax, -0x38(%rbp)
movq -0x18(%rbp), %rdi
callq 0x20c0
movq -0x38(%rbp), %rdi
movq %rax, %rsi
callq 0x12840
jmp 0x7521
movq -0x18(%rbp), %rdi
callq 0x2240
addq $0x40, %rsp
popq %rbp
retq