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

Disassembly:
mov qword [rsp + 0x20], r9
mov dword [rsp + 0x18], r8d
mov dword [rsp + 0x10], edx
push rbp
push rbx
push rdi
push r14
lea rbp, [rsp - 0x3f]
sub rsp, 0xb8
cmp dword [rcx + 0xc], 0
mov r14d, r8d
mov ebx, edx
mov rdi, rcx
jne 0x14006f03f
mov eax, 1
add rsp, 0xb8
pop r14
pop rdi
pop rbx
pop rbp
ret
mov qword [rsp + 0xb0], rsi
call fcn.1400678a0
xor esi, esi
test r14d, r14d
je 0x14006f103
mov eax, dword [rdi + 0x10]
bt eax, 0xc
jae 0x14006f07d
btr eax, 0xc
mov rcx, rdi
mov dword [rdi + 0x10], eax
call qword [rdi + 0x370]
test eax, eax
jne 0x14006f07d
lea r8, str.Error_post_encoding_before_directory_write
jmp 0x14006f0a8
mov rcx, rdi
call qword [rdi + 0x3a8]
cmp qword [rdi + 0x410], rsi
jle 0x14006f0c2
test byte [rdi + 0x10], 0x40
je 0x14006f0c2
mov rcx, rdi
call fcn.14006d4d0
test eax, eax
jne 0x14006f0c2
lea r8, str.Error_flushing_data_before_directory_write
mov rcx, qword [rdi + 0x438]
lea rdx, str.TIFFWriteDirectorySec
call fcn.14005be80
xor eax, eax
jmp 0x14007085c
test dword [rdi + 0x10], 0x200
je 0x14006f0ff
mov rcx, qword [rdi + 0x3e8]
test rcx, rcx
je 0x14006f0ff
call sub.msvcrt.dll_free
mov qword [rdi + 0x3e8], rsi
mov qword [rdi + 0x410], rsi
mov qword [rdi + 0x3f0], rsi
mov qword [rdi + 0x3f8], rsi
mov qword [rdi + 0x400], rsi
and dword [rdi + 0x10], 0xffffffaf
mov qword [rsp + 0xa8], r12
mov r12d, 1
mov qword [rsp + 0xa0], r13
mov qword [rsp + 0x98], r15
mov r13, rsi
mov dword [rbp - 0x19], esi
lea r15d, [r12 + 1]
lea r14d, [r12 + 3]
lea r11d, [r12 + 5]
lea r10d, [r12 + 6]
lea r9, [0x140000000]
mov dword [rbp - 0x39], esi
test ebx, ebx
je 0x14006fff7
test byte [rdi + 0x38], 2
je 0x14006f295
mov eax, dword [rdi + 0x48]
test r13, r13
jne 0x14006f16c
mov dword [rbp - 0x39], r12d
lea ebx, [r13 + 3]
jmp 0x14006f207
cmp eax, 0xffff
ja 0x14006f1ba
test byte [rdi + 0x10], 0x80
mov word [rbp + 0x67], ax
je 0x14006f186
lea rcx, [rbp + 0x67]
call fcn.14005d4d0
lea rax, [rbp + 0x67]
lea rdx, [rbp - 0x39]
mov ebx, 3
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x30], r15d
mov r9d, 0x100
mov r8, r13
mov rcx, rdi
mov dword [rsp + 0x28], r12d
mov word [rsp + 0x20], bx
call fcn.140071ca0
jmp 0x14006f1ff
test byte [rdi + 0x10], 0x80
mov dword [rbp - 0x35], eax
je 0x14006f1cc
lea rcx, [rbp - 0x35]
call fcn.14005d470
lea rax, [rbp - 0x35]
lea rdx, [rbp - 0x39]
mov r9d, 0x100
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x30], r14d
mov r8, r13
mov rcx, rdi
mov dword [rsp + 0x28], r12d
mov word [rsp + 0x20], r14w
call fcn.140071ca0
mov ebx, 3
test eax, eax
je 0x1400705fd
mov eax, dword [rdi + 0x4c]
test r13, r13
jne 0x14006f217
inc dword [rbp - 0x39]
jmp 0x14006f29a
cmp eax, 0xffff
ja 0x14006f24b
test byte [rdi + 0x10], 0x80
mov word [rbp - 0x25], ax
je 0x14006f231
lea rcx, [rbp - 0x25]
call fcn.14005d4d0
lea rax, [rbp - 0x25]
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x30], r15d
mov dword [rsp + 0x28], r12d
mov word [rsp + 0x20], bx
jmp 0x14006f276
test byte [rdi + 0x10], 0x80
mov dword [rbp - 0x35], eax
je 0x14006f25d
lea rcx, [rbp - 0x35]
call fcn.14005d470
lea rax, [rbp - 0x35]
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x30], r14d
mov dword [rsp + 0x28], r12d
mov word [rsp + 0x20], r14w
lea rdx, [rbp - 0x39]
mov r9d, 0x101
mov r8, r13
mov rcx, rdi
call fcn.140071ca0
test eax, eax
je 0x1400705fd
jmp 0x14006f29a
mov ebx, 3
test byte [rdi + 0x38], 4
je 0x14006f3b6
mov eax, dword [rdi + 0x54]
test r13, r13
jne 0x14006f2b1
inc dword [rbp - 0x39]
jmp 0x14006f32d
cmp eax, 0xffff
ja 0x14006f2e5
test byte [rdi + 0x10], 0x80
mov word [rbp - 0x29], ax
je 0x14006f2cb
lea rcx, [rbp - 0x29]
call fcn.14005d4d0
lea rax, [rbp - 0x29]
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x30], r15d
mov dword [rsp + 0x28], r12d
mov word [rsp + 0x20], bx
jmp 0x14006f310
test byte [rdi + 0x10], 0x80
mov dword [rbp - 0x35], eax
je 0x14006f2f7
lea rcx, [rbp - 0x35]
call fcn.14005d470
lea rax, [rbp - 0x35]
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x30], r14d
mov dword [rsp + 0x28], r12d
mov word [rsp + 0x20], r14w
lea rdx, [rbp - 0x39]
mov r9d, 0x142
mov r8, r13
mov rcx, rdi
call fcn.140071ca0
test eax, eax
je 0x1400705fd
mov eax, dword [rdi + 0x58]
test r13, r13
jne 0x14006f33a
inc dword [rbp - 0x39]
jmp 0x14006f3b6
cmp eax, 0xffff
ja 0x14006f36e
test byte [rdi + 0x10], 0x80
mov word [rbp - 0x31], ax
je 0x14006f354
lea rcx, [rbp - 0x31]
call fcn.14005d4d0
lea rax, [rbp - 0x31]
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x30], r15d
mov dword [rsp + 0x28], r12d
mov word [rsp + 0x20], bx
jmp 0x14006f399
test byte [rdi + 0x10], 0x80
mov dword [rbp - 0x35], eax
je 0x14006f380
lea rcx, [rbp - 0x35]
call fcn.14005d470
lea rax, [rbp - 0x35]
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x30], r14d
mov dword [rsp + 0x28], r12d
mov word [rsp + 0x20], r14w
lea rdx, [rbp - 0x39]
mov r9d, 0x143
mov r8, r13
mov rcx, rdi
call fcn.140071ca0
test eax, eax
je 0x1400705fd
test byte [rdi + 0x38], 8
je 0x14006f42c
movss xmm0, dword [rdi + 0x90]
cvtps2pd xmm0, xmm0
test r13, r13
jne 0x14006f3d1
inc dword [rbp - 0x39]
jmp 0x14006f3f4
lea rdx, [rbp - 0x39]
mov r9d, 0x11a
mov r8, r13
mov rcx, rdi
movsd qword [rsp + 0x20], xmm0
call fcn.140070dc0
test eax, eax
je 0x1400705fd
movss xmm0, dword [rdi + 0x94]
cvtps2pd xmm0, xmm0
test r13, r13
jne 0x14006f409
inc dword [rbp - 0x39]
jmp 0x14006f42c
lea rdx, [rbp - 0x39]
mov r9d, 0x11b
mov r8, r13
mov rcx, rdi
movsd qword [rsp + 0x20], xmm0
call fcn.140070dc0
test eax, eax
je 0x1400705fd
test byte [rdi + 0x38], 0x10
je 0x14006f4a2
movss xmm0, dword [rdi + 0x9c]
cvtps2pd xmm0, xmm0
test r13, r13
jne 0x14006f447
inc dword [rbp - 0x39]
jmp 0x14006f46a
lea rdx, [rbp - 0x39]
mov r9d, 0x11e
mov r8, r13
mov rcx, rdi
movsd qword [rsp + 0x20], xmm0
call fcn.140070dc0
test eax, eax
je 0x1400705fd
movss xmm0, dword [rdi + 0xa0]
cvtps2pd xmm0, xmm0
test r13, r13
jne 0x14006f47f
inc dword [rbp - 0x39]
jmp 0x14006f4a2
lea rdx, [rbp - 0x39]
mov r9d, 0x11f
mov r8, r13
mov rcx, rdi
movsd qword [rsp + 0x20], xmm0
call fcn.140070dc0
test eax, eax
je 0x1400705fd
test byte [rdi + 0x38], 0x20
je 0x14006f4fd
test r13, r13
jne 0x14006f4b2
inc dword [rbp - 0x39]
jmp 0x14006f4fd
test byte [rdi + 0x10], 0x80
mov eax, dword [rdi + 0x60]
mov dword [rbp - 0x35], eax
je 0x14006f4c7
lea rcx, [rbp - 0x35]
call fcn.14005d470
lea rax, [rbp - 0x35]
lea rdx, [rbp - 0x39]
mov r9d, 0xfe
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x30], r14d
mov r8, r13
mov rcx, rdi
mov dword [rsp + 0x28], r12d
mov word [rsp + 0x20], r14w
call fcn.140071ca0
test eax, eax
je 0x1400705fd
test byte [rdi + 0x38], 0x40
je 0x14006f529
movzx eax, word [rdi + 0x64]
lea rdx, [rbp - 0x39]
mov r9d, 0x102
mov r8, r13
mov rcx, rdi
mov word [rsp + 0x20], ax
call fcn.140072e60
test eax, eax
je 0x1400705fd
test byte [rdi + 0x38], 0x80
je 0x14006f537
test r13, r13
jne 0x14006f556
inc dword [rbp - 0x39]
mov ebx, 3
test dword [rdi + 0x38], 0x100
je 0x14006f5f5
test r13, r13
jne 0x14006f5a9
inc dword [rbp - 0x39]
jmp 0x14006f5f5
test byte [rdi + 0x10], 0x80
movzx eax, word [rdi + 0x68]
mov word [rbp - 0x35], ax
je 0x14006f56d
lea rcx, [rbp - 0x35]
call fcn.14005d4d0
lea rax, [rbp - 0x35]
lea rdx, [rbp - 0x39]
mov ebx, 3
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x30], r15d
mov r9d, 0x103
mov r8, r13
mov rcx, rdi
mov dword [rsp + 0x28], r12d
mov word [rsp + 0x20], bx
call fcn.140071ca0
test eax, eax
je 0x1400705fd
jmp 0x14006f53c
test byte [rdi + 0x10], 0x80
movzx eax, word [rdi + 0x6a]
mov word [rbp - 0x35], ax
je 0x14006f5c0
lea rcx, [rbp - 0x35]
call fcn.14005d4d0
lea rax, [rbp - 0x35]
lea rdx, [rbp - 0x39]
mov r9d, 0x106
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x30], r15d
mov r8, r13
mov rcx, rdi
mov dword [rsp + 0x28], r12d
mov word [rsp + 0x20], bx
call fcn.140071ca0
test eax, eax
je 0x1400705fd
test dword [rdi + 0x38], 0x200
je 0x14006f654
test r13, r13
jne 0x14006f608
inc dword [rbp - 0x39]
jmp 0x14006f654
test byte [rdi + 0x10], 0x80
movzx eax, word [rdi + 0x6c]
mov word [rbp - 0x35], ax
je 0x14006f61f
lea rcx, [rbp - 0x35]
call fcn.14005d4d0
lea rax, [rbp - 0x35]
lea rdx, [rbp - 0x39]
mov r9d, 0x107
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x30], r15d
mov r8, r13
mov rcx, rdi
mov dword [rsp + 0x28], r12d
mov word [rsp + 0x20], bx
call fcn.140071ca0
test eax, eax
je 0x1400705fd
test dword [rdi + 0x38], 0x400
je 0x14006f6b3
test r13, r13
jne 0x14006f667
inc dword [rbp - 0x39]
jmp 0x14006f6b3
test byte [rdi + 0x10], 0x80
movzx eax, word [rdi + 0x6e]
mov word [rbp - 0x35], ax
je 0x14006f67e
lea rcx, [rbp - 0x35]
call fcn.14005d4d0
lea rax, [rbp - 0x35]
lea rdx, [rbp - 0x39]
mov r9d, 0x10a
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x30], r15d
mov r8, r13
mov rcx, rdi
mov dword [rsp + 0x28], r12d
mov word [rsp + 0x20], bx
call fcn.140071ca0
test eax, eax
je 0x1400705fd
test dword [rdi + 0x38], 0x8000
je 0x14006f712
test r13, r13
jne 0x14006f6c6
inc dword [rbp - 0x39]
jmp 0x14006f712
test byte [rdi + 0x10], 0x80
movzx eax, word [rdi + 0x70]
mov word [rbp - 0x35], ax
je 0x14006f6dd
lea rcx, [rbp - 0x35]
call fcn.14005d4d0
lea rax, [rbp - 0x35]
lea rdx, [rbp - 0x39]
mov r9d, 0x112
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x30], r15d
mov r8, r13
mov rcx, rdi
mov dword [rsp + 0x28], r12d
mov word [rsp + 0x20], bx
call fcn.140071ca0
test eax, eax
je 0x1400705fd
test dword [rdi + 0x38], 0x10000
je 0x14006f771
test r13, r13
jne 0x14006f725
inc dword [rbp - 0x39]
jmp 0x14006f771
test byte [rdi + 0x10], 0x80
movzx eax, word [rdi + 0x72]
mov word [rbp - 0x35], ax
je 0x14006f73c
lea rcx, [rbp - 0x35]
call fcn.14005d4d0
lea rax, [rbp - 0x35]
lea rdx, [rbp - 0x39]
mov r9d, 0x115
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x30], r15d
mov r8, r13
mov rcx, rdi
mov dword [rsp + 0x28], r12d
mov word [rsp + 0x20], bx
call fcn.140071ca0
test eax, eax
je 0x1400705fd
test dword [rdi + 0x38], 0x20000
je 0x14006f807
mov eax, dword [rdi + 0x74]
test r13, r13
jne 0x14006f78b
inc dword [rbp - 0x39]
jmp 0x14006f807
cmp eax, 0xffff
ja 0x14006f7bf
test byte [rdi + 0x10], 0x80
mov word [rbp - 0x2d], ax
je 0x14006f7a5
lea rcx, [rbp - 0x2d]
call fcn.14005d4d0
lea rax, [rbp - 0x2d]
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x30], r15d
mov dword [rsp + 0x28], r12d
mov word [rsp + 0x20], bx
jmp 0x14006f7ea
test byte [rdi + 0x10], 0x80
mov dword [rbp - 0x35], eax
je 0x14006f7d1
lea rcx, [rbp - 0x35]
call fcn.14005d470
lea rax, [rbp - 0x35]
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x30], r14d
mov dword [rsp + 0x28], r12d
mov word [rsp + 0x20], r14w
lea rdx, [rbp - 0x39]
mov r9d, 0x116
mov r8, r13
mov rcx, rdi
call fcn.140071ca0
test eax, eax
je 0x1400705fd
test dword [rdi + 0x38], 0x40000
je 0x14006f836
movzx eax, word [rdi + 0x78]
lea rdx, [rbp - 0x39]
mov r9d, 0x118
mov r8, r13
mov rcx, rdi
mov word [rsp + 0x20], ax
call fcn.140072e60
test eax, eax
je 0x1400705fd
test dword [rdi + 0x38], 0x80000
je 0x14006f865
movzx eax, word [rdi + 0x7a]
lea rdx, [rbp - 0x39]
mov r9d, 0x119
mov r8, r13
mov rcx, rdi
mov word [rsp + 0x20], ax
call fcn.140072e60
test eax, eax
je 0x1400705fd
test dword [rdi + 0x38], 0x100000
je 0x14006f8c7
test r13, r13
jne 0x14006f878
inc dword [rbp - 0x39]
jmp 0x14006f8c7
test byte [rdi + 0x10], 0x80
movzx eax, word [rdi + 0x9a]
mov word [rbp - 0x35], ax
je 0x14006f892
lea rcx, [rbp - 0x35]
call fcn.14005d4d0
lea rax, [rbp - 0x35]
lea rdx, [rbp - 0x39]
mov r9d, 0x11c
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x30], r15d
mov r8, r13
mov rcx, rdi
mov dword [rsp + 0x28], r12d
mov word [rsp + 0x20], bx
call fcn.140071ca0
test eax, eax
je 0x1400705fd
test dword [rdi + 0x38], 0x400000
je 0x14006f929
test r13, r13
jne 0x14006f8da
inc dword [rbp - 0x39]
jmp 0x14006f929
test byte [rdi + 0x10], 0x80
movzx eax, word [rdi + 0x98]
mov word [rbp - 0x35], ax
je 0x14006f8f4
lea rcx, [rbp - 0x35]
call fcn.14005d4d0
lea rax, [rbp - 0x35]
lea rdx, [rbp - 0x39]
mov r9d, 0x128
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x30], r15d
mov r8, r13
mov rcx, rdi
mov dword [rsp + 0x28], r12d
mov word [rsp + 0x20], bx
call fcn.140071ca0
test eax, eax
je 0x1400705fd
test dword [rdi + 0x38], 0x800000
je 0x14006f98a
lea rbx, [rdi + 0xa4]
test r13, r13
jne 0x14006f943
inc dword [rbp - 0x39]
jmp 0x14006f98a
test byte [rdi + 0x10], 0x80
je 0x14006f954
mov rdx, r15
mov rcx, rbx
call fcn.14005d410
mov qword [rsp + 0x38], rbx
mov dword [rsp + 0x30], r14d
lea rdx, [rbp - 0x39]
mov ebx, 3
mov r9d, 0x129
mov r8, r13
mov rcx, rdi
mov dword [rsp + 0x28], r15d
mov word [rsp + 0x20], bx
call fcn.140071ca0
test eax, eax
je 0x1400705fd
test dword [rdi + 0x38], 0x1000000
je 0x14006f9d5
test dword [rdi + 0x10], 0x400
mov rax, qword [rdi + 0xe0]
mov r8, r13
mov qword [rsp + 0x28], rax
mov eax, dword [rdi + 0xd4]
lea rdx, [rbp - 0x39]
mov rcx, rdi
mov r9d, 0x117
mov dword [rsp + 0x20], eax
je 0x14006f9c8
mov r9d, 0x145
call fcn.140072090
test eax, eax
je 0x1400705fd
test dword [rdi + 0x38], 0x2000000
je 0x14006fa27
test dword [rdi + 0x10], 0x400
mov rax, qword [rdi + 0xd8]
jne 0x14006f9fb
test rax, rax
je 0x14006fa27
mov r9d, 0x111
jmp 0x14006fa01
mov r9d, 0x144
mov qword [rsp + 0x28], rax
mov eax, dword [rdi + 0xd4]
lea rdx, [rbp - 0x39]
mov r8, r13
mov rcx, rdi
mov dword [rsp + 0x20], eax
call fcn.140072090
test eax, eax
je 0x1400705fd
test dword [rdi + 0x38], 0x4000000
je 0x14006fa47
lea rdx, [rbp - 0x39]
mov r8, r13
mov rcx, rdi
call fcn.140071b90
test eax, eax
je 0x1400705fd
test dword [rdi + 0x38], 0x80000000
je 0x14006facb
cmp word [rdi + 0xc4], 0
je 0x14006facb
lea r9, [rbp - 1]
lea r8, [rbp - 0x1d]
mov edx, 0x152
mov rcx, rdi
call fcn.14005d7e0
mov rsi, qword [rbp - 1]
movzx ebx, word [rbp - 0x1d]
test r13, r13
jne 0x14006fa81
inc dword [rbp - 0x39]
jmp 0x14006fac9
test byte [rdi + 0x10], 0x80
je 0x14006fa92
mov rdx, rbx
mov rcx, rsi
call fcn.14005d410
lea eax, [rbx + rbx]
mov qword [rsp + 0x38], rsi
lea rdx, [rbp - 0x39]
mov dword [rsp + 0x30], eax
mov eax, 3
mov r9d, 0x152
mov r8, r13
mov rcx, rdi
mov dword [rsp + 0x28], ebx
mov word [rsp + 0x20], ax
call fcn.140071ca0
test eax, eax
je 0x1400705fd
xor esi, esi
test byte [rdi + 0x3c], r12b
je 0x14006faf7
movzx eax, word [rdi + 0x66]
lea rdx, [rbp - 0x39]
mov r9d, 0x153
mov r8, r13
mov rcx, rdi
mov word [rsp + 0x20], ax
call fcn.140072e60
test eax, eax
je 0x1400705fd
test byte [rdi + 0x3c], 2
je 0x14006fb2e
movzx ecx, word [rdi + 0x72]
mov rax, qword [rdi + 0x80]
lea rdx, [rbp - 0x39]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], ecx
mov r9d, 0x154
mov rcx, rdi
mov r8, r13
call fcn.140072360
test eax, eax
je 0x1400705fd
test byte [rdi + 0x3c], 4
je 0x14006fb65
movzx ecx, word [rdi + 0x72]
mov rax, qword [rdi + 0x88]
lea rdx, [rbp - 0x39]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], ecx
mov r9d, 0x155
mov rcx, rdi
mov r8, r13
call fcn.140072360
test eax, eax
je 0x1400705fd
test byte [rdi + 0x3c], 8
je 0x14006fbc0
test r13, r13
jne 0x14006fb75
inc dword [rbp - 0x39]
jmp 0x14006fbc0
test byte [rdi + 0x10], 0x80
mov eax, dword [rdi + 0x50]
mov dword [rbp - 0x35], eax
je 0x14006fb8a
lea rcx, [rbp - 0x35]
call fcn.14005d470
lea rax, [rbp - 0x35]
lea rdx, [rbp - 0x39]
mov r9d, 0x80e5
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x30], r14d
mov r8, r13
mov rcx, rdi
mov dword [rsp + 0x28], r12d
mov word [rsp + 0x20], r14w
call fcn.140071ca0
test eax, eax
je 0x1400705fd
test byte [rdi + 0x3c], 0x10
je 0x14006fc1b
test r13, r13
jne 0x14006fbd0
inc dword [rbp - 0x39]
jmp 0x14006fc1b
test byte [rdi + 0x10], 0x80
mov eax, dword [rdi + 0x5c]
mov dword [rbp - 0x35], eax
je 0x14006fbe5
lea rcx, [rbp - 0x35]
call fcn.14005d470
lea rax, [rbp - 0x35]
lea rdx, [rbp - 0x39]
mov r9d, 0x80e6
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x30], r14d
mov r8, r13
mov rcx, rdi
mov dword [rsp + 0x28], r12d
mov word [rsp + 0x20], r14w
call fcn.140071ca0
test eax, eax
je 0x1400705fd
test byte [rdi + 0x3c], 0x20
je 0x14006fc79
lea rbx, [rdi + 0xc0]
test r13, r13
jne 0x14006fc32
inc dword [rbp - 0x39]
jmp 0x14006fc79
test byte [rdi + 0x10], 0x80
je 0x14006fc43
mov rdx, r15
mov rcx, rbx
call fcn.14005d410
mov qword [rsp + 0x38], rbx
mov eax, 3
mov dword [rsp + 0x30], r14d
lea rdx, [rbp - 0x39]
mov r9d, 0x141
mov r8, r13
mov rcx, rdi
mov dword [rsp + 0x28], r15d
mov word [rsp + 0x20], ax
call fcn.140071ca0
test eax, eax
je 0x1400705fd
test byte [rdi + 0x3c], 0x80
je 0x14006fc8e
lea rbx, [rdi + 0x140]
test r13, r13
jne 0x14006fcad
inc dword [rbp - 0x39]
mov ebx, 3
test dword [rdi + 0x3c], 0x100
je 0x14006fd45
test r13, r13
jne 0x14006fcf6
inc dword [rbp - 0x39]
jmp 0x14006fd45
test byte [rdi + 0x10], 0x80
je 0x14006fcbe
mov rdx, r15
mov rcx, rbx
call fcn.14005d410
mov qword [rsp + 0x38], rbx
mov dword [rsp + 0x30], r14d
lea rdx, [rbp - 0x39]
mov ebx, 3
mov r9d, 0x212
mov r8, r13
mov rcx, rdi
mov dword [rsp + 0x28], r15d
mov word [rsp + 0x20], bx
call fcn.140071ca0
test eax, eax
je 0x1400705fd
jmp 0x14006fc93
test byte [rdi + 0x10], 0x80
movzx eax, word [rdi + 0x144]
mov word [rbp - 0x35], ax
je 0x14006fd10
lea rcx, [rbp - 0x35]
call fcn.14005d4d0
lea rax, [rbp - 0x35]
lea rdx, [rbp - 0x39]
mov r9d, 0x213
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x30], r15d
mov r8, r13
mov rcx, rdi
mov dword [rsp + 0x28], r12d
mov word [rsp + 0x20], bx
call fcn.140071ca0
test eax, eax
je 0x1400705fd
test dword [rdi + 0x3c], 0x200
je 0x14006fd89
mov rax, qword [rdi + 0x160]
test r13, r13
jne 0x14006fd5f
inc dword [rbp - 0x39]
jmp 0x14006fd89
mov qword [rsp + 0x28], rax
lea rdx, [rbp - 0x39]
mov r9d, 0x214
mov r8, r13
mov rcx, rdi
mov dword [rsp + 0x20], 6
call fcn.140070f20
test eax, eax
je 0x1400705fd
test dword [rdi + 0x3c], 0x1000
je 0x14006fda9
lea rdx, [rbp - 0x39]
mov r8, r13
mov rcx, rdi
call fcn.140073180
test eax, eax
je 0x1400705fd
test dword [rdi + 0x3c], 0x4000
je 0x14006fdf9
mov rcx, qword [rdi + 0x170]
mov eax, dword [rdi + 0x168]
test r13, r13
jne 0x14006fdc9
inc dword [rbp - 0x39]
jmp 0x14006fdf9
mov qword [rsp + 0x38], rcx
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x28], eax
lea rdx, [rbp - 0x39]
mov r9d, 0x14d
mov r8, r13
mov rcx, rdi
mov word [rsp + 0x20], r15w
call fcn.140071ca0
test eax, eax
je 0x1400705fd
test dword [rdi + 0x3c], 0x20000
je 0x14006fe19
lea rdx, [rbp - 0x39]
mov r8, r13
mov rcx, rdi
call fcn.140072ff0
test eax, eax
je 0x1400705fd
cmp qword [rdi + 0x478], 0
mov r14d, esi
jbe 0x14006ffe6
mov rcx, rsi
nop dword [rax]
mov rax, qword [rdi + 0x470]
mov rsi, qword [rax + rcx*8]
movzx edx, word [rsi + 0x18]
cmp dx, 0x42
jb 0x14006ffd1
movzx eax, dx
mov ecx, edx
shr rax, 5
and ecx, 0x1f
mov eax, dword [rdi + rax*4 + 0x38]
bt eax, ecx
jae 0x14006ffd1
mov ecx, dword [rsi + 0x14]
dec ecx
je 0x14006ff76
sub ecx, 3
je 0x14006ff1e
sub ecx, 2
je 0x14006fec6
cmp ecx, 0x22
jne 0x1400704e2
mov edx, dword [rsi]
lea r9, [rbp + 7]
lea r8, [rbp - 9]
mov rcx, rdi
call fcn.140050fb0
test r13, r13
jne 0x14006fea3
inc dword [rbp - 0x39]
jmp 0x14006ffd1
mov rax, qword [rbp + 7]
mov qword [rsp + 0x38], rax
mov eax, dword [rbp - 9]
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x28], eax
mov eax, 7
mov word [rsp + 0x20], ax
jmp 0x14006ffb6
mov edx, dword [rsi]
lea r8, [rbp - 0x11]
mov rcx, rdi
call fcn.140050fb0
movzx ebx, word [rsi]
test r13, r13
jne 0x14006fee4
inc dword [rbp - 0x39]
jmp 0x14006ffd1
test byte [rdi + 0x10], 0x80
mov eax, dword [rbp - 0x11]
mov dword [rbp - 0x35], eax
je 0x14006fef9
lea rcx, [rbp - 0x35]
call fcn.14005d470
lea rax, [rbp - 0x35]
movzx r9d, bx
mov qword [rsp + 0x38], rax
mov eax, 4
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x28], r12d
mov word [rsp + 0x20], ax
jmp 0x14006ffba
mov edx, dword [rsi]
lea r8, [rbp - 0x21]
mov rcx, rdi
call fcn.140050fb0
movzx ebx, word [rsi]
test r13, r13
jne 0x14006ff3c
inc dword [rbp - 0x39]
jmp 0x14006ffd1
test byte [rdi + 0x10], 0x80
movzx eax, word [rbp - 0x21]
mov word [rbp - 0x35], ax
je 0x14006ff53
lea rcx, [rbp - 0x35]
call fcn.14005d4d0
lea rax, [rbp - 0x35]
movzx r9d, bx
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x30], r15d
mov eax, 3
mov dword [rsp + 0x28], r12d
mov word [rsp + 0x20], ax
jmp 0x14006ffba
mov edx, dword [rsi]
lea r8, [rbp + 0xf]
mov rcx, rdi
call fcn.140050fb0
mov rcx, qword [rbp + 0xf]
or rax, 0xffffffffffffffff
nop dword [rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x14006ff90
test r13, r13
jne 0x14006ffa3
inc dword [rbp - 0x39]
jmp 0x14006ffd1
mov qword [rsp + 0x38], rcx
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x28], eax
mov word [rsp + 0x20], r15w
movzx r9d, word [rsi]
lea rdx, [rbp - 0x39]
mov r8, r13
mov rcx, rdi
call fcn.140071ca0
test eax, eax
je 0x1400705fd
inc r14d
mov ecx, r14d
cmp rcx, qword [rdi + 0x478]
jb 0x14006fe30
xor esi, esi
mov r11d, 6
lea r9, [0x140000000]
lea r10d, [r11 + 1]
cmp dword [rdi + 0x178], 0
mov r15d, esi
jbe 0x1400703ce
nop word [rax + rax]
mov r8, qword [rdi + 0x180]
mov eax, r15d
lea rdx, [rax + rax*2]
mov rax, qword [r8 + rdx*8]
mov esi, dword [r8 + rdx*8 + 8]
movzx r14d, word [rax]
mov eax, dword [rax + 8]
dec eax
cmp eax, 0x11
ja case.0x140070046.14
cdqe
mov ecx, dword [r9 + rax*4 + 0x70874]
add rcx, r9
jmp rcx
mov rax, qword [r8 + rdx*8 + 0x10]
test r13, r13
jne 0x14007005a
inc dword [rbp - 0x39]
jmp case.0x140070046.14
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x30], esi
mov eax, 2
mov dword [rsp + 0x28], esi
mov word [rsp + 0x20], ax
lea rdx, [rbp - 0x39]
movzx r9d, r14w
mov r8, r13
mov rcx, rdi
call fcn.140071ca0
jmp 0x1400703a3
mov rax, qword [r8 + rdx*8 + 0x10]
test r13, r13
jne 0x14007009b
inc dword [rbp - 0x39]
jmp case.0x140070046.14
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x30], esi
mov dword [rsp + 0x28], esi
mov word [rsp + 0x20], r10w
jmp 0x140070071
mov rax, qword [r8 + rdx*8 + 0x10]
test r13, r13
jne 0x1400700c2
inc dword [rbp - 0x39]
jmp case.0x140070046.14
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x30], esi
mov dword [rsp + 0x28], esi
mov word [rsp + 0x20], r12w
jmp 0x140070071
mov rax, qword [r8 + rdx*8 + 0x10]
test r13, r13
jne 0x1400700e9
inc dword [rbp - 0x39]
jmp case.0x140070046.14
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x30], esi
mov dword [rsp + 0x28], esi
mov word [rsp + 0x20], r11w
jmp 0x140070071
mov rbx, qword [r8 + rdx*8 + 0x10]
test r13, r13
jne 0x140070113
inc dword [rbp - 0x39]
jmp case.0x140070046.14
test byte [rdi + 0x10], 0x80
je 0x140070124
mov rdx, rsi
mov rcx, rbx
call fcn.14005d410
lea eax, [rsi + rsi]
mov qword [rsp + 0x38], rbx
mov dword [rsp + 0x30], eax
mov eax, 3
jmp 0x140070068
mov rbx, qword [r8 + rdx*8 + 0x10]
test r13, r13
jne 0x14007014c
inc dword [rbp - 0x39]
jmp case.0x140070046.14
test byte [rdi + 0x10], 0x80
je 0x14007015d
mov rdx, rsi
mov rcx, rbx
call fcn.14005d410
lea eax, [rsi + rsi]
mov qword [rsp + 0x38], rbx
mov dword [rsp + 0x30], eax
mov eax, 8
jmp 0x140070068
mov rbx, qword [r8 + rdx*8 + 0x10]
test r13, r13
jne 0x140070185
inc dword [rbp - 0x39]
jmp case.0x140070046.14
test byte [rdi + 0x10], 0x80
je 0x140070196
mov rdx, rsi
mov rcx, rbx
call fcn.14005d370
lea eax, [rsi*4]
mov qword [rsp + 0x38], rbx
mov dword [rsp + 0x30], eax
mov eax, 4
jmp 0x140070068
mov rbx, qword [r8 + rdx*8 + 0x10]
test r13, r13
jne 0x1400701c2
inc dword [rbp - 0x39]
jmp case.0x140070046.14
test byte [rdi + 0x10], 0x80
je 0x1400701d3
mov rdx, rsi
mov rcx, rbx
call fcn.14005d370
lea eax, [rsi*4]
mov qword [rsp + 0x38], rbx
mov dword [rsp + 0x30], eax
mov eax, 9
jmp 0x140070068
mov rax, qword [r8 + rdx*8 + 0x10]
test r13, r13
jne 0x1400701ff
inc dword [rbp - 0x39]
jmp case.0x140070046.14
mov qword [rsp + 0x28], rax
lea rdx, [rbp - 0x39]
movzx r9d, r14w
mov r8, r13
mov rcx, rdi
mov dword [rsp + 0x20], esi
call fcn.140070c70
jmp 0x1400703a3
mov rbx, qword [r8 + rdx*8 + 0x10]
test r13, r13
jne 0x140070232
inc dword [rbp - 0x39]
jmp case.0x140070046.14
mov eax, dword [rdi + 0x10]
bt eax, 0x13
jae 0x140070523
test al, al
jns 0x14007024e
mov rdx, rsi
mov rcx, rbx
call fcn.14005d3b0
lea eax, [rsi*8]
mov qword [rsp + 0x38], rbx
mov dword [rsp + 0x30], eax
mov eax, reloc.WS2_32.dll_recvfrom
jmp 0x140070068
mov rax, qword [r8 + rdx*8 + 0x10]
test r13, r13
jne 0x14007027a
inc dword [rbp - 0x39]
jmp case.0x140070046.14
mov qword [rsp + 0x28], rax
lea rdx, [rbp - 0x39]
movzx r9d, r14w
mov r8, r13
mov rcx, rdi
mov dword [rsp + 0x20], esi
call fcn.140070f20
jmp 0x1400703a3
mov rax, qword [r8 + rdx*8 + 0x10]
test r13, r13
jne 0x1400702ad
inc dword [rbp - 0x39]
jmp case.0x140070046.14
mov qword [rsp + 0x28], rax
lea rdx, [rbp - 0x39]
movzx r9d, r14w
mov r8, r13
mov rcx, rdi
mov dword [rsp + 0x20], esi
call fcn.140071590
jmp 0x1400703a3
mov rbx, qword [r8 + rdx*8 + 0x10]
test r13, r13
jne 0x1400702e0
inc dword [rbp - 0x39]
jmp case.0x140070046.14
test byte [rdi + 0x10], 0x80
je 0x1400702f1
mov rdx, rsi
mov rcx, rbx
call fcn.14005d330
lea eax, [rsi*4]
mov qword [rsp + 0x38], rbx
mov dword [rsp + 0x30], eax
mov eax, reloc.WS2_32.dll_inet_addr
jmp 0x140070068
mov rbx, qword [r8 + rdx*8 + 0x10]
test r13, r13
jne 0x14007031d
inc dword [rbp - 0x39]
jmp case.0x140070046.14
test byte [rdi + 0x10], 0x80
je 0x14007032e
mov rdx, rsi
mov rcx, rbx
call fcn.14005d2d0
lea eax, [rsi*8]
mov qword [rsp + 0x38], rbx
mov dword [rsp + 0x30], eax
mov eax, ntohs
jmp 0x140070068
mov rbx, qword [r8 + rdx*8 + 0x10]
test r13, r13
jne 0x140070357
inc dword [rbp - 0x39]
jmp case.0x140070046.14
test byte [rdi + 0x10], 0x80
je 0x140070368
mov rdx, rsi
mov rcx, rbx
call fcn.14005d370
lea eax, [rsi*4]
mov qword [rsp + 0x38], rbx
mov dword [rsp + 0x30], eax
mov eax, reloc.WS2_32.dll_listen
jmp 0x140070068
mov rax, qword [r8 + rdx*8 + 0x10]
lea rdx, [rbp - 0x39]
movzx r9d, r14w
mov qword [rsp + 0x28], rax
mov r8, r13
mov rcx, rdi
mov dword [rsp + 0x20], esi
call fcn.140071f00
test eax, eax
je 0x1400705fd
inc r15d
mov r10d, 7
lea r9, [0x140000000]
lea r11d, [r10 - 1]
cmp r15d, dword [rdi + 0x178]
jb 0x140070010
xor esi, esi
test r13, r13
jne 0x140070563
mov ecx, dword [rbp - 0x39]
shl rcx, 5
call fcn.1400504c0
mov r13, rax
test rax, rax
je 0x140070542
mov ebx, dword [rbp + 0x6f]
test ebx, ebx
je 0x14007043e
cmp qword [rdi + 0x18], 0
jne 0x14007040d
mov rcx, rdi
call fcn.14006e7e0
test eax, eax
je 0x1400705fd
mov r15d, 2
mov r14, qword [rbp + 0x7f]
test r14, r14
je 0x140070423
mov rax, qword [rdi + 0x18]
mov qword [r14], rax
mov edx, dword [rdi + 0x10]
mov eax, dword [rbp - 0x39]
and edx, 0x80000
jne 0x140070463
lea ecx, [rax + rax*2]
lea r9d, [rcx*4 + 6]
jmp 0x14007046e
mov rcx, qword [rdi + 0x438]
mov r15d, 2
xor edx, edx
mov r8d, r15d
call qword [rdi + 0x450]
inc rax
and rax, 0xfffffffffffffffe
mov qword [rdi + 0x18], rax
jmp 0x140070413
lea ecx, [rax + rax*4]
lea r9d, [rcx*4 + 0x10]
mov rcx, qword [rdi + 0x18]
mov dword [rbp - 0x19], r9d
mov r8d, r9d
lea rax, [r9 + rcx]
mov qword [rdi + 0x310], rax
test edx, edx
jne 0x140070491
mov eax, eax
mov qword [rdi + 0x310], rax
mov rax, qword [rdi + 0x310]
cmp rax, rcx
jb 0x140070536
cmp rax, r8
jb 0x140070536
test r12b, al
je 0x1400704b9
inc rax
mov qword [rdi + 0x310], rax
mov r14d, 4
lea r9, [0x140000000]
lea r10d, [r14 + 3]
lea r11d, [r14 + 2]
test ebx, ebx
je 0x14006f142
inc word [rdi + 0x300]
jmp 0x14006f13b
mov rax, qword [rsi + 0x20]
lea rbx, str.unknown
mov rcx, rsi
test rax, rax
cmovne rbx, rax
call fcn.14005bf80
mov rcx, qword [rdi + 0x438]
lea r8, str.Cannot_write_tag__d___s_
lea rdx, str.TIFFWriteDirectorySec
mov r9d, eax
mov qword [rsp + 0x20], rbx
call fcn.14005be80
jmp 0x1400705fd
lea r8, str.SLONG8_not_allowed_for_ClassicTIFF
lea rdx, str.TIFFWriteDirectoryTagCheckedSlong8Array
jmp 0x1400705f1
lea r8, str.Maximum_TIFF_file_size_exceeded
jmp 0x1400705ea
mov rcx, qword [rdi + 0x438]
lea r8, str.Out_of_memory
lea rdx, str.TIFFWriteDirectorySec
call fcn.14005be80
xor eax, eax
jmp 0x140070844
cmp dword [rbp + 0x6f], 0
je 0x1400705ca
test dword [rdi + 0x3c], 0x20000
je 0x1400705ca
cmp qword [rdi + 0x320], 0
jne 0x1400705ca
cmp dword [rbp - 0x39], 0
mov rax, r13
je 0x1400705a0
mov ecx, 0x14a
nop word [rax + rax]
cmp word [rax], cx
je 0x1400705a9
inc esi
add rax, 0x20
cmp esi, dword [rbp - 0x39]
jne 0x140070590
lea r8, str.Cannot_find_SubIFD_tag
jmp 0x1400705ea
test dword [rdi + 0x10], 0x80000
mov rax, qword [rdi + 0x18]
jne 0x140070615
lea ecx, [rsi + rsi*2]
shl ecx, 2
add rax, 0xa
add rcx, rax
mov qword [rdi + 0x320], rcx
mov eax, dword [rbp - 0x19]
mov ecx, eax
mov r12d, eax
mov qword [rbp - 0x11], rax
call fcn.1400504c0
mov r14, rax
test rax, rax
jne 0x140070621
lea r8, str.Out_of_memory
lea rdx, str.TIFFWriteDirectorySec
mov rcx, qword [rdi + 0x438]
call fcn.14005be80
test r13, r13
je 0x14007080d
mov rcx, r13
call sub.msvcrt.dll_free
xor eax, eax
jmp 0x140070844
lea ecx, [rsi + rsi*4]
shl ecx, 2
add rax, 0x14
jmp 0x1400705c0
test dword [rdi + 0x10], 0x80000
jne 0x1400706fd
movzx eax, word [rbp - 0x39]
mov word [r14], ax
test byte [rdi + 0x10], 0x80
je 0x140070644
mov rcx, r14
call fcn.14005d4d0
mov eax, dword [rbp - 0x39]
lea rbx, [r14 + 2]
test eax, eax
je 0x1400706d1
lea rsi, [r13 + 8]
mov r15d, eax
mov r12d, 4
movzx eax, word [rsi - 8]
mov word [rbx], ax
test byte [rdi + 0x10], 0x80
je 0x140070675
mov rcx, rbx
call fcn.14005d4d0
movzx eax, word [rsi - 6]
mov word [rbx + 2], ax
test byte [rdi + 0x10], 0x80
je 0x14007068c
lea rcx, [rbx + 2]
call fcn.14005d4d0
mov eax, dword [rsi]
lea rdx, [rbp + 0x67]
lea rcx, [rbx + 4]
mov r8, r12
mov dword [rbp + 0x67], eax
call fcn.1400504e0
test byte [rdi + 0x10], 0x80
je 0x1400706b0
lea rcx, [rbx + 4]
call fcn.14005d470
lea rdx, [rsi + 8]
lea rcx, [rbx + 8]
mov r8, r12
call fcn.1400504e0
add rbx, 0xc
add rsi, 0x20
dec r15
jne 0x140070660
mov r12, qword [rbp - 0x11]
test byte [rdi + 0x10], 0x80
mov eax, dword [rdi + 0x20]
mov dword [rbp + 0x67], eax
je 0x1400706e6
lea rcx, [rbp + 0x67]
call fcn.14005d470
lea rdx, [rbp + 0x67]
mov r8d, 4
mov rcx, rbx
call fcn.1400504e0
jmp 0x1400707bb
mov r15d, dword [rbp - 0x39]
mov qword [rax], r15
test byte [rdi + 0x10], 0x80
je 0x140070712
mov rcx, rax
call fcn.14005d490
cmp dword [rbp - 0x39], 0
lea rbx, [r14 + 8]
jbe 0x14007079b
lea rsi, [r13 + 8]
mov r12d, 8
nop word [rax + rax]
movzx eax, word [rsi - 8]
mov word [rbx], ax
test byte [rdi + 0x10], 0x80
je 0x140070745
mov rcx, rbx
call fcn.14005d4d0
movzx eax, word [rsi - 6]
mov word [rbx + 2], ax
test byte [rdi + 0x10], 0x80
je 0x14007075c
lea rcx, [rbx + 2]
call fcn.14005d4d0
lea rcx, [rbx + 4]
mov r8, r12
mov rdx, rsi
call fcn.1400504e0
test byte [rdi + 0x10], 0x80
je 0x14007077a
lea rcx, [rbx + 4]
call fcn.14005d490
lea rdx, [rsi + 8]
lea rcx, [rbx + 0xc]
mov r8, r12
call fcn.1400504e0
add rbx, 0x14
add rsi, 0x20
dec r15
jne 0x140070730
mov r12, qword [rbp - 0x11]
lea rdx, [rdi + 0x20]
mov r8d, 8
mov rcx, rbx
call fcn.1400504e0
test byte [rdi + 0x10], 0x80
je 0x1400707bb
mov rcx, rbx
call fcn.14005d490
mov rcx, r13
call sub.msvcrt.dll_free
mov rdx, qword [rdi + 0x18]
mov rcx, rdi
call fcn.14005ded0
mov rcx, qword [rdi + 0x438]
test eax, eax
je 0x1400707f2
mov r8, r12
mov rdx, r14
call qword [rdi + 0x448]
cmp rax, r12
je 0x140070811
mov rcx, qword [rdi + 0x438]
lea r8, str.IO_error_writing_directory
lea rdx, str.TIFFWriteDirectorySec
call fcn.14005be80
mov rcx, r14
call sub.msvcrt.dll_free
xor eax, eax
jmp 0x140070844
mov rcx, r14
call sub.msvcrt.dll_free
cmp dword [rbp + 0x77], 0
je 0x14007083f
mov rcx, rdi
call fcn.140050db0
and dword [rdi + 0x10], 0xffdffff7
mov rcx, rdi
call qword [rdi + 0x3b8]
mov rcx, rdi
call fcn.140050bb0
mov eax, 1
mov r13, qword [rsp + 0xa0]
mov r12, qword [rsp + 0xa8]
mov r15, qword [rsp + 0x98]
mov rsi, qword [rsp + 0xb0]
add rsp, 0xb8
pop r14
pop rdi
pop rbx
pop rbp
ret