// File: /workspace/github_c_makefile_star2_O2/jsummers[P]deark/modules/afcp.c
// Function: de_run_afcp
static void de_run_afcp(deark *c, de_module_params *mparams)
{
	struct afcpctx *d = NULL;
	int saved_indent_level;

	de_dbg_indent_save(c, &saved_indent_level);
	d = de_malloc(c, sizeof(struct afcpctx));
	d->endpos = c->infile->len;
	de_dbg(c, "AFCP data, ending at %"I64_FMT, d->endpos);
	de_dbg_indent(c, 1);

	if(!do_afcp_eofrec(c, d)) goto done;
	if(!do_afcp_starttagrec(c, d)) goto done;
	do_afcp_recordlist(c, d);

done:
	de_free(c, d);
	de_dbg_indent_restore(c, saved_indent_level);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x58, %rsp
movq %rdi, %rbx
leaq 0x10(%rsp), %rsi
callq 0xdebae
pushq $0x20
popq %rsi
movq %rbx, %rdi
callq 0xdecaf
movq %rax, %r14
movq 0x18(%rbx), %rax
movq 0x18(%rax), %rdx
movq %rdx, 0x8(%r14)
leaq 0xe2119(%rip), %rsi     # 0x10741a
movq %rbx, %rdi
xorl %eax, %eax
callq 0xde896
pushq $0x1
popq %rbp
movq %rbx, %rdi
movl %ebp, %esi
callq 0xdeba7
leaq 0x28(%rsp), %rsi
movq %rbx, %rdi
callq 0xdebae
movq 0x8(%r14), %r15
leaq -0xc(%r15), %rdx
leaq 0xe20ff(%rip), %rsi     # 0x107433
movq %rbx, %rdi
xorl %eax, %eax
callq 0xde896
movq %rbx, %rdi
movl %ebp, %esi
callq 0xdeba7
movq 0x18(%rbx), %rdi
leaq -0x9(%r15), %rsi
callq 0xe3eb4
movb %al, 0x4(%r14)
cmpb $0x2a, %al
je 0x2536b
movzbl %al, %eax
cmpl $0x21, %eax
jne 0x257be
xorl %ebp, %ebp
movl %ebp, (%r14)
leaq 0xe20e4(%rip), %rsi     # 0x107459
movq %rbx, %rdi
movl %ebp, %edx
xorl %eax, %eax
callq 0xde896
movq 0x18(%rbx), %rdi
addq $-0x8, %r15
movl (%r14), %edx
movq %r15, %rsi
callq 0xe41cb
movq %rax, 0x10(%r14)
leaq 0xe20cf(%rip), %rsi     # 0x10746e
movq %rbx, %rdi
movq %rax, %rdx
xorl %eax, %eax
callq 0xde896
leaq 0x28(%rsp), %r15
movl (%r15), %esi
movq %rbx, %rdi
callq 0xdebb7
movq %rbx, %rdi
movq %r15, %rsi
callq 0xdebae
movq 0x10(%r14), %rdx
leaq 0xe20b2(%rip), %rsi     # 0x107484
movq %rbx, %rdi
xorl %eax, %eax
callq 0xde896
pushq $0x1
popq %rsi
movq %rbx, %rdi
callq 0xdeba7
movq 0x18(%rbx), %rdi
movq 0x10(%r14), %rsi
addq $0x3, %rsi
callq 0xe3eb4
movl %eax, %ebp
movb 0x4(%r14), %r12b
cmpb %r12b, %al
jne 0x25475
movq 0x18(%rbx), %rdi
movq 0x10(%r14), %rsi
addq $0x4, %rsi
movl (%r14), %edx
callq 0xe41b1
movq %rax, %r15
leaq 0x104663(%rip), %rsi    # 0x129a84
movq %rbx, %rdi
movl %r15d, %edx
xorl %eax, %eax
callq 0xde896
movq 0x18(%rbx), %rdi
movq 0x10(%r14), %rsi
addq $0x6, %rsi
movl (%r14), %edx
callq 0xe41b1
movq %rax, 0x18(%r14)
leaq 0xe05b7(%rip), %rsi     # 0x105a04
movq %rbx, %rdi
movl %eax, %edx
xorl %eax, %eax
callq 0xde896
cmpl $0x2, %r15d
jb 0x2548a
leaq 0xe2056(%rip), %rsi     # 0x1074bc
movq %rbx, %rdi
movl %r15d, %edx
xorl %eax, %eax
callq 0xdf05a
jmp 0x2548a
movq 0x10(%r14), %rdx
leaq 0xe201c(%rip), %rsi     # 0x10749c
movq %rbx, %rdi
xorl %eax, %eax
callq 0xdf2a5
movl 0x28(%rsp), %esi
movq %rbx, %rdi
callq 0xdebb7
cmpb %r12b, %bpl
jne 0x257db
leaq 0x14(%rsp), %rsi
movq %rbx, %rdi
callq 0xdebae
movq 0x10(%r14), %r15
addq $0xc, %r15
leaq 0xe2024(%rip), %rsi     # 0x1074df
movq %rbx, %rdi
movq %r15, %rdx
xorl %eax, %eax
callq 0xde896
pushq $0x1
popq %rsi
movq %rbx, %rdi
callq 0xdeba7
xorl %r13d, %r13d
cmpq 0x18(%r14), %r13
jge 0x257b8
addq $0xc, %r13
cmpq 0x8(%r14), %r13
jg 0x257b8
addq $-0xc, %r13
movq %rbx, %rdi
leaq 0xe0525(%rip), %rsi     # 0x105a21
movl %r13d, %edx
movq %r15, %rcx
xorl %eax, %eax
callq 0xde896
movq %rbx, %rdi
pushq $0x1
popq %rsi
callq 0xdeba7
movq %rbx, %rdi
pushq $0x40
popq %rsi
callq 0xdecaf
movq %rax, %r12
movq 0x18(%rbx), %rdi
leaq 0x10(%rax), %rdx
movq %r15, %rsi
pushq $0x4
popq %rcx
xorl %r8d, %r8d
callq 0xe657c
leaq 0x20(%r12), %rdx
movq %rbx, %rdi
leaq 0xe1fab(%rip), %rsi     # 0x1074f2
xorl %eax, %eax
callq 0xde896
movq 0x18(%rbx), %rdi
movl (%r14), %edx
leaq 0x4(%r15), %rsi
callq 0xe41cb
movq %rax, (%r12)
movq %rbx, %rdi
leaq 0x112f10(%rip), %rsi    # 0x13847c
movq %rax, %rdx
xorl %eax, %eax
callq 0xde896
movq 0x18(%rbx), %rdi
movl (%r14), %edx
addq $0x8, %r15
movq %r15, %rsi
callq 0xe41cb
movq %rax, 0x8(%r12)
movq %rbx, %rdi
leaq 0x11835a(%rip), %rsi    # 0x13d8f2
movq %rax, %rdx
xorl %eax, %eax
callq 0xde896
movq 0x8(%r12), %rbp
cmpq 0x10(%r14), %rbp
jl 0x255bb
movq (%r12), %rcx
leaq (%rcx,%rbp), %rax
cmpq 0x8(%r14), %rax
jle 0x255dd
movq %rbx, %rdi
movq %r12, %rsi
callq 0xded32
movq %rbx, %rdi
pushq $-0x1
popq %rsi
callq 0xdeba7
incq %r13
addq $0x4, %r15
jmp 0x254d6
movl 0x14(%r12), %eax
cmpl $0x50725677, %eax       # imm = 0x50725677
je 0x2563f
cmpl $0x4e61696c, %eax       # imm = 0x4E61696C
je 0x2563f
cmpl $0x49505443, %eax       # imm = 0x49505443
jne 0x25775
movq %rbx, %rdi
leaq 0xe1ef6(%rip), %rsi     # 0x1074fb
xorl %eax, %eax
callq 0xde896
movq %rbx, %rdi
pushq $0x1
popq %rsi
callq 0xdeba7
movq 0x18(%rbx), %rsi
movq (%r12), %rcx
movq 0x8(%r12), %rdx
movq %rbx, %rdi
xorl %r8d, %r8d
callq 0xec1bf
movq %rbx, %rdi
pushq $-0x1
popq %rsi
callq 0xdeba7
jmp 0x255bb
andq $0x0, 0x18(%rsp)
cmpq $0xa, %rcx
jl 0x255bb
movq 0x18(%rbx), %rdi
movl (%r14), %edx
movq %rbp, %rsi
callq 0xe41b1
movq %rax, 0x8(%rsp)
movq %rbx, %rdi
leaq 0xe1e9c(%rip), %rsi     # 0x107509
movl %eax, %edx
xorl %eax, %eax
callq 0xde896
cmpl $0x1, 0x8(%rsp)
jne 0x255bb
leaq 0x2(%rbp), %rsi
movq 0x18(%rbx), %rdi
movl (%r14), %edx
callq 0xe41b1
movq %rax, 0x8(%rsp)
leaq 0x4(%rbp), %rsi
movq 0x18(%rbx), %rdi
movl (%r14), %edx
callq 0xe41b1
leaq 0x6(%rbp), %rcx
movq %rcx, 0x20(%rsp)
movq %rbx, %rdi
leaq 0xe1e63(%rip), %rsi     # 0x10751c
movq 0x8(%rsp), %rdx
movl %eax, %ecx
xorl %eax, %eax
callq 0xde896
movq 0x18(%rbx), %rdi
movq 0x20(%rsp), %rsi
leaq 0x28(%rsp), %rdx
pushq $0x4
popq %rcx
xorl %r8d, %r8d
callq 0xe657c
leaq 0xa(%rbp), %rax
movq %rax, 0x8(%rsp)
movq %rbx, %rdi
leaq 0xe1e45(%rip), %rsi     # 0x107538
leaq 0x38(%rsp), %rdx
xorl %eax, %eax
callq 0xde896
movq 0x18(%rbx), %rdi
movq (%r12), %rax
movq 0x8(%r12), %rcx
subq %rbp, %rcx
leaq (%rcx,%rax), %r8
addq $-0xa, %r8
leaq 0xe1e2b(%rip), %rsi     # 0x107549
pushq $0x3
popq %rdx
movq 0x8(%rsp), %rcx
leaq 0x18(%rsp), %r9
callq 0xe62f1
testl %eax, %eax
je 0x257a2
cmpl $0x50725677, 0x14(%r12) # imm = 0x50725677
leaq 0xe1e3f(%rip), %rcx     # 0x107583
leaq 0xe1e28(%rip), %rax     # 0x107573
cmoveq %rax, %rcx
movq 0x18(%rbx), %rdi
movq 0x18(%rsp), %rsi
movq 0x8(%r12), %rdx
subq %rsi, %rdx
addq (%r12), %rdx
xorl %r8d, %r8d
pushq $0x1
popq %r9
callq 0xe4e0b
jmp 0x255bb
cmpl $0x2, (%rbx)
jl 0x255bb
movq 0x18(%rbx), %rsi
movl $0x1, (%rsp)
movl $0x100, %r8d            # imm = 0x100
movq %rbx, %rdi
movq %rbp, %rdx
xorl %r9d, %r9d
callq 0xded3a
jmp 0x255bb
movq %rbx, %rdi
leaq 0xe1da1(%rip), %rsi     # 0x10754d
xorl %eax, %eax
callq 0xde896
jmp 0x255bb
movl 0x14(%rsp), %esi
jmp 0x257d3
leaq 0xe1c80(%rip), %rsi     # 0x107445
movq %rbx, %rdi
xorl %eax, %eax
callq 0xdf2a5
movl 0x28(%rsp), %esi
movq %rbx, %rdi
callq 0xdebb7
movq %rbx, %rdi
movq %r14, %rsi
callq 0xded32
movl 0x10(%rsp), %esi
movq %rbx, %rdi
callq 0xdebb7
addq $0x58, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
nopl (%rax)