Function at 0x1400fee30
Capabilities:
Check for software breakpoints

Disassembly:
mov dword [rsp + 0x10], edx
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x38]
sub rsp, 0x138
mov rbx, rcx
xor r15d, r15d
add rcx, 0x30
mov qword [rsp + 0x58], rcx
mov rax, qword [rcx]
call qword [rax + 0x70]
lea rcx, [rbx + 8]
call fcn.1400feda0
mov r13d, eax
mov dword [rsp + 0x50], eax
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x40], xmm0
mov edi, r15d
mov qword [rsp + 0x38], r15
mov rsi, qword [rbx + 0x20]
cmp qword [rbx + 0x18], r15
je 0x1400feeec
cmp qword [rbx + 0x28], r15
jle 0x1400feeec
test rsi, rsi
jle 0x1400feeec
mov byte [rsp + 0x20], 1
xor r9d, r9d
xor r8d, r8d
mov rdx, rsi
lea rcx, [rsp + 0x38]
call fcn.1400561b0
mov rdi, qword [rsp + 0x38]
test rdi, rdi
je 0x1400feeec
mov r12, qword [rsp + 0x48]
test r12, r12
jle 0x1400feef1
mov rdx, qword [rbx + 0x18]
test rdx, rdx
je 0x1400feed7
cmp qword [rbx + 0x28], r15
jg 0x1400feeda
mov rdx, r15
mov r8, rsi
mov rcx, rdi
call fcn.1401535f0
mov r14, qword [rsp + 0x40]
jmp 0x1400feef9
mov r12, qword [rsp + 0x48]
mov r14, r15
mov qword [rsp + 0x40], r15
mov eax, 0x200
mov ecx, 1
test word [rbx + 0x10], ax
je 0x1400ff07c
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x40], xmm0
mov rbx, r15
mov qword [rbp - 0x48], rbx
mov word [rbp + 0x98], 0xff
mov r13d, r15d
test r14, r14
jle 0x1400fefdf
movzx ebx, word [rbp + 0x98]
nop dword [rax + rax]
cmp qword [rbp - 0x40], 0x7fffffff
jge 0x1400fefdb
movsxd rsi, r13d
test rdi, rdi
je 0x1400fef5f
cmp rsi, r12
lea rax, [rsi + rdi]
jl 0x1400fef62
mov rax, r15
movzx eax, byte [rax]
mov byte [rbp + 0x90], al
mov byte [rsp + 0x20], 1
mov r9d, 0x4000
xor r8d, r8d
mov rdx, rcx
lea rcx, [rbp - 0x48]
call fcn.1400561b0
test rax, rax
je 0x1400fef93
movzx ecx, byte [rbp + 0x90]
mov byte [rax], cl
test r13d, r13d
js 0x1400fefba
lea rax, [rsi + 2]
cmp rax, r14
jg 0x1400fefba
test rdi, rdi
je 0x1400fefaf
cmp rsi, r12
lea rax, [rsi + rdi]
jl 0x1400fefb2
mov rax, r15
cmp word [rax], bx
sete cl
jmp 0x1400fefbc
xor cl, cl
lea eax, [r13 + 1]
test cl, cl
cmove eax, r13d
lea r13d, [rax + 1]
movsxd rax, r13d
cmp rax, r14
mov ecx, 1
jl 0x1400fef40
mov rbx, qword [rbp - 0x48]
mov rsi, qword [rbp - 0x40]
test rbx, rbx
je 0x1400ff05b
cmp qword [rbp - 0x38], 0
jle 0x1400ff05b
test rsi, rsi
jle 0x1400ff05b
cmp rsi, r14
jle 0x1400ff025
mov rdx, rsi
sub rdx, r14
mov byte [rsp + 0x20], 1
xor r9d, r9d
xor r8d, r8d
lea rcx, [rsp + 0x38]
call fcn.1400561b0
mov r12, qword [rsp + 0x48]
mov r14, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x38]
jmp 0x1400ff041
jge 0x1400ff041
mov rax, r14
sub rax, rsi
test rax, rax
jle 0x1400ff041
sub r14, rax
test r14, r14
cmovle r14, r15
mov qword [rsp + 0x40], r14
test rdi, rdi
je 0x1400ff05b
test r12, r12
jle 0x1400ff05b
mov r8, rsi
mov rdx, rbx
mov rcx, rdi
call fcn.1401535f0
jmp 0x1400ff063
mov r14, r15
mov qword [rsp + 0x40], r15
test rbx, rbx
je 0x1400ff070
mov rcx, rbx
call fcn.140017d60
mov r13d, dword [rsp + 0x50]
mov rbx, qword [rbp + 0x80]
mov eax, 0x800
test word [rbx + 0x10], ax
je 0x1400ff0a0
lea rcx, [rsp + 0x38]
call fcn.14010dc70
mov r12, qword [rsp + 0x48]
mov r14, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x38]
mov eax, 0x100
test word [rbx + 0x10], ax
mov rbx, r15
mov eax, 4
cmovne rbx, rax
mov qword [rsp + 0x30], rbx
test r13d, r13d
jne 0x1400ff16e
test rbx, rbx
js 0x1400ff0dc
lea rax, [rbx + 1]
cmp rax, r14
jg 0x1400ff0dc
movzx ecx, byte [rdi + rbx]
mov qword [rsp + 0x30], rax
jmp 0x1400ff0de
xor cl, cl
movzx ebx, cl
mov byte [rsp + 0x20], 0
lea r9, [rsp + 0x30]
lea r8, [rsp + 0x38]
mov edx, ebx
lea rcx, [rsp + 0x78]
call fcn.14010de90
nop
mov rdi, qword [rsp + 0x58]
mov rax, qword [rdi]
mov r8d, ebx
lea rdx, str.Text_Encoding
mov rcx, rdi
call qword [rax + 0x48]
mov rax, qword [rdi]
xor r9d, r9d
lea r8, [rsp + 0x78]
lea rdx, str.Value
mov rcx, rdi
call qword [rax + 0x40]
nop
mov rdx, qword [rsp + 0x78]
add rdx, 0xffffffffffffffe8
mov eax, dword [rdx + 0x10]
cmp eax, 0x7ffffc17
je 0x1400ff162
mov eax, dword [rdx + 0x10]
cmp eax, 0xffffffff
je 0x1400ff158
mov esi, 0xffffffff
lock xadd dword [rdx + 0x10], esi
sub esi, 1
jg 0x1400ff162
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdi, qword [rsp + 0x38]
mov bl, 1
jmp 0x1400ffded
cmp r13d, 1
jne 0x1400ff281
test rbx, rbx
js 0x1400ff191
lea rax, [rbx + 1]
cmp rax, r14
jg 0x1400ff191
movzx ecx, byte [rdi + rbx]
mov qword [rsp + 0x30], rax
jmp 0x1400ff193
xor cl, cl
movzx ebx, cl
mov byte [rsp + 0x20], 1
lea r9, [rsp + 0x30]
lea r8, [rsp + 0x38]
mov edx, ebx
lea rcx, [rbp - 0x78]
call fcn.14010de90
nop
mov byte [rsp + 0x20], 0
lea r9, [rsp + 0x30]
lea r8, [rsp + 0x38]
mov edx, ebx
lea rcx, [rbp - 0x80]
call fcn.14010de90
nop
mov rdi, qword [rsp + 0x58]
mov rax, qword [rdi]
mov r8d, ebx
lea rdx, str.Text_Encoding
mov rcx, rdi
call qword [rax + 0x48]
mov rax, qword [rdi]
xor r9d, r9d
lea r8, [rbp - 0x78]
lea rdx, str.Description
mov rcx, rdi
call qword [rax + 0x40]
mov rax, qword [rdi]
xor r9d, r9d
lea r8, [rbp - 0x80]
lea rdx, str.Value
mov rcx, rdi
call qword [rax + 0x40]
nop
mov rdx, qword [rbp - 0x80]
add rdx, 0xffffffffffffffe8
mov eax, dword [rdx + 0x10]
mov esi, 0xffffffff
cmp eax, 0x7ffffc17
je 0x1400ff247
mov eax, dword [rdx + 0x10]
cmp eax, esi
je 0x1400ff23d
mov eax, esi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400ff247
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rbp - 0x78]
add rdx, 0xffffffffffffffe8
mov eax, dword [rdx + 0x10]
cmp eax, 0x7ffffc17
je 0x1400ff275
mov eax, dword [rdx + 0x10]
cmp eax, 0xffffffff
je 0x1400ff26b
lock xadd dword [rdx + 0x10], esi
sub esi, 1
jg 0x1400ff275
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdi, qword [rsp + 0x38]
mov bl, 1
jmp 0x1400ffded
cmp r13d, 2
jne 0x1400ff417
test rbx, rbx
js 0x1400ff2a7
lea rcx, [rbx + 1]
cmp rcx, r14
jg 0x1400ff2a7
movzx eax, byte [rdi + rbx]
mov rbx, rcx
mov qword [rsp + 0x30], rcx
jmp 0x1400ff2a9
xor al, al
movzx r15d, al
test rbx, rbx
js 0x1400ff2c9
lea rax, [rbx + 1]
cmp rax, r14
jg 0x1400ff2c9
movzx ecx, byte [rdi + rbx]
mov rbx, rax
mov qword [rsp + 0x30], rax
jmp 0x1400ff2cb
xor cl, cl
movzx eax, cl
shl eax, 8
test rbx, rbx
js 0x1400ff2ed
lea rcx, [rbx + 1]
cmp rcx, r14
jg 0x1400ff2ed
movzx edx, byte [rdi + rbx]
mov rbx, rcx
mov qword [rsp + 0x30], rcx
jmp 0x1400ff2ef
xor dl, dl
movzx esi, dl
add esi, eax
shl esi, 8
test rbx, rbx
js 0x1400ff310
lea rax, [rbx + 1]
cmp rax, r14
jg 0x1400ff310
movzx ecx, byte [rdi + rbx]
mov qword [rsp + 0x30], rax
jmp 0x1400ff312
xor cl, cl
movzx eax, cl
add esi, eax
mov byte [rsp + 0x20], 1
lea r9, [rsp + 0x30]
lea r8, [rsp + 0x38]
mov edx, r15d
lea rcx, [rbp - 0x68]
call fcn.14010de90
nop
mov byte [rsp + 0x20], 0
lea r9, [rsp + 0x30]
lea r8, [rsp + 0x38]
mov edx, r15d
lea rcx, [rbp - 0x70]
call fcn.14010de90
nop
mov rbx, qword [rsp + 0x58]
mov rax, qword [rbx]
mov r8d, r15d
lea rdx, str.Text_Encoding
mov rcx, rbx
call qword [rax + 0x48]
mov rax, qword [rbx]
mov r8d, esi
lea rdx, str.Language_ID
mov rcx, rbx
call qword [rax + 0x48]
mov rax, qword [rbx]
xor r9d, r9d
lea r8, [rbp - 0x68]
lea rdx, str.Description
mov rcx, rbx
call qword [rax + 0x40]
mov rax, qword [rbx]
xor r9d, r9d
lea r8, [rbp - 0x70]
lea rdx, str.Value
mov rcx, rbx
call qword [rax + 0x40]
nop
mov rdx, qword [rbp - 0x70]
add rdx, 0xffffffffffffffe8
mov eax, dword [rdx + 0x10]
mov esi, 0xffffffff
cmp eax, 0x7ffffc17
je 0x1400ff3dd
mov eax, dword [rdx + 0x10]
cmp eax, esi
je 0x1400ff3d3
mov eax, esi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400ff3dd
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rbp - 0x68]
add rdx, 0xffffffffffffffe8
mov eax, dword [rdx + 0x10]
cmp eax, 0x7ffffc17
je 0x1400ff40b
mov eax, dword [rdx + 0x10]
cmp eax, 0xffffffff
je 0x1400ff401
lock xadd dword [rdx + 0x10], esi
sub esi, 1
jg 0x1400ff40b
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdi, qword [rsp + 0x38]
mov bl, 1
jmp 0x1400ffded
cmp r13d, 3
jne 0x1400ffa8b
test rbx, rbx
js 0x1400ff43d
lea rax, [rbx + 1]
cmp rax, r14
jg 0x1400ff43d
movzx ecx, byte [rdi + rbx]
mov rbx, rax
mov qword [rsp + 0x30], rax
jmp 0x1400ff43f
xor cl, cl
movzx eax, cl
mov dword [rsp + 0x50], eax
cmp dword [0x14021c658], 0xb23a8c33
je 0x1400ff481
mov ecx, 0x6c0
call fcn.140111d34
mov qword [rbp + 0x80], rax
test rax, rax
je 0x1400ff475
mov rcx, rax
call fcn.140036570
mov rcx, rax
jmp 0x1400ff478
mov rcx, r15
mov qword [0x140229e08], rcx
jmp 0x1400ff488
mov rcx, qword [0x140229e08]
mov rax, qword [rcx]
call qword [rax + 0x30]
mov qword [rsp + 0x60], rax
mov esi, 0xffffffff
cmp dword [rbp + 0x88], 3
jl 0x1400ff4fe
mov byte [rsp + 0x20], 1
lea r9, [rsp + 0x30]
lea r8, [rsp + 0x38]
xor edx, edx
lea rcx, [rbp]
call fcn.14010de90
nop
mov rdx, rax
lea rcx, [rsp + 0x60]
call fcn.140037020
nop
mov rdx, qword [rbp]
add rdx, 0xffffffffffffffe8
mov eax, dword [rdx + 0x10]
cmp eax, 0x7ffffc17
je 0x1400ff4f9
mov eax, dword [rdx + 0x10]
cmp eax, esi
je 0x1400ff4ef
mov eax, esi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400ff4f9
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
jmp 0x1400ff61d
test rbx, rbx
js 0x1400ff51a
lea rcx, [rbx + 1]
cmp rcx, r14
jg 0x1400ff51a
movzx eax, byte [rdi + rbx]
mov rbx, rcx
mov qword [rsp + 0x30], rcx
jmp 0x1400ff51c
xor al, al
mov byte [rbp + 0x90], al
test rbx, rbx
js 0x1400ff53e
lea rcx, [rbx + 1]
cmp rcx, r14
jg 0x1400ff53e
movzx eax, byte [rdi + rbx]
mov rbx, rcx
mov qword [rsp + 0x30], rcx
jmp 0x1400ff540
xor al, al
mov byte [rbp + 0x91], al
test rbx, rbx
js 0x1400ff562
lea rcx, [rbx + 1]
cmp rcx, r14
jg 0x1400ff562
movzx eax, byte [rdi + rbx]
mov rbx, rcx
mov qword [rsp + 0x30], rcx
jmp 0x1400ff564
xor al, al
mov byte [rbp + 0x92], al
mov byte [rbp + 0x93], 0
lea r13, [rbp + 0x90]
nop dword [rax + rax]
movzx eax, byte [r13]
inc r13
test al, al
jne 0x1400ff580
lea rax, [rbp + 0x90]
sub r13d, eax
dec r13d
lea rcx, [rsp + 0x60]
test r13d, r13d
jle 0x1400ff633
xor r9d, r9d
mov r8b, 1
mov edx, r13d
call fcn.140037200
mov dword [rsp + 0x28], r13d
mov qword [rsp + 0x20], rax
mov r9d, r13d
lea r8, [rbp + 0x90]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
movsxd rdx, eax
mov rax, qword [rsp + 0x60]
cmp edx, esi
jne 0x1400ff606
test rax, rax
jne 0x1400ff5e9
mov edx, r15d
jmp 0x1400ff60b
mov rdx, rax
nop dword [rax]
movzx ecx, word [rdx]
add rdx, 2
test cx, cx
jne 0x1400ff5f0
sub rdx, rax
sar rdx, 1
dec edx
jmp 0x1400ff60b
mov word [rax + rdx*2], r15w
mov dword [rax - 0x10], edx
mov ecx, dword [rax - 8]
cmp ecx, esi
jne 0x1400ff61d
mov ecx, 1
xchg dword [rax - 8], ecx
mov rbx, qword [rsp + 0x30]
mov r12, qword [rsp + 0x48]
mov r14, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x38]
jmp 0x1400ff638
call fcn.1400373b0
test rbx, rbx
js 0x1400ff654
lea rcx, [rbx + 1]
cmp rcx, r14
jg 0x1400ff654
movzx eax, byte [rdi + rbx]
mov rbx, rcx
mov qword [rsp + 0x30], rcx
jmp 0x1400ff656
mov al, 3
movzx eax, al
mov dword [rsp + 0x68], eax
test rbx, rbx
js 0x1400ff6ac
lea rcx, [rbx + 1]
cmp rcx, r14
jg 0x1400ff6ac
test rdi, rdi
je 0x1400ff679
cmp rbx, r12
lea rax, [rdi + rbx]
jl 0x1400ff67c
mov rax, r15
cmp byte [rax], 0xff
jne 0x1400ff6ac
test rcx, rcx
js 0x1400ff6ac
lea rax, [rcx + 1]
cmp rax, r14
jg 0x1400ff6ac
test rdi, rdi
je 0x1400ff69d
cmp rcx, r12
lea rax, [rcx + rdi]
jl 0x1400ff6a0
mov rax, r15
cmp byte [rax], 0xd8
mov byte [rbp + 0x80], 1
je 0x1400ff6b3
mov byte [rbp + 0x80], 0
test rbx, rbx
js 0x1400ff828
lea rcx, [rbx + 1]
cmp rcx, r14
jg 0x1400ff828
test rdi, rdi
je 0x1400ff6d7
cmp rbx, r12
lea rax, [rdi + rbx]
jl 0x1400ff6da
mov rax, r15
cmp byte [rax], 0x89
jne 0x1400ff828
test rcx, rcx
js 0x1400ff828
lea rax, [rcx + 1]
cmp rax, r14
jg 0x1400ff828
test rdi, rdi
je 0x1400ff707
cmp rcx, r12
lea rax, [rcx + rdi]
jl 0x1400ff70a
mov rax, r15
cmp byte [rax], 0x50
jne 0x1400ff828
lea rcx, [rbx + 2]
test rcx, rcx
js 0x1400ff828
lea rax, [rcx + 1]
cmp rax, r14
jg 0x1400ff828
test rdi, rdi
je 0x1400ff73b
cmp rcx, r12
lea rax, [rdi + rcx]
jl 0x1400ff73e
mov rax, r15
cmp byte [rax], 0x4e
jne 0x1400ff828
lea rcx, [rbx + 3]
test rcx, rcx
js 0x1400ff828
lea rax, [rcx + 1]
cmp rax, r14
jg 0x1400ff828
test rdi, rdi
je 0x1400ff76f
cmp rcx, r12
lea rax, [rdi + rcx]
jl 0x1400ff772
mov rax, r15
cmp byte [rax], 0x47
jne 0x1400ff828
lea rcx, [rbx + 4]
test rcx, rcx
js 0x1400ff828
lea rax, [rcx + 1]
cmp rax, r14
jg 0x1400ff828
test rdi, rdi
je 0x1400ff7a3
cmp rcx, r12
lea rax, [rdi + rcx]
jl 0x1400ff7a6
mov rax, r15
cmp byte [rax], 0xd
jne 0x1400ff828
lea rcx, [rbx + 5]
test rcx, rcx
js 0x1400ff828
lea rax, [rcx + 1]
cmp rax, r14
jg 0x1400ff828
test rdi, rdi
je 0x1400ff7cb
cmp rcx, r12
lea rax, [rdi + rcx]
jl 0x1400ff7ce
mov rax, r15
cmp byte [rax], 0xa
jne 0x1400ff828
lea rcx, [rbx + 6]
test rcx, rcx
js 0x1400ff828
lea rax, [rcx + 1]
cmp rax, r14
jg 0x1400ff828
test rdi, rdi
je 0x1400ff7f3
cmp rcx, r12
lea rax, [rdi + rcx]
jl 0x1400ff7f6
mov rax, r15
cmp byte [rax], 0x1a
jne 0x1400ff828
lea rcx, [rbx + 7]
test rcx, rcx
js 0x1400ff828
lea rax, [rcx + 1]
cmp rax, r14
jg 0x1400ff828
test rdi, rdi
je 0x1400ff81b
cmp rcx, r12
lea rax, [rdi + rcx]
jl 0x1400ff81e
mov rax, r15
cmp byte [rax], 0xa
jne 0x1400ff828
mov r13b, 1
jmp 0x1400ff82b
xor r13b, r13b
cmp dword [0x14021c658], 0xb23a8c33
je 0x1400ff863
mov ecx, 0x6c0
call fcn.140111d34
mov qword [rbp + 0x28], rax
test rax, rax
je 0x1400ff857
mov rcx, rax
call fcn.140036570
mov rcx, rax
jmp 0x1400ff85a
mov rcx, r15
mov qword [0x140229e08], rcx
jmp 0x1400ff86a
mov rcx, qword [0x140229e08]
mov rax, qword [rcx]
call qword [rax + 0x30]
mov qword [rsp + 0x70], rax
cmp byte [rbp + 0x80], 0
jne 0x1400ff8f2
test r13b, r13b
jne 0x1400ff8f2
mov byte [rsp + 0x20], 1
lea r9, [rsp + 0x30]
lea r8, [rsp + 0x38]
mov edx, dword [rsp + 0x50]
lea rcx, [rbp + 8]
call fcn.14010de90
nop
mov rdx, rax
lea rcx, [rsp + 0x70]
call fcn.140037020
nop
mov rdx, qword [rbp + 8]
add rdx, 0xffffffffffffffe8
mov eax, dword [rdx + 0x10]
cmp eax, 0x7ffffc17
je 0x1400ff8de
mov eax, dword [rdx + 0x10]
cmp eax, 0xffffffff
je 0x1400ff8d4
mov eax, esi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400ff8de
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rbx, qword [rsp + 0x30]
mov r12, qword [rsp + 0x48]
mov r14, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x38]
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x28], xmm0
mov qword [rbp - 0x30], r15
mov r13, r15
test rbx, rbx
cmovns r13, rbx
sub r14, r13
test rdi, rdi
je 0x1400ff957
test r12, r12
jle 0x1400ff957
test r14, r14
jle 0x1400ff957
mov byte [rsp + 0x20], 1
xor r9d, r9d
xor r8d, r8d
mov rdx, r14
lea rcx, [rbp - 0x30]
call fcn.1400561b0
mov rcx, qword [rbp - 0x30]
test rcx, rcx
je 0x1400ff957
cmp qword [rbp - 0x20], 0
jle 0x1400ff957
cmp r13, r12
jge 0x1400ff94a
lea r15, [rdi + r13]
mov r8, r14
mov rdx, r15
call fcn.1401535f0
jmp 0x1400ff95b
mov qword [rbp - 0x28], r15
lea rdx, [rbp - 0x60]
lea rcx, [rbp - 0x30]
call fcn.140056150
nop
mov rbx, qword [rsp + 0x58]
mov rax, qword [rbx]
mov r8d, dword [rsp + 0x50]
lea rdx, str.Text_Encoding
mov rcx, rbx
call qword [rax + 0x48]
mov rax, qword [rbx]
xor r9d, r9d
lea r8, [rsp + 0x60]
lea rdx, str.Mime_Type
mov rcx, rbx
call qword [rax + 0x40]
mov rax, qword [rbx]
mov r8d, dword [rsp + 0x68]
lea rdx, str.Picture_Type
mov rcx, rbx
call qword [rax + 0x48]
mov rax, qword [rbx]
xor r9d, r9d
lea r8, [rsp + 0x70]
lea rdx, str.Description
mov rcx, rbx
call qword [rax + 0x40]
mov rax, qword [rbx]
xor r9d, r9d
lea r8, [rbp - 0x60]
lea rdx, str.Value
mov rcx, rbx
call qword [rax + 0x40]
nop
mov rdx, qword [rbp - 0x60]
add rdx, 0xffffffffffffffe8
mov eax, dword [rdx + 0x10]
cmp eax, 0x7ffffc17
je 0x1400ffa10
mov eax, dword [rdx + 0x10]
cmp eax, 0xffffffff
je 0x1400ffa06
mov eax, esi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400ffa10
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rbp - 0x30]
test rcx, rcx
je 0x1400ffa1f
call fcn.140017d60
nop
mov rdx, qword [rsp + 0x70]
add rdx, 0xffffffffffffffe8
mov eax, dword [rdx + 0x10]
cmp eax, 0x7ffffc17
je 0x1400ffa50
mov eax, dword [rdx + 0x10]
cmp eax, 0xffffffff
je 0x1400ffa46
mov eax, esi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400ffa50
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x60]
add rdx, 0xffffffffffffffe8
mov eax, dword [rdx + 0x10]
cmp eax, 0x7ffffc17
je 0x1400ffa7f
mov eax, dword [rdx + 0x10]
cmp eax, 0xffffffff
je 0x1400ffa75
lock xadd dword [rdx + 0x10], esi
sub esi, 1
jg 0x1400ffa7f
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdi, qword [rsp + 0x38]
mov bl, 1
jmp 0x1400ffded
cmp r13d, eax
jne 0x1400ffb85
mov byte [rsp + 0x20], 1
lea r9, [rsp + 0x30]
lea r8, [rsp + 0x38]
xor edx, edx
lea rcx, [rbp + 0x18]
call fcn.14010de90
nop
mov rcx, qword [rsp + 0x30]
test rcx, rcx
js 0x1400ffaeb
lea rax, [rcx + 1]
cmp rax, r14
jg 0x1400ffaeb
movzx eax, byte [rdi + rcx]
test al, al
je 0x1400ffaed
cmp al, 0x33
ja 0x1400ffad2
mov al, 1
jmp 0x1400ffaed
cmp al, 0x66
ja 0x1400ffada
mov al, 2
jmp 0x1400ffaed
cmp al, 0x99
ja 0x1400ffae2
mov al, 3
jmp 0x1400ffaed
cmp al, 0xcc
seta al
add al, 4
jmp 0x1400ffaed
xor al, al
movzx edx, al
lea rcx, [rbp + 0x10]
call fcn.14000a290
nop
mov rdi, qword [rsp + 0x58]
mov r10, qword [rdi]
xor r9d, r9d
mov r8, rax
lea rdx, str.Value
mov rcx, rdi
call qword [r10 + 0x40]
nop
mov rdx, qword [rbp + 0x10]
add rdx, 0xffffffffffffffe8
mov eax, dword [rdx + 0x10]
mov esi, 0xffffffff
cmp eax, 0x7ffffc17
je 0x1400ffb4b
mov eax, dword [rdx + 0x10]
cmp eax, esi
je 0x1400ffb41
mov eax, esi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400ffb4b
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rbp + 0x18]
add rdx, 0xffffffffffffffe8
mov eax, dword [rdx + 0x10]
cmp eax, 0x7ffffc17
je 0x1400ffb79
mov eax, dword [rdx + 0x10]
cmp eax, 0xffffffff
je 0x1400ffb6f
lock xadd dword [rdx + 0x10], esi
sub esi, 1
jg 0x1400ffb79
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdi, qword [rsp + 0x38]
mov bl, 1
jmp 0x1400ffded
cmp r13d, 5
jne 0x1400ffc17
test rbx, rbx
js 0x1400ffbae
lea rax, [rbx + 4]
cmp rax, r14
jg 0x1400ffbae
test rdi, rdi
je 0x1400ffbab
cmp rbx, r12
jge 0x1400ffbab
lea r15, [rdi + rbx]
mov r15d, dword [r15]
mov edx, r15d
lea rcx, [rbp + 0x20]
call fcn.14000a290
nop
mov rdi, qword [rsp + 0x58]
mov r10, qword [rdi]
xor r9d, r9d
mov r8, rax
lea rdx, str.Value
mov rcx, rdi
call qword [r10 + 0x40]
nop
mov rdx, qword [rbp + 0x20]
add rdx, 0xffffffffffffffe8
mov eax, dword [rdx + 0x10]
cmp eax, 0x7ffffc17
je 0x1400ffc0b
mov eax, dword [rdx + 0x10]
cmp eax, 0xffffffff
je 0x1400ffc01
mov esi, 0xffffffff
lock xadd dword [rdx + 0x10], esi
sub esi, 1
jg 0x1400ffc0b
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdi, qword [rsp + 0x38]
mov bl, 1
jmp 0x1400ffded
cmp r13d, 6
jne 0x1400ffc94
mov byte [rsp + 0x20], 0
lea r9, [rsp + 0x30]
lea r8, [rsp + 0x38]
xor edx, edx
lea rcx, [rbp - 0x58]
call fcn.14010de90
nop
mov rdi, qword [rsp + 0x58]
mov rax, qword [rdi]
xor r9d, r9d
lea r8, [rbp - 0x58]
lea rdx, str.Value
mov rcx, rdi
call qword [rax + 0x40]
nop
mov rdx, qword [rbp - 0x58]
add rdx, 0xffffffffffffffe8
mov eax, dword [rdx + 0x10]
cmp eax, 0x7ffffc17
je 0x1400ffc88
mov eax, dword [rdx + 0x10]
cmp eax, 0xffffffff
je 0x1400ffc7e
mov esi, 0xffffffff
lock xadd dword [rdx + 0x10], esi
sub esi, 1
jg 0x1400ffc88
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdi, qword [rsp + 0x38]
mov bl, 1
jmp 0x1400ffded
cmp r13d, 7
jne 0x1400ffdeb
mov byte [rsp + 0x20], 1
lea r9, [rsp + 0x30]
lea r8, [rsp + 0x38]
xor edx, edx
lea rcx, [rsp + 0x50]
call fcn.14010de90
nop
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x10], xmm0
mov qword [rbp - 0x18], r15
mov rax, qword [rsp + 0x50]
mov eax, dword [rax - 0x10]
add eax, 1
cdqe
mov rbx, r15
cmovns rbx, rax
sub r14, rbx
test rdi, rdi
je 0x1400ffd29
test r12, r12
jle 0x1400ffd29
test r14, r14
jle 0x1400ffd29
mov byte [rsp + 0x20], 1
xor r9d, r9d
xor r8d, r8d
mov rdx, r14
lea rcx, [rbp - 0x18]
call fcn.1400561b0
mov rcx, qword [rbp - 0x18]
test rcx, rcx
je 0x1400ffd29
cmp qword [rbp - 8], 0
jle 0x1400ffd29
cmp rbx, r12
jge 0x1400ffd1c
lea r15, [rdi + rbx]
mov r8, r14
mov rdx, r15
call fcn.1401535f0
jmp 0x1400ffd2d
mov qword [rbp - 0x10], r15
lea rdx, [rbp - 0x50]
lea rcx, [rbp - 0x18]
call fcn.140056150
nop
mov rdi, qword [rsp + 0x58]
mov rax, qword [rdi]
xor r9d, r9d
lea r8, [rsp + 0x50]
lea rdx, str.Description
mov rcx, rdi
call qword [rax + 0x40]
mov rax, qword [rdi]
xor r9d, r9d
lea r8, [rbp - 0x50]
lea rdx, str.Value
mov rcx, rdi
call qword [rax + 0x40]
nop
mov rdx, qword [rbp - 0x50]
add rdx, 0xffffffffffffffe8
mov eax, dword [rdx + 0x10]
mov esi, 0xffffffff
cmp eax, 0x7ffffc17
je 0x1400ffda4
mov eax, dword [rdx + 0x10]
cmp eax, esi
je 0x1400ffd9a
mov eax, esi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400ffda4
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rbp - 0x18]
test rcx, rcx
je 0x1400ffdb3
call fcn.140017d60
nop
mov rdx, qword [rsp + 0x50]
add rdx, 0xffffffffffffffe8
mov eax, dword [rdx + 0x10]
cmp eax, 0x7ffffc17
je 0x1400ffde2
mov eax, dword [rdx + 0x10]
cmp eax, 0xffffffff
je 0x1400ffdd8
lock xadd dword [rdx + 0x10], esi
sub esi, 1
jg 0x1400ffde2
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdi, qword [rsp + 0x38]
mov bl, 1
jmp 0x1400ffded
xor bl, bl
test rdi, rdi
je 0x1400ffdfa
mov rcx, rdi
call fcn.140017d60
movzx eax, bl
add rsp, 0x138
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret