// File: /workspace/github_c_makefile_star2_O0/mijallen[P]SimpleHTTPServer/lib/libyaml/src/emitter.c
// Function: yaml_emitter_write_indicator
static int
yaml_emitter_write_indicator(yaml_emitter_t *emitter,
        char *indicator, int need_whitespace,
        int is_whitespace, int is_indention)
{
    size_t indicator_length;
    yaml_string_t string;

    indicator_length = strlen(indicator);
    STRING_ASSIGN(string, (yaml_char_t *)indicator, indicator_length);

    if (need_whitespace && !emitter->whitespace) {
        if (!PUT(emitter, ' ')) return 0;
    }

    while (string.pointer != string.end) {
        if (!WRITE(emitter, string)) return 0;
    }

    emitter->whitespace = is_whitespace;
    emitter->indention = (emitter->indention && is_indention);
    emitter->open_ended = 0;

    return 1;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x60, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movl %edx, -0x1c(%rbp)
movl %ecx, -0x20(%rbp)
movl %r8d, -0x24(%rbp)
movq -0x18(%rbp), %rdi
callq 0x20d0
movq %rax, -0x30(%rbp)
movq -0x18(%rbp), %rax
movq %rax, -0x48(%rbp)
movq -0x18(%rbp), %rax
addq -0x30(%rbp), %rax
movq %rax, -0x40(%rbp)
movq -0x18(%rbp), %rax
movq %rax, -0x38(%rbp)
cmpl $0x0, -0x1c(%rbp)
je 0x21117
movq -0x10(%rbp), %rax
cmpl $0x0, 0x120(%rax)
jne 0x21117
movq -0x10(%rbp), %rax
movq 0x48(%rax), %rax
addq $0x5, %rax
movq -0x10(%rbp), %rcx
cmpq 0x40(%rcx), %rax
jb 0x210da
movq -0x10(%rbp), %rdi
callq 0x21a0
cmpl $0x0, %eax
je 0x21109
movq -0x10(%rbp), %rcx
movq 0x48(%rcx), %rax
movq %rax, %rdx
addq $0x1, %rdx
movq %rdx, 0x48(%rcx)
movb $0x20, (%rax)
movq -0x10(%rbp), %rax
movl 0x11c(%rax), %ecx
addl $0x1, %ecx
movl %ecx, 0x11c(%rax)
movb $0x1, %al
testb $0x1, %al
jne 0x21115
movl $0x0, -0x4(%rbp)
jmp 0x213cc
jmp 0x21117
jmp 0x21119
movq -0x38(%rbp), %rax
cmpq -0x40(%rbp), %rax
je 0x2137c
movq -0x10(%rbp), %rax
movq 0x48(%rax), %rax
addq $0x5, %rax
movq -0x10(%rbp), %rcx
cmpq 0x40(%rcx), %rax
jb 0x2114f
movq -0x10(%rbp), %rdi
callq 0x21a0
cmpl $0x0, %eax
je 0x2136e
movq -0x38(%rbp), %rax
movzbl (%rax), %eax
andl $0x80, %eax
cmpl $0x0, %eax
jne 0x2118e
movq -0x38(%rbp), %rax
movq %rax, %rcx
addq $0x1, %rcx
movq %rcx, -0x38(%rbp)
movb (%rax), %al
movq -0x10(%rbp), %rdx
movq 0x48(%rdx), %rcx
movq %rcx, %rsi
addq $0x1, %rsi
movq %rsi, 0x48(%rdx)
movb %al, (%rcx)
movzbl %al, %eax
jmp 0x21355
movq -0x38(%rbp), %rax
movzbl (%rax), %eax
andl $0xe0, %eax
cmpl $0xc0, %eax
jne 0x211f8
movq -0x38(%rbp), %rax
movq %rax, %rcx
addq $0x1, %rcx
movq %rcx, -0x38(%rbp)
movb (%rax), %cl
movq -0x10(%rbp), %rdx
movq 0x48(%rdx), %rax
movq %rax, %rsi
addq $0x1, %rsi
movq %rsi, 0x48(%rdx)
movb %cl, (%rax)
movq -0x38(%rbp), %rax
movq %rax, %rcx
addq $0x1, %rcx
movq %rcx, -0x38(%rbp)
movb (%rax), %al
movq -0x10(%rbp), %rdx
movq 0x48(%rdx), %rcx
movq %rcx, %rsi
addq $0x1, %rsi
movq %rsi, 0x48(%rdx)
movb %al, (%rcx)
movzbl %al, %eax
movl %eax, -0x4c(%rbp)
jmp 0x21352
movq -0x38(%rbp), %rax
movzbl (%rax), %eax
andl $0xf0, %eax
cmpl $0xe0, %eax
jne 0x21288
movq -0x38(%rbp), %rax
movq %rax, %rcx
addq $0x1, %rcx
movq %rcx, -0x38(%rbp)
movb (%rax), %cl
movq -0x10(%rbp), %rdx
movq 0x48(%rdx), %rax
movq %rax, %rsi
addq $0x1, %rsi
movq %rsi, 0x48(%rdx)
movb %cl, (%rax)
movq -0x38(%rbp), %rax
movq %rax, %rcx
addq $0x1, %rcx
movq %rcx, -0x38(%rbp)
movb (%rax), %cl
movq -0x10(%rbp), %rdx
movq 0x48(%rdx), %rax
movq %rax, %rsi
addq $0x1, %rsi
movq %rsi, 0x48(%rdx)
movb %cl, (%rax)
movq -0x38(%rbp), %rax
movq %rax, %rcx
addq $0x1, %rcx
movq %rcx, -0x38(%rbp)
movb (%rax), %al
movq -0x10(%rbp), %rdx
movq 0x48(%rdx), %rcx
movq %rcx, %rsi
addq $0x1, %rsi
movq %rsi, 0x48(%rdx)
movb %al, (%rcx)
movzbl %al, %eax
movl %eax, -0x50(%rbp)
jmp 0x2134c
movq -0x38(%rbp), %rax
movzbl (%rax), %eax
andl $0xf8, %eax
cmpl $0xf0, %eax
jne 0x2133f
movq -0x38(%rbp), %rax
movq %rax, %rcx
addq $0x1, %rcx
movq %rcx, -0x38(%rbp)
movb (%rax), %cl
movq -0x10(%rbp), %rdx
movq 0x48(%rdx), %rax
movq %rax, %rsi
addq $0x1, %rsi
movq %rsi, 0x48(%rdx)
movb %cl, (%rax)
movq -0x38(%rbp), %rax
movq %rax, %rcx
addq $0x1, %rcx
movq %rcx, -0x38(%rbp)
movb (%rax), %cl
movq -0x10(%rbp), %rdx
movq 0x48(%rdx), %rax
movq %rax, %rsi
addq $0x1, %rsi
movq %rsi, 0x48(%rdx)
movb %cl, (%rax)
movq -0x38(%rbp), %rax
movq %rax, %rcx
addq $0x1, %rcx
movq %rcx, -0x38(%rbp)
movb (%rax), %cl
movq -0x10(%rbp), %rdx
movq 0x48(%rdx), %rax
movq %rax, %rsi
addq $0x1, %rsi
movq %rsi, 0x48(%rdx)
movb %cl, (%rax)
movq -0x38(%rbp), %rax
movq %rax, %rcx
addq $0x1, %rcx
movq %rcx, -0x38(%rbp)
movb (%rax), %al
movq -0x10(%rbp), %rdx
movq 0x48(%rdx), %rcx
movq %rcx, %rsi
addq $0x1, %rsi
movq %rsi, 0x48(%rdx)
movb %al, (%rcx)
movzbl %al, %eax
movl %eax, -0x54(%rbp)
jmp 0x21346
xorl %eax, %eax
movl %eax, -0x54(%rbp)
jmp 0x21346
movl -0x54(%rbp), %eax
movl %eax, -0x50(%rbp)
movl -0x50(%rbp), %eax
movl %eax, -0x4c(%rbp)
movl -0x4c(%rbp), %eax
movq -0x10(%rbp), %rax
movl 0x11c(%rax), %ecx
addl $0x1, %ecx
movl %ecx, 0x11c(%rax)
movb $0x1, %al
testb $0x1, %al
jne 0x21377
movl $0x0, -0x4(%rbp)
jmp 0x213cc
jmp 0x21119
movl -0x20(%rbp), %ecx
movq -0x10(%rbp), %rax
movl %ecx, 0x120(%rax)
movq -0x10(%rbp), %rcx
xorl %eax, %eax
cmpl $0x0, 0x124(%rcx)
movb %al, -0x55(%rbp)
je 0x213a5
cmpl $0x0, -0x24(%rbp)
setne %al
movb %al, -0x55(%rbp)
movb -0x55(%rbp), %al
andb $0x1, %al
movzbl %al, %ecx
movq -0x10(%rbp), %rax
movl %ecx, 0x124(%rax)
movq -0x10(%rbp), %rax
movl $0x0, 0x128(%rax)
movl $0x1, -0x4(%rbp)
movl -0x4(%rbp), %eax
addq $0x60, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)