Function at 0x14002cc50
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0x20
mov eax, dword [rcx + 0x158]
mov rbx, rcx
mov dword [rcx + 8], 1
test al, 0x20
jne 0x14002cc90
test al, 2
jne 0x14002cc90
test al, 4
jne 0x14002cc90
test al, 8
jne 0x14002cc90
test al, 0x10
jne 0x14002cc90
test al, 1
je 0x14002cf97
mov rdi, qword [rcx + 0xb0]
xor ebp, ebp
test rdi, rdi
jne 0x14002ccbd
add rcx, 0x70
call fcn.1400327f4
mov rdi, qword [rbx + 0xb0]
test rdi, rdi
jne 0x14002ccbd
mov eax, 0x8007000e
jmp 0x14002cf99
mov eax, dword [rbx + 0x158]
test al, 0x20
jne 0x14002ccdb
test al, 2
jne 0x14002ccdb
test al, 4
jne 0x14002ccdb
test al, 8
jne 0x14002ccdb
test al, 0x10
je 0x14002cf35
mov rcx, qword [rbx + reloc.MFC42u.dll_CDaoRecordView::CDaoRecordView]
mov eax, dword [rcx + 0x140]
cmp eax, 0x56d
je 0x14002ccf6
cmp eax, 0x587
jne 0x14002cd00
call fcn.14002ae20
test rax, rax
jne 0x14002cd2a
mov r8d, 0x5d3
lea rcx, str.Error:_Func__s_Line__d:_No_parent_style_found_to_resolve
lea rdx, str.COdtStyleParagraphProperties::Resolve
lea r9, [0x1400b2e04]
call fcn.140062434
mov eax, 0x80070057
jmp 0x14002cf99
mov rcx, rax
call fcn.140032ed4
mov r9, rax
test rax, rax
jne 0x14002cd49
mov r8d, Ordinal_1499
lea rcx, str.Error:_Func__s_Line__d:_No_paraformat_in_parent_style_to_resolve
jmp 0x14002cd0d
mov eax, dword [rbx + 0x158]
xorps xmm5, xmm5
movsd xmm4, qword [0x1400d4330]
movsd xmm3, qword [0x1400d4298]
test al, 0x20
je 0x14002cdc9
test byte [r9 + 4], 0x80
jne 0x14002cd7f
mov r8d, Ordinal_1297
lea rdx, str.COdtAttributeParser::OdtPfFromMarginBottomParent
jmp 0x14002ce99
movd xmm0, dword [r9 + 0xa0]
cvtdq2pd xmm0, xmm0
divsd xmm0, xmm4
mulsd xmm0, qword [rbx + 0x180]
movsd qword [rbx + 0x180], xmm0
or dword [rdi + 4], 2
movsd xmm0, qword [rbx + 0x180]
comisd xmm0, xmm5
jbe 0x14002cdb8
addsd xmm0, xmm3
jmp 0x14002cdbc
subsd xmm0, xmm3
cvttsd2si eax, xmm0
mov dword [rdi + 0x10], eax
mov eax, dword [rbx + 0x158]
test al, 0x10
je 0x14002ce30
test byte [r9 + 4], 0x40
jne 0x14002cde6
mov r8d, 0x4f6
lea rdx, str.COdtAttributeParser::OdtPfFromMarginTopParent
jmp 0x14002ce99
movd xmm0, dword [r9 + 0x9c]
cvtdq2pd xmm0, xmm0
divsd xmm0, xmm4
mulsd xmm0, qword [rbx + 0x178]
movsd qword [rbx + 0x178], xmm0
or dword [rdi + 4], 2
movsd xmm0, qword [rbx + 0x178]
comisd xmm0, xmm5
jbe 0x14002ce1f
addsd xmm0, xmm3
jmp 0x14002ce23
subsd xmm0, xmm3
cvttsd2si eax, xmm0
mov dword [rdi + 0x10], eax
mov eax, dword [rbx + 0x158]
test al, 4
je 0x14002ce81
mov eax, dword [r9 + 4]
lea rcx, [rbx + 0x168]
and eax, 5
cmp al, 5
je 0x14002ce55
mov r8d, 0x4c8
lea rdx, str.COdtAttributeParser::OdtPfFromMarginLeftParent
jmp 0x14002ce99
movd xmm0, dword [r9 + 0xc]
mov rdx, rdi
cvtdq2pd xmm0, xmm0
divsd xmm0, xmm4
mulsd xmm0, qword [rcx]
movsd qword [rcx], xmm0
call fcn.1400317d4
test eax, eax
jne 0x14002cf99
mov eax, dword [rbx + 0x158]
test al, 8
je 0x14002ceec
test byte [r9 + 4], 2
jne 0x14002cea5
mov r8d, 0x4dd
lea rdx, str.COdtAttributeParser::OdtPfFromMarginRightParent
lea rcx, str.Error:_Func__s_Line__d:_mask_not_set_in_parent
jmp 0x14002cd14
movd xmm0, dword [r9 + 0x10]
cvtdq2pd xmm0, xmm0
divsd xmm0, xmm4
mulsd xmm0, qword [rbx + 0x170]
movsd qword [rbx + 0x170], xmm0
or dword [rdi + 4], 2
movsd xmm0, qword [rbx + 0x170]
comisd xmm0, xmm5
jbe 0x14002cedb
addsd xmm0, xmm3
jmp 0x14002cedf
subsd xmm0, xmm3
cvttsd2si eax, xmm0
mov dword [rdi + 0x10], eax
mov eax, dword [rbx + 0x158]
test al, 2
je 0x14002cf35
test byte [r9 + 4], 1
lea rcx, [rbx + 0x160]
jne 0x14002cf0d
mov r8d, 0x48d
lea rdx, str.COdtAttributeParser::OdtPfFromTextIndentParent
jmp 0x14002ce99
movd xmm0, dword [r9 + 0xc]
mov rdx, rdi
cvtdq2pd xmm0, xmm0
divsd xmm0, xmm4
mulsd xmm0, qword [rcx]
movsd qword [rcx], xmm0
call fcn.140031740
test eax, eax
jne 0x14002cf99
mov eax, dword [rbx + 0x158]
test al, 1
je 0x14002cf97
or dword [rdi + 4], 0x10
mov r8d, dword [rdi + 0x14]
add r8d, dword [rdi + 0xc]
je 0x14002cf8f
mov r10d, ebp
cmp bp, word [rdi + 0x1a]
jge 0x14002cf8f
lea r9, [rdi + 0x1c]
mov r11d, 0xffffff
mov ecx, dword [r9]
mov eax, dword [r9]
and ecx, r11d
mov edx, ecx
or edx, 0xff000000
and eax, 0x800000
cmove edx, ecx
inc r10d
add edx, r8d
xor edx, dword [r9]
and edx, r11d
xor dword [r9], edx
lea r9, [r9 + 4]
movsx eax, word [rdi + 0x1a]
cmp r10d, eax
jl 0x14002cf5a
mov rcx, rbx
call fcn.14002cb98
xor eax, eax
mov rbx, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
ret