Function at 0x180086440
Capabilities:
Resolve function by parsing pe exports

Disassembly:
test rcx, rcx
je 0x18008646d
test rdx, rdx
je 0x18008646d
test r8, r8
je 0x18008646d
mov eax, dword [rcx + 0x14]
test eax, eax
je 0x180086464
cmp eax, 2
jne 0x18008646d
mov rcx, qword [rcx + 0x20]
jmp 0x1800cee00
mov rcx, qword [rcx + 0x18]
jmp 0x1800cce40
xor eax, eax
ret
mov rax, rsp
mov qword [rax + 0x20], r9
mov qword [rax + 0x18], r8
mov qword [rax + 0x10], rdx
mov qword [rax + 8], rcx
push rbp
push rdi
push r12
sub rsp, 0xb0
mov rdi, qword [rcx + 0x68]
mov qword [rax - 0x28], rsi
mov qword [rax - 0x30], r13
test rdi, rdi
mov qword [rax - 0x38], r14
mov r14, qword [rcx + 0x60]
mov qword [rax - 0x40], r15
mov r13, rcx
mov qword [rcx + 0x70], rdx
mov qword [rsp + 0x50], r14
mov r15, r8
mov qword [rcx + 0x58], r8
mov qword [rsp + 0x60], rdi
je 0x1800ccf40
mov eax, dword [r14 + 0x30]
test eax, eax
je 0x1800ccf40
mov dword [rdi], eax
mov eax, dword [r14 + 0x50]
imul eax, dword [r14 + 0x54]
cdqe
lea rcx, [rax + rax*8]
shl rcx, 6
call fcn.1800c8c40
mov qword [rdi + 0x50], rax
mov eax, dword [r15 + 8]
sub eax, dword [r15]
mov dword [rdi + 0x18], eax
mov eax, dword [r15 + 0xc]
sub eax, dword [r15 + 4]
mov dword [rdi + 0x1c], eax
mov rax, qword [r14 + 0x88]
mov ecx, dword [rax + 8]
mov dword [rdi + 0x20], ecx
mov eax, dword [r14 + 0x50]
mov dword [rdi + 0x34], eax
mov eax, dword [r14 + 0x54]
mov dword [rdi + 0x38], eax
mov eax, dword [r14 + 0x3c]
mov dword [rdi + 0x24], eax
mov eax, dword [r14 + 0x40]
mov dword [rdi + 0x28], eax
mov eax, dword [r14 + 0x34]
mov dword [rdi + 0x2c], eax
mov eax, dword [r14 + 0x38]
mov dword [rdi + 0x30], eax
mov eax, dword [r15 + 0x10]
mov dword [rdi + 0x3c], eax
mov rax, qword [r14 + 0x88]
mov ecx, dword [rax + 0xc]
mov dword [rdi + 0x40], ecx
mov rax, qword [r14 + 0x88]
mov rcx, qword [rax + 0x15e0]
mov eax, dword [rcx + 4]
mov qword [rdi + 8], 0
sub eax, 1
mov dword [rdi + 0x44], eax
mov rcx, qword [r13 + 0x70]
mov edx, 0xff4f
mov r8d, 2
mov qword [rsp + 0xa8], rbx
call fcn.1800865e0
mov rcx, r13
call fcn.1800c90d0
mov rcx, r13
call fcn.1800c96b0
mov rcx, r13
call fcn.1800c9c50
cmp dword [r14], 0
je 0x1800cd156
mov r14d, 1
cmp dword [r15 + 0x10], r14d
jle 0x1800cd151
mov esi, 0x434
movsxd rbx, dword [r13 + 0xc]
mov rax, qword [r13 + 0x60]
mov rdi, qword [r13 + 0x58]
imul rbx, rbx, 0x15e8
mov r13, qword [r13 + 0x70]
add rbx, qword [rax + 0x88]
mov edx, 0xff53
mov r8d, 2
mov rcx, r13
call fcn.1800865e0
mov rcx, r13
call fcn.1800865a0
mov edx, 2
mov rcx, r13
mov r15d, eax
call fcn.1800866c0
xor r8d, r8d
cmp dword [rdi + 0x10], 0x100
mov edx, r14d
mov rcx, r13
setg r8b
add r8d, 1
call fcn.1800865e0
mov rdx, qword [rbx + 0x15e0]
mov r8d, 1
mov edx, dword [rdx + rsi]
mov rcx, r13
call fcn.1800865e0
mov r12, qword [rsp + 0xd0]
mov r8d, 1
movsxd rdx, dword [r12 + 0xc]
mov rax, qword [r12 + 0x60]
mov r12, qword [r12 + 0x70]
imul rdx, rdx, 0x15e8
mov rcx, qword [rax + 0x88]
mov rbp, qword [rdx + rcx + 0x15e0]
mov rcx, r12
mov edx, dword [rsi + rbp + 4]
sub edx, 1
call fcn.1800865e0
mov edx, dword [rsi + rbp + 8]
mov r8d, 1
sub edx, 2
mov rcx, r12
call fcn.1800865e0
mov edx, dword [rsi + rbp + 0xc]
mov r8d, 1
sub edx, 2
mov rcx, r12
call fcn.1800865e0
mov edx, dword [rsi + rbp + 0x10]
mov r8d, 1
mov rcx, r12
call fcn.1800865e0
mov edx, dword [rsi + rbp + 0x14]
mov r8d, 1
mov rcx, r12
call fcn.1800865e0
test byte [rsi + rbp], 1
je 0x1800cd0e6
xor ebx, ebx
cmp dword [rsi + rbp + 4], ebx
jle 0x1800cd0e6
lea rdi, [rsi + rbp + 0x32c]
nop
nop
nop
mov edx, dword [rdi + 0x84]
mov r8d, 1
mov rcx, r12
shl edx, 4
add edx, dword [rdi]
call fcn.1800865e0
add ebx, 1
add rdi, 4
cmp ebx, dword [rsi + rbp + 4]
jl 0x1800cd0c0
mov rcx, r13
call fcn.1800865a0
mov edx, r15d
mov rcx, r13
mov edi, eax
sub edi, r15d
call fcn.1800865b0
mov r8d, 2
mov edx, edi
mov rcx, r13
call fcn.1800865e0
lea edx, [rdi + r15]
mov rcx, r13
call fcn.1800865b0
mov r13, qword [rsp + 0xd0]
mov edx, r14d
mov rcx, r13
call fcn.1800c9f40
mov r15, qword [rsp + 0xe0]
add r14d, 1
add rsi, 0x434
cmp r14d, dword [r15 + 0x10]
jl 0x1800ccf93
mov r14, qword [rsp + 0x50]
jmp 0x1800cd156
mov r14, qword [rsp + 0x50]
xor r12d, r12d
cmp dword [r15 + 0x10], r12d
jle 0x1800cd22c
xor ebp, ebp
nop
nop
nop
mov rax, qword [r14 + 0x88]
mov rcx, qword [rax + 0x15e0]
cmp dword [rcx + rbp + 0x328], 0
je 0x1800cd217
mov rax, qword [r13 + 0x60]
mov rsi, qword [r13 + 0x70]
mov edx, 0xff5e
mov rbx, qword [rax + 0x88]
mov rax, qword [r13 + 0x58]
mov r8d, 2
mov edi, dword [rax + 0x10]
mov rcx, rsi
call fcn.1800865e0
xor edx, edx
cmp edi, 0x100
setg dl
mov r8d, 2
mov rcx, rsi
add edx, 5
call fcn.1800865e0
xor r8d, r8d
cmp edi, 0x100
setg r8b
mov edx, r12d
mov rcx, rsi
add r8d, 1
call fcn.1800865e0
xor edx, edx
mov rcx, rsi
lea r8d, [rdx + 1]
call fcn.1800865e0
mov rdx, qword [rbx + 0x15e0]
mov r8d, 1
mov edx, dword [rdx + rbp + 0x328]
mov rcx, rsi
call fcn.1800865e0
add r12d, 1
add rbp, 0x434
cmp r12d, dword [r15 + 0x10]
jl 0x1800cd170
cmp qword [r14 + 0x48], 0
je 0x1800cd305
mov rax, qword [r13 + 0x60]
mov r12, qword [rax + 0x48]
test r12, r12
je 0x1800cd305
mov rbp, qword [r13 + 0x70]
mov edx, 0xff64
mov r8d, 2
mov rcx, rbp
call fcn.1800865e0
mov rcx, rbp
call fcn.1800865a0
mov edx, 2
mov rcx, rbp
mov r13d, eax
call fcn.1800866c0
xor edx, edx
lea r8d, [rdx + 2]
mov rcx, rbp
call fcn.1800865e0
or rcx, 0xffffffffffffffff
xor eax, eax
mov rdi, r12
xor esi, esi
repne scasb al, byte [rdi]
not rcx
cmp rcx, 1
je 0x1800cd2d1
mov rbx, r12
nop
movsx edx, byte [rbx]
mov r8d, 1
mov rcx, rbp
call fcn.1800865e0
or rcx, 0xffffffffffffffff
xor eax, eax
add esi, 1
mov rdi, r12
add rbx, 1
repne scasb al, byte [rdi]
mov eax, esi
not rcx
sub rcx, 1
cmp rax, rcx
jb 0x1800cd2a0
mov rcx, rbp
call fcn.1800865a0
mov edx, r13d
mov rcx, rbp
mov edi, eax
sub edi, r13d
call fcn.1800865b0
mov r8d, 2
mov edx, edi
mov rcx, rbp
call fcn.1800865e0
lea edx, [rdi + r13]
mov rcx, rbp
call fcn.1800865b0
mov rbp, qword [rsp + 0x60]
test rbp, rbp
je 0x1800cd328
cmp dword [rbp], 0
je 0x1800cd328
mov rcx, qword [rsp + 0xd8]
call fcn.1800865a0
sub eax, 1
mov dword [rbp + 0x48], eax
mov r12, qword [rsp + 0xd0]
mov edx, dword [r15 + 0x10]
mov r8, r15
mov r9, r12
mov rcx, r14
call fcn.1800c8ed0
mov dword [r12 + 0x24], eax
cmp dword [r14], 0
je 0x1800cd3c6
mov rdi, qword [r12 + 0x70]
mov rcx, rdi
call fcn.1800865a0
mov edx, 0xff55
mov r8d, 2
mov rcx, rdi
mov dword [r12 + 0x20], eax
call fcn.1800865e0
mov edx, dword [r12 + 0x24]
mov r8d, 2
lea edx, [rdx + rdx*4 + 4]
mov rcx, rdi
call fcn.1800865e0
xor edx, edx
mov rcx, rdi
lea r8d, [rdx + 1]
call fcn.1800865e0
mov edx, 0x50
mov rcx, rdi
lea r8d, [rdx - 0x4f]
call fcn.1800865e0
mov edx, dword [r12 + 0x24]
mov rcx, rdi
lea edx, [rdx + rdx*4]
call fcn.1800866c0
cmp dword [r14], 3
jne 0x1800cd3c6
mov rcx, r12
call fcn.1800ca110
mov rcx, qword [r12]
call fcn.180122460
mov ecx, dword [r14 + 0x50]
xor edi, edi
mov rsi, rax
mov qword [rsp + 0x68], rax
imul ecx, dword [r14 + 0x54]
test ecx, ecx
jle 0x1800cda79
xor ebx, ebx
mov qword [rsp + 0x40], rbx
mov eax, dword [r14 + 0x50]
mov r13, qword [r14 + 0x88]
lea ecx, [rdi + 1]
imul eax, dword [r14 + 0x54]
mov dword [rsp + 0x48], ecx
mov r9d, ecx
mov rcx, qword [r12]
lea r8, str.tile_number__d____d_n
mov edx, 4
mov dword [rsp + 0x20], eax
mov qword [rsp + 0x70], r13
call fcn.1800866f0
test edi, edi
mov dword [r12 + 0xc], edi
mov dword [r12 + 0x14], 0
jne 0x1800cd44e
xor r9d, r9d
mov r8, r14
mov rdx, r15
mov rcx, rsi
call fcn.1801224f0
jmp 0x1800cd45f
mov r9d, edi
mov r8, r14
mov rdx, r15
mov rcx, rsi
call fcn.180123100
test rbp, rbp
je 0x1800cd4a6
cmp dword [rbp], 0
je 0x1800cd4a6
movsxd rdx, dword [r12 + 0xc]
mov rax, qword [rbp + 0x50]
lea rcx, [rdx + rdx*8]
shl rcx, 6
mov dword [rcx + rax + 8], edx
mov rcx, qword [rsp + 0xd8]
call fcn.1800865a0
movsxd rcx, dword [r12 + 0xc]
add eax, dword [r12 + 0x38]
lea rdx, [rcx + rcx*8]
mov rcx, qword [rbp + 0x50]
shl rdx, 6
mov dword [rdx + rcx + 0xc], eax
xor eax, eax
cmp dword [rbx + r13 + 0x1a4], eax
mov dword [rsp + 0x38], eax
jl 0x1800cda22
xor r9d, r9d
mov qword [rsp + 0x58], r9
nop
nop
nop
nop
mov dword [rsi + 0x10], eax
mov rax, qword [r14 + 0x88]
mov ebp, 1
lea rcx, [rbx + rax]
mov eax, dword [reloc.OLEAUT32.dll_SysReAllocStringLen]
xor r8d, r8d
cmp eax, 0xffffffff
mov dword [rsp + 0x30], ebp
lea rdx, [0x18028fda0]
je 0x1800cd510
mov edi, dword [rcx + 8]
nop
cmp eax, edi
je 0x1800cd510
mov eax, dword [rdx + 8]
add rdx, 8
cmp eax, 0xffffffff
jne 0x1800cd500
add rdx, 4
cmp byte [r14 + 0x10], bpl
jne 0x1800cd593
xor edi, edi
nop
cmp r8d, 1
je 0x1800cd575
movzx eax, byte [rdx]
cmp byte [r14 + 0x11], al
jne 0x1800cd539
mov r8d, 1
mov dword [r14 + 0x14], edi
mov al, byte [rdx]
cmp al, 0x43
je 0x1800cd56c
cmp al, 0x4c
je 0x1800cd561
cmp al, 0x50
je 0x1800cd556
cmp al, 0x52
jne 0x1800cd575
imul ebp, dword [r9 + rcx + 0x204]
jmp 0x1800cd575
imul ebp, dword [r9 + rcx + 0x20c]
jmp 0x1800cd575
imul ebp, dword [r9 + rcx + 0x200]
jmp 0x1800cd575
imul ebp, dword [r9 + rcx + 0x208]
add edi, 1
add rdx, 1
cmp edi, 4
jl 0x1800cd520
mov dword [rsp + 0x30], ebp
mov dword [rsp + 0x30], ebp
mov dword [rsp + 0x30], ebp
mov dword [rsp + 0x30], ebp
jmp 0x1800cd597
mov dword [rsp + 0x30], ebp
mov eax, dword [r14 + 0x14]
xor r13d, r13d
test ebp, ebp
mov dword [rsi], eax
mov dword [rsp + 0x34], r13d
jle 0x1800cd9eb
nop
mov rsi, qword [r12 + 0x70]
mov dword [r12 + 0x10], r13d
mov rcx, rsi
call fcn.1800865a0
mov edx, 0xff90
mov r8d, 2
mov rcx, rsi
mov dword [r12 + 0x30], eax
call fcn.1800865e0
mov rcx, rsi
call fcn.1800865a0
mov edx, 2
mov rcx, rsi
mov ebx, eax
call fcn.1800866c0
mov edx, dword [r12 + 0xc]
mov r8d, 2
mov rcx, rsi
call fcn.1800865e0
mov edx, 4
mov rcx, rsi
call fcn.1800866c0
mov edx, dword [r12 + 0x14]
mov r8d, 1
mov rcx, rsi
call fcn.1800865e0
movsxd rdx, dword [r12 + 0xc]
mov rax, qword [r12 + 0x18]
mov edx, dword [rax + rdx*4]
mov r8d, 1
mov rcx, rsi
call fcn.1800865e0
mov rcx, rsi
call fcn.1800865a0
mov edx, ebx
mov rcx, rsi
mov edi, eax
sub edi, ebx
call fcn.1800865b0
mov r8d, 2
mov edx, edi
mov rcx, rsi
call fcn.1800865e0
lea edx, [rdi + rbx]
mov rcx, rsi
call fcn.1800865b0
cmp dword [r12 + 0x14], 0
jne 0x1800cd9b9
cmp dword [r14], 0
jne 0x1800cd9b2
mov rax, qword [rsp + 0xe0]
mov r15d, 1
cmp dword [rax + 0x10], r15d
jle 0x1800cd992
mov esi, 0x434
nop
nop
nop
nop
movsxd rbx, dword [r12 + 0xc]
mov r13, qword [r12 + 0x70]
mov rax, qword [r12 + 0x60]
imul rbx, rbx, 0x15e8
mov rdi, qword [r12 + 0x58]
add rbx, qword [rax + 0x88]
mov edx, 0xff53
mov r8d, 2
mov rcx, r13
call fcn.1800865e0
mov rcx, r13
call fcn.1800865a0
mov edx, 2
mov rcx, r13
mov r14d, eax
call fcn.1800866c0
xor r8d, r8d
cmp dword [rdi + 0x10], 0x100
mov edx, r15d
mov rcx, r13
setg r8b
add r8d, 1
call fcn.1800865e0
mov rdx, qword [rbx + 0x15e0]
mov r8d, 1
mov edx, dword [rdx + rsi]
mov rcx, r13
call fcn.1800865e0
movsxd rdx, dword [r12 + 0xc]
mov rax, qword [r12 + 0x60]
imul rdx, rdx, 0x15e8
mov rcx, qword [rax + 0x88]
mov r12, qword [r12 + 0x70]
mov r8d, 1
mov rbp, qword [rdx + rcx + 0x15e0]
mov rcx, r12
mov edx, dword [rsi + rbp + 4]
sub edx, 1
call fcn.1800865e0
mov edx, dword [rsi + rbp + 8]
mov r8d, 1
sub edx, 2
mov rcx, r12
call fcn.1800865e0
mov edx, dword [rsi + rbp + 0xc]
mov r8d, 1
sub edx, 2
mov rcx, r12
call fcn.1800865e0
mov edx, dword [rsi + rbp + 0x10]
mov r8d, 1
mov rcx, r12
call fcn.1800865e0
mov edx, dword [rsi + rbp + 0x14]
mov r8d, 1
mov rcx, r12
call fcn.1800865e0
test byte [rsi + rbp], 1
je 0x1800cd7f6
xor ebx, ebx
cmp dword [rsi + rbp + 4], ebx
jle 0x1800cd7f6
lea rdi, [rsi + rbp + 0x32c]
mov edx, dword [rdi + 0x84]
mov r8d, 1
mov rcx, r12
shl edx, 4
add edx, dword [rdi]
call fcn.1800865e0
add ebx, 1
add rdi, 4
cmp ebx, dword [rsi + rbp + 4]
jl 0x1800cd7d0
mov rcx, r13
call fcn.1800865a0
mov edx, r14d
mov rcx, r13
mov edi, eax
sub edi, r14d
call fcn.1800865b0
mov r8d, 2
mov edx, edi
mov rcx, r13
call fcn.1800865e0
lea edx, [rdi + r14]
mov rcx, r13
call fcn.1800865b0
mov rdi, qword [rsp + 0xd0]
mov edx, 0xff5d
mov r13, qword [rdi + 0x70]
mov r8d, 2
mov rcx, r13
call fcn.1800865e0
mov rcx, r13
call fcn.1800865a0
mov edx, 2
mov rcx, r13
mov r14d, eax
call fcn.1800866c0
mov rdx, qword [rdi + 0x58]
xor r8d, r8d
cmp dword [rdx + 0x10], 0x100
mov rcx, r13
setg r8b
mov edx, r15d
add r8d, 1
call fcn.1800865e0
movsxd rdx, dword [rdi + 0xc]
mov rax, qword [rdi + 0x60]
imul rdx, rdx, 0x15e8
mov rcx, qword [rax + 0x88]
mov rbp, qword [rdi + 0x70]
mov r8d, 1
mov r12, qword [rdx + rcx + 0x15e0]
mov rcx, rbp
mov edx, dword [rsi + r12 + 0x324]
shl edx, 5
add edx, dword [rsi + r12 + 0x18]
call fcn.1800865e0
cmp dword [rsi + r12 + 0x18], 1
jne 0x1800cd8d1
mov eax, 1
jmp 0x1800cd8da
mov eax, dword [rsi + r12 + 4]
lea eax, [rax + rax*2 - 2]
test eax, eax
movsxd rbx, eax
jle 0x1800cd92b
lea rdi, [rsi + r12 + 0x20]
nop
nop
nop
cmp dword [rsi + r12 + 0x18], 0
mov edx, dword [rdi - 4]
jne 0x1800cd90e
shl edx, 3
mov r8d, 1
mov rcx, rbp
call fcn.1800865e0
jmp 0x1800cd921
shl edx, 0xb
mov r8d, 2
mov rcx, rbp
add edx, dword [rdi]
call fcn.1800865e0
add rdi, 8
sub rbx, 1
jne 0x1800cd8f0
mov rcx, r13
call fcn.1800865a0
mov edx, r14d
mov rcx, r13
mov edi, eax
sub edi, r14d
call fcn.1800865b0
mov r8d, 2
mov edx, edi
mov rcx, r13
call fcn.1800865e0
lea edx, [rdi + r14]
mov rcx, r13
call fcn.1800865b0
mov rax, qword [rsp + 0xe0]
mov r12, qword [rsp + 0xd0]
add r15d, 1
add rsi, 0x434
cmp r15d, dword [rax + 0x10]
jl 0x1800cd6b0
mov ebp, dword [rsp + 0x30]
mov r14, qword [rsp + 0x50]
mov r13d, dword [rsp + 0x34]
mov rax, qword [r14 + 0x88]
mov rbx, qword [rsp + 0x40]
cmp dword [rbx + rax + 0x1a4], 0
je 0x1800cd9be
mov rcx, r12
call fcn.1800ca110
jmp 0x1800cd9be
mov rbx, qword [rsp + 0x40]
jmp 0x1800cd9be
mov rbx, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x68]
mov rcx, r12
mov rdx, rsi
call fcn.1800ca9d0
add dword [r12 + 0x14], 1
add r13d, 1
cmp r13d, ebp
mov dword [rsp + 0x34], r13d
jl 0x1800cd5b0
mov r9, qword [rsp + 0x58]
mov eax, dword [rsp + 0x38]
mov r13, qword [rsp + 0x70]
add r9, 0x94
add eax, 1
mov qword [rsp + 0x58], r9
cmp eax, dword [rbx + r13 + 0x1a4]
mov dword [rsp + 0x38], eax
jle 0x1800cd4d0
mov r15, qword [rsp + 0xe0]
mov rbp, qword [rsp + 0x60]
test rbp, rbp
je 0x1800cda58
cmp dword [rbp], 0
je 0x1800cda58
mov rcx, qword [rsp + 0xd8]
call fcn.1800865a0
mov ecx, dword [r12 + 0x38]
lea edx, [rax + rcx - 1]
movsxd rax, dword [r12 + 0xc]
lea rcx, [rax + rax*8]
mov rax, qword [rbp + 0x50]
shl rcx, 6
mov dword [rcx + rax + 0x14], edx
mov eax, dword [r14 + 0x50]
mov edi, dword [rsp + 0x48]
add rbx, 0x15e8
mov qword [rsp + 0x40], rbx
imul eax, dword [r14 + 0x54]
cmp edi, eax
jl 0x1800cd3f1
mov rcx, rsi
call fcn.180122f10
mov rcx, rsi
call fcn.1801224c0
mov rcx, qword [r12 + 0x70]
mov edx, 0xffd9
mov r8d, 2
call fcn.1800865e0
test rbp, rbp
mov r15, qword [rsp + 0x88]
mov r14, qword [rsp + 0x90]
mov r13, qword [rsp + 0x98]
mov rsi, qword [rsp + 0xa0]
mov rbx, qword [rsp + 0xa8]
je 0x1800cdb17
cmp dword [rbp], 0
je 0x1800cdb17
mov rdi, qword [rsp + 0xe8]
mov rdx, qword [rsp + 0xd8]
mov r8, rbp
mov r9, rdi
mov rcx, r12
call fcn.1800cbd60
test eax, eax
jne 0x1800cdb17
mov rcx, qword [r12]
lea r8, str.failed_to_create_index_file__s_n
lea edx, [rax + 1]
mov r9, rdi
call fcn.1800866f0
xor eax, eax
add rsp, 0xb0
pop r12
pop rdi
pop rbp
ret
mov eax, 1
add rsp, 0xb0
pop r12
pop rdi
pop rbp
ret
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push r12
push r13
push r14
sub rsp, 0x20
mov r13, rcx
mov rcx, rdx
mov rsi, r9
mov rbp, r8
mov r12, rdx
call fcn.1800865a0
mov edx, 4
mov rcx, r12
mov edi, eax
call fcn.1800866c0
mov edx, 0x6a502020
mov r8d, 4
mov rcx, r12
call fcn.1800865e0
mov edx, 0xd0a870a
mov r8d, 4
mov rcx, r12
call fcn.1800865e0
mov rcx, r12
call fcn.1800865a0
mov edx, edi
mov rcx, r12
mov ebx, eax
sub ebx, edi
call fcn.1800865b0
mov r8d, 4
mov edx, ebx
mov rcx, r12
call fcn.1800865e0
lea edx, [rbx + rdi]
mov rcx, r12
call fcn.1800865b0
mov rdx, r12
mov rcx, r13
call fcn.1800ce520
mov rdx, r12
mov rcx, r13
call fcn.1800ce130
mov r14, qword [r13 + 8]
mov rcx, r12
call fcn.1800865a0
mov edx, 4
mov rcx, r12
mov edi, eax
call fcn.1800866c0
mov edx, 0x6a703263
mov r8d, 4
mov rcx, r12
call fcn.1800865e0
mov rcx, r12
call fcn.1800865a0
mov r9, rsi
mov r8, rbp
mov rdx, r12
mov rcx, r14
mov ebx, eax
call 0x1800cce40
test eax, eax
jne 0x1800cef0f
mov rcx, qword [r14]
lea r8, str.Failed_to_encode_image_n
lea edx, [rax + 1]
call fcn.1800866f0
jmp 0x1800cef4d
mov rcx, r12
call fcn.1800865a0
mov dword [r13 + 0x58], ebx
mov edx, edi
sub eax, ebx
mov rcx, r12
lea ebx, [rax + 8]
mov dword [r13 + 0x5c], eax
call fcn.1800865b0
mov r8d, 4
mov edx, ebx
mov rcx, r12
call fcn.1800865e0
lea edx, [rbx + rdi]
mov rcx, r12
call fcn.1800865b0
test ebx, ebx
jne 0x1800cef66
mov rcx, qword [r13]
lea r8, str.Failed_to_encode_image_n
mov edx, 1
call fcn.1800866f0
xor eax, eax
jmp 0x1800cef6b
mov eax, 1
mov rbx, qword [rsp + 0x40]
mov rbp, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x58]
add rsp, 0x20
pop r14
pop r13
pop r12
ret