Function at 0x140102ea0
Capabilities:
Hash data using fnv

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x7810]
mov eax, 0x7910
call fcn.1401686c0
sub rsp, rax
mov qword [rsp + 0x50], 0xfffffffffffffffe
mov qword [rsp + 0x7960], rbx
mov rax, qword [0x14028e6b0]
xor rax, rsp
mov qword [rbp + 0x7800], rax
mov rbx, rdx
mov r12, rcx
xor r15d, r15d
mov dword [rsp + 0x38], r15d
xor r9d, r9d
mov edx, 0xfa1
mov r8d, 0x98
call fcn.14000f5d0
test rbx, rbx
je 0x140102f1e
call fcn.14000cdd0
mov rdx, rbx
mov rcx, rax
call fcn.1400d1f50
mov r13, rax
jmp 0x140102f25
mov r13, qword [0x1402a4ba0]
test r13, r13
je 0x1401035db
mov r14d, r15d
mov dword [rsp + 0x34], r15d
mov rax, qword [r12 + 0x40]
mov ecx, dword [rax + 0x4c]
cmp dword [rax + 0x50], 0xffffffff
jne 0x140102f56
cmp ecx, 1
je 0x140102f4e
cmp ecx, 4
jne 0x140102f61
mov r14d, 0xfde9
jmp 0x140102f5c
mov r14d, 1
mov dword [rsp + 0x34], r14d
lea rbx, [0x1401e4520]
mov r9, rbx
lea r8, str.fold
mov edx, 0xfa4
mov rcx, r12
call fcn.14000f5d0
lea r9, [0x14021c580]
cmp byte [r13 + 0x1a47f0], r15b
cmovne r9, rbx
lea r8, str.userDefine.isCaseIgnored
mov edx, 0xfa4
mov rcx, r12
call fcn.14000f5d0
lea r9, [0x14021c580]
cmp byte [r13 + 0x1a47f1], r15b
cmovne r9, rbx
lea r8, str.userDefine.allowFoldOfComments
mov edx, 0xfa4
mov rcx, r12
call fcn.14000f5d0
lea r9, [0x14021c580]
cmp byte [r13 + 0x1a47fc], r15b
cmovne r9, rbx
lea r8, str.userDefine.foldCompact
mov edx, 0xfa4
mov rcx, r12
call fcn.14000f5d0
movups xmm0, xmmword [str.userDefine.prefixKeywords0]
movups xmmword [rbp - 0x48], xmm0
movsd xmm1, qword [0x14021cb28]
movsd qword [rbp - 0x38], xmm1
movzx eax, word [0x14021cb30]
mov word [rbp - 0x30], ax
movzx eax, byte [0x14021cb32]
mov byte [rbp - 0x2e], al
mov edi, r15d
mov rbx, r15
lea rsi, [0x1401e4520]
nop dword [rax + rax]
inc edi
mov r8d, 0xa
lea rdx, [rbp - 0x2f]
mov ecx, edi
call fcn.1401999b4
lea r9, [0x14021c580]
cmp byte [rbx + r13 + 0x1a47e8], r15b
cmovne r9, rsi
lea r8, [rbp - 0x48]
mov edx, 0xfa4
mov rcx, r12
call fcn.14000f5d0
inc rbx
cmp rbx, 8
jl 0x140103030
mov edx, r15d
mov dword [rsp + 0x30], edx
mov ecx, dword [0x1402a5b68]
mov rax, qword gs:[0x58]
mov r8d, 4
mov rax, qword [rax + rcx*8]
add rax, r8
mov qword [rsp + 0x40], rax
mov esi, edx
nop word [rax + rax]
mov eax, dword [rax]
cmp dword [0x140293540], eax
jle 0x1401030f8
lea rcx, [0x140293540]
call fcn.1401683f4
cmp dword [0x140293540], 0xffffffff
jne 0x1401030f4
mov qword [0x140293520], r15
mov qword [0x140293528], r15
mov qword [0x140293530], r15
mov qword [0x140293538], r15
lea rcx, [0x1401ce320]
call fcn.140168204
nop
lea rcx, [0x140293540]
call fcn.140168394
mov edx, dword [rsp + 0x30]
movsxd rax, edx
imul rdx, rax, 0xf000
add rdx, 0x7e8
add rdx, r13
mov qword [rsp + 0x20], r15
or r9d, 0xffffffff
mov r8d, r14d
lea rcx, [0x140293520]
call fcn.14002d430
mov rdi, rax
call fcn.1401297a0
mov rbx, qword [rax + 0x1d0]
call fcn.1401297a0
mov r8, rax
mov r10d, dword [rsp + 0x30]
movzx edx, r10b
movabs rax, 0xcbf29ce484222325
xor rdx, rax
movabs r9, 0x100000001b3
imul rdx, r9
movzx ecx, byte [rsp + 0x31]
xor rdx, rcx
imul rdx, r9
movzx eax, byte [rsp + 0x32]
xor rdx, rax
imul rdx, r9
movzx eax, byte [rsp + 0x33]
xor rdx, rax
imul rdx, r9
mov rcx, qword [r8 + 0x1f8]
and rcx, rdx
mov rdx, qword [r8 + 0x1e0]
mov rax, rcx
add rax, rax
mov rax, qword [rdx + rax*8]
mov r9, qword [r8 + 0x1d0]
add rcx, rcx
mov r8, qword [rdx + rcx*8]
lea r11, [rcx + 1]
lea r11, [rdx + r11*8]
cmp r8, r9
jne 0x1401031be
mov rcx, r9
jmp 0x1401031c4
mov rcx, qword [r11]
mov rcx, qword [rcx]
cmp rax, rcx
je 0x1401031da
cmp r10d, dword [rax + 0x10]
je 0x1401031d4
mov rax, qword [rax]
jmp 0x1401031b4
cmovne rax, r9
jmp 0x1401031dd
mov rax, r9
cmp rax, rbx
je 0x140103349
call fcn.1401297a0
lea r14, [rax + 0x1c8]
mov r9d, dword [rsp + 0x30]
movzx ecx, r9b
movabs rax, 0xcbf29ce484222325
xor rcx, rax
movabs rdx, 0x100000001b3
imul rcx, rdx
movzx eax, byte [rsp + 0x31]
xor rcx, rax
imul rcx, rdx
movzx eax, byte [rsp + 0x32]
xor rcx, rax
imul rcx, rdx
movzx eax, byte [rsp + 0x33]
xor rcx, rax
imul rcx, rdx
mov rdx, qword [r14 + 0x30]
and rdx, rcx
mov r8, qword [r14 + 0x18]
mov rax, rdx
add rax, rax
mov rax, qword [r8 + rax*8]
mov rcx, qword [r14 + 8]
add rdx, rdx
mov r10, qword [r8 + rdx*8]
lea r11, [r8 + rdx*8]
nop
cmp r10, rcx
jne 0x14010326a
mov rdx, rcx
jmp 0x140103271
mov rdx, qword [r11 + 8]
mov rdx, qword [rdx]
cmp rax, rdx
je 0x140103287
cmp r9d, dword [rax + 0x10]
je 0x140103281
mov rax, qword [rax]
jmp 0x140103260
cmovne rax, rcx
jmp 0x14010328a
mov rax, rcx
cmp rax, rcx
jne 0x140103315
lea rax, [rsp + 0x30]
mov qword [rsp + 0x48], rax
mov rbx, qword [rcx]
lea rax, [rsp + 0x3c]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x48]
mov qword [rsp + 0x20], rax
lea r9, [0x140218ce0]
mov r8, qword [rbx + 8]
mov rdx, rbx
lea rcx, [r14 + 8]
call fcn.1400f7420
mov rdx, qword [r14 + 0x10]
movabs rcx, 0x492492492492491
sub rcx, rdx
cmp rcx, 1
jb 0x140103491
inc rdx
mov qword [r14 + 0x10], rdx
mov qword [rbx + 8], rax
mov rdx, qword [rax + 8]
mov qword [rdx], rax
mov r9, qword [r14 + 8]
mov r9, qword [r9]
lea r8, [r9 + 0x10]
lea rdx, [rbp - 0x28]
mov rcx, r14
call fcn.1400f7490
mov rax, qword [rbp - 0x28]
jmp 0x14010331d
mov qword [rbp - 0x28], rax
mov byte [rbp - 0x20], 0
lea r8, [rax + 0x18]
cmp qword [r8 + 0x18], 0x10
jb 0x14010332b
mov r8, qword [r8]
mov r9, rdi
mov edx, 0xfa4
mov rcx, r12
call fcn.14000f5d0
mov esi, dword [rsp + 0x38]
mov r14d, dword [rsp + 0x34]
jmp 0x140103478
xor r9b, r9b
xor r11b, r11b
xor bl, bl
mov rax, r15
mov rdx, r15
or r10, 0xffffffffffffffff
nop dword [rax + rax]
inc r10
cmp byte [rdi + r10], al
jne 0x140103360
test r10, r10
je 0x140103459
movabs rsi, 0x400000000000021
mov r14d, 0xb
cmp rax, 0x77ff
jge 0x140103448
test r11b, r11b
jne 0x1401033a5
cmp byte [rdx + rdi], 0x22
jne 0x1401033a5
test r9b, r9b
sete r9b
jmp 0x14010343c
test r9b, r9b
jne 0x1401033bc
cmp byte [rdx + rdi], 0x27
jne 0x1401033bc
test r11b, r11b
sete r11b
jmp 0x14010343c
movzx r8d, byte [rdx + rdi]
cmp r8b, 0x5c
jne 0x1401033e7
movzx ecx, byte [rdx + rdi + 1]
sub cl, 0x22
cmp cl, 0x3a
ja 0x1401033e7
movsx rcx, cl
bt rsi, rcx
jae 0x1401033e7
inc rdx
movzx ecx, byte [rdx + rdi]
jmp 0x140103435
test r9b, r9b
jne 0x1401033f8
test r11b, r11b
jne 0x1401033f8
mov byte [rbp + rax], r8b
jmp 0x140103439
cmp r8b, 0x20
jle 0x14010340e
mov byte [rbp + rax], r8b
inc rax
test bl, bl
jne 0x14010343c
mov bl, 1
jmp 0x14010343c
cmp bl, 1
jne 0x14010343c
cmp byte [rdx + rdi - 1], 0x22
je 0x14010343c
movzx ecx, byte [rdx + rdi + 1]
cmp cl, 0x22
je 0x14010343c
cmp cl, 0x20
jle 0x14010343c
mov ecx, 8
test r9b, r9b
cmovne ecx, r14d
mov byte [rbp + rax], cl
inc rax
inc rdx
cmp rdx, r10
jb 0x140103382
cmp rax, 0x7800
mov esi, dword [rsp + 0x38]
mov r14d, dword [rsp + 0x34]
jae 0x14010349e
mov byte [rbp + rax], 0
movsxd r8, esi
lea r9, [rbp]
mov edx, 0xfa5
mov rcx, r12
call fcn.14000f5d0
inc esi
mov dword [rsp + 0x38], esi
mov edx, dword [rsp + 0x30]
inc edx
mov dword [rsp + 0x30], edx
cmp edx, 0x1c
jge 0x1401034a4
mov rax, qword [rsp + 0x40]
jmp 0x1401030a0
lea rcx, str.list_T__too_long
call fcn.140145858
int3
call fcn.14016881c
int3
mov r8d, dword [r13 + 0x1a47f4]
lea rdx, [0x14021cb34]
lea rcx, [rbp - 0x68]
call fcn.14000d9a0
lea r9, [rbp - 0x68]
lea r8, str.userDefine.forcePureLC
mov edx, 0xfa4
mov rcx, r12
call fcn.14000f5d0
mov r8d, dword [r13 + 0x1a47f8]
lea rdx, [0x14021cb34]
lea rcx, [rbp - 0x68]
call fcn.14000d9a0
lea r9, [rbp - 0x68]
lea r8, str.userDefine.decimalSeparator
mov edx, 0xfa4
mov rcx, r12
call fcn.14000f5d0
lea r8, [r13 + 0x788]
cmp qword [r8 + 0x18], 8
jb 0x140103513
mov r8, qword [r8]
lea rdx, str._llu
lea rcx, [rbp - 0x68]
call fcn.14000d9a0
lea r9, [rbp - 0x68]
lea r8, str.userDefine.udlName
mov edx, 0xfa4
mov rcx, r12
call fcn.14000f5d0
mov r8, qword [r12 + 0x38]
lea rdx, str._llu
lea rcx, [rbp - 0x68]
call fcn.14000d9a0
lea r9, [rbp - 0x68]
lea r8, str.userDefine.currentBufferID
mov edx, 0xfa4
mov rcx, r12
call fcn.14000f5d0
cmp dword [r13], 0xffffffff
je 0x1401035ce
mov r8d, r15d
lea rdx, str.userDefine.nesting._02d
lea rcx, [rbp - 0x28]
call fcn.14000d9a0
mov r8d, dword [r13 + 0x30]
lea rdx, [0x14021cb34]
lea rcx, [rbp - 0x68]
call fcn.14000d9a0
lea r9, [rbp - 0x68]
lea r8, [rbp - 0x28]
mov edx, 0xfa4
mov rcx, r12
call fcn.14000f5d0
lea rax, [rsp + 0x58]
mov qword [rsp + 0x40], rax
mov rdx, r13
lea rcx, [rsp + 0x58]
call fcn.140046450
nop
mov rdx, rax
mov rcx, r12
call fcn.140102700
inc r15d
add r13, 0x40
cmp r15d, 0x18
jl 0x140103568
mov rcx, qword [rbp + 0x7800]
xor rcx, rsp
call fcn.140168660
mov rbx, qword [rsp + 0x7960]
add rsp, 0x7910
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret