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

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xb8
mov rsi, qword [rcx + 0x10]
xor edi, edi
xor r13b, r13b
mov qword [rsp + 0x80], rdi
mov rbp, rdx
mov byte [rsp + 0x100], r13b
mov rbx, rcx
mov dword [rsp + 0x74], edi
movsxd r11, dword [rsi + 0x90]
mov r12d, edi
mov dword [rsp + 0x70], edi
mov qword [rsp + 0xa8], rsi
mov dword [rsp + 0x78], r11d
cmp dword [rsi + 0x94], r11d
jg 0x1400ccc1c
xor r9d, r9d
mov dword [rsp + 0x20], edi
xor r8d, r8d
lea edx, [rdi + 0xf]
mov rcx, rsi
call fcn.140048950
mov r9, qword [rsp + 0x118]
mov dword [rsp + 0x78], eax
jmp 0x1400ccc43
lea rcx, [r11 + r11*2]
lea eax, [r11 + 1]
mov dword [rsi + 0x90], eax
mov rax, qword [rsi + 0x88]
mov qword [rax + rcx*8], 0xf
mov qword [rax + rcx*8 + 8], rdi
mov qword [rax + rcx*8 + 0x10], rdi
mov rax, qword [rbp]
xor r11d, r11d
mov r14, qword [rbp + 0x20]
mov r15d, edi
mov r10, qword [r9 + 0x60]
movabs rcx, 0x8000000000000000
mov dword [rsp + 0x48], edi
mov rdx, qword [rax + 8]
movzx eax, byte [r9 + 0x40]
imul rdi, rax, 0x68
movsxd rax, dword [rbp + 0x14]
mov ebp, r11d
add rdi, rdx
mov qword [rsp + 0x90], rdx
imul rax, rax, 0x38
mov r8, qword [rdi + 0x28]
add rax, r14
mov qword [rsp + 0x88], r8
mov qword [rsp + 0x68], rdi
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x50], r10
mov qword [rsp + 0x60], r11
cmp r14, rax
jae 0x1400cd0d1
test byte [r14 + 0x12], 2
mov rdi, qword [r14]
jne 0x1400ccf69
movzx r8d, byte [r9 + 0x40]
mov rcx, rdi
call fcn.1400663d0
test eax, eax
je 0x1400ccf5f
test rdi, rdi
je 0x1400cccf2
mov rcx, qword [rbx]
xor r9d, r9d
xor r8d, r8d
mov rdx, rdi
call fcn.1400646f0
mov rbp, rax
xor edi, edi
jmp 0x1400cccf5
mov rbp, rdi
mov r15, qword [rbx]
test r12, r12
jne 0x1400ccd0d
mov r12, rbp
mov qword [rsp + 0x80], rbp
jmp 0x1400ccf55
test rbp, rbp
je 0x1400ccf55
mov eax, dword [r12 + 4]
or eax, dword [rbp + 4]
and eax, 0x20000003
cmp eax, 0x20000000
jne 0x1400cce9d
cmp byte [rbx + 0x134], 2
jae 0x1400cce9d
test r15, r15
je 0x1400ccd4f
mov edx, 0x18
mov rcx, r15
call fcn.14001aa30
jmp 0x1400ccd59
mov ecx, 0x18
call fcn.14001a280
mov rcx, rax
test rax, rax
je 0x1400ccd83
mov rax, qword [rbx + 0xc8]
mov qword [rcx], rax
mov qword [rbx + 0xc8], rcx
mov qword [rcx + 8], r12
lea r12, [fcn.140064590]
mov qword [rcx + 0x10], r12
jmp 0x1400ccd95
mov rcx, qword [rbx]
mov rdx, r12
call fcn.140064430
lea r12, [fcn.140064590]
mov rcx, qword [rbx]
test rcx, rcx
je 0x1400ccda9
mov edx, 0x18
call fcn.14001aa30
jmp 0x1400ccdb3
mov ecx, 0x18
call fcn.14001a280
mov rcx, rax
test rax, rax
je 0x1400ccdd6
mov rax, qword [rbx + 0xc8]
mov qword [rcx], rax
mov qword [rbx + 0xc8], rcx
mov qword [rcx + 8], rbp
mov qword [rcx + 0x10], r12
jmp 0x1400ccde1
mov rcx, qword [rbx]
mov rdx, rbp
call fcn.140064430
lea rdx, [rsp + 0x58]
mov dword [rsp + 0x58], edi
lea rcx, [0x1400fbf18]
call fcn.14001f980
test eax, eax
mov edi, eax
mov eax, 0x48
mov edx, 0x4a
cmovne edx, eax
mov rcx, r15
call fcn.14001aa30
mov qword [rsp + 0x80], rax
mov r12, rax
test rax, rax
je 0x1400ccf55
xorps xmm0, xmm0
xor eax, eax
movups xmmword [r12], xmm0
movups xmmword [r12 + 0x10], xmm0
movups xmmword [r12 + 0x20], xmm0
movups xmmword [r12 + 0x30], xmm0
mov qword [r12 + 0x40], rax
mov byte [r12], 0x9b
mov word [r12 + 0x32], 0xffff
test edi, edi
je 0x1400cce80
mov eax, dword [rsp + 0x58]
mov ecx, 0x20800800
test eax, eax
mov dword [r12 + 8], eax
mov edx, 0x10800800
mov dword [r12 + 0x28], 1
cmovne ecx, edx
or dword [r12 + 4], ecx
jmp 0x1400ccf55
lea rax, [r12 + 0x48]
mov qword [r12 + 8], rax
mov word [rax], 0x30
mov dword [r12 + 0x28], 1
jmp 0x1400ccf55
mov edx, 0x48
mov rcx, r15
call fcn.14001aa30
mov rdi, rax
test rax, rax
je 0x1400ccf34
xor eax, eax
xorps xmm0, xmm0
movups xmmword [rdi], xmm0
movups xmmword [rdi + 0x10], xmm0
movups xmmword [rdi + 0x20], xmm0
movups xmmword [rdi + 0x30], xmm0
mov qword [rdi + 0x40], rax
mov byte [rdi], 0x2c
mov word [rdi + 0x32], 0xffff
mov qword [rdi + 0x18], rbp
mov edx, dword [rbp + 4]
and edx, 0x400208
or edx, dword [rdi + 4]
mov dword [rdi + 4], edx
mov ecx, dword [rbp + 0x28]
inc ecx
mov dword [rdi + 0x28], ecx
mov qword [rdi + 0x10], r12
mov eax, dword [r12 + 4]
and eax, 0x400208
or eax, edx
mov dword [rdi + 4], eax
mov eax, dword [r12 + 0x28]
cmp eax, ecx
jl 0x1400ccf13
inc eax
mov dword [rdi + 0x28], eax
mov rax, qword [rbx]
mov r8d, dword [rax + 0x94]
cmp dword [rdi + 0x28], r8d
jle 0x1400ccf4a
lea rdx, str.Expression_tree_is_too_large__maximum_depth__d_
mov rcx, rbx
call fcn.14001e5a0
jmp 0x1400ccf4a
mov rcx, qword [rbx]
mov rdx, r12
call fcn.140064430
mov rcx, qword [rbx]
mov rdx, rbp
call fcn.140064430
mov r12, rdi
mov qword [rsp + 0x80], rdi
mov rbp, qword [rsp + 0x60]
mov r15d, dword [rsp + 0x48]
mov rax, qword [rsp + 0x40]
mov r10, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x68]
mov edx, dword [rdi + 0x4c]
cmp dword [r14 + 0x1c], edx
jne 0x1400cd09f
test byte [r14 + 0x14], 0x82
je 0x1400cd09f
movzx ecx, byte [rdi + 0x44]
test cl, 0x58
je 0x1400ccfb8
mov rax, qword [r14]
mov r8d, dword [rax + 4]
test r8b, 3
je 0x1400cd09a
cmp dword [rax + 0x34], edx
jne 0x1400cd09a
test cl, 0x18
je 0x1400ccfb8
test r8b, 2
jne 0x1400cd09a
mov rax, qword [rsp + 0x110]
test qword [r14 + 0x28], rax
jne 0x1400cd09a
movsxd rax, dword [r14 + 0x20]
test eax, eax
js 0x1400cd09a
lea rdx, [rax + rax*2]
mov rax, qword [rdi + 0x28]
mov rcx, qword [rax + 8]
movzx edx, byte [rcx + rdx*8 + 0xc]
mov rcx, qword [r14]
call fcn.140062850
test eax, eax
je 0x1400cd095
movsxd rcx, dword [r14 + 0x20]
cmp ecx, 0x40
jl 0x1400cd00c
movabs rdi, 0x8000000000000000
jmp 0x1400cd014
mov edi, 1
shl rdi, cl
test r13b, r13b
jne 0x1400cd044
mov rax, qword [rsp + 0x88]
lea rcx, [rcx + rcx*2]
lea rdx, str.automatic_index_on__s__s_
mov r9, qword [rax + 8]
mov r8, qword [rax]
mov r9, qword [r9 + rcx*8]
mov ecx, 0x11c
call fcn.14001d450
mov r13b, 1
test rbp, rdi
jne 0x1400cd090
mov rdx, qword [rsp + 0x50]
lea ebp, [r15 + 1]
mov rcx, qword [rbx]
mov r8d, ebp
call fcn.1400cebf0
test eax, eax
jne 0x1400cdad8
mov r10, qword [rsp + 0x50]
movsxd rcx, r15d
mov r15d, ebp
mov dword [rsp + 0x48], ebp
mov rbp, qword [rsp + 0x60]
mov rax, qword [r10 + 0x48]
or rbp, rdi
mov rdi, qword [rsp + 0x68]
mov qword [rsp + 0x60], rbp
mov qword [rax + rcx*8], r14
jmp 0x1400cd09a
mov rdi, qword [rsp + 0x68]
mov r10, qword [rsp + 0x50]
mov rax, qword [rsp + 0x40]
mov rdx, qword [rsp + 0x90]
add r14, 0x38
mov r9, qword [rsp + 0x118]
cmp r14, rax
jb 0x1400cccb2
mov r8, qword [rsp + 0x88]
xor r11d, r11d
movabs rcx, 0x8000000000000000
mov word [r10 + 0x3c], r15w
mov word [r10 + 0x18], r15w
mov dword [r10 + 0x38], 0x4241
cmp byte [r8 + 0x3f], 2
jne 0x1400cd0f3
mov rbp, 0xffffffffffffffff
jmp 0x1400cd0fd
not rbp
or rbp, rcx
and rbp, qword [rdi + 0x58]
movsx eax, word [r8 + 0x36]
mov edi, 0x3f
mov qword [rsp + 0x60], rbp
mov edx, r11d
cmp di, ax
jl 0x1400cd120
mov edi, eax
test eax, eax
jle 0x1400cd13b
nop word [rax + rax]
mov ecx, r15d
mov eax, edx
inc r15d
bt rbp, rax
cmovae r15d, ecx
inc edx
cmp edx, edi
jl 0x1400cd120
mov dword [rsp + 0x48], r15d
mov rax, qword [rsp + 0x68]
cmp qword [rax + 0x58], 0
jge 0x1400cd158
movsx eax, word [r8 + 0x36]
add r15d, 0xffffffc1
add r15d, eax
mov dword [rsp + 0x48], r15d
mov rcx, qword [rbx]
lea ebp, [r15 + 1]
movsx r14d, bp
lea eax, [r14*4 + 9]
add eax, r14d
and eax, 0xfffffff8
lea eax, [rax + r14*8]
add eax, 0x70
movsxd r13, eax
test rcx, rcx
je 0x1400cd18a
mov rdx, r13
call fcn.14001aa30
jmp 0x1400cd192
mov rcx, r13
call fcn.14001a280
mov r15, rax
test rax, rax
je 0x1400cdad8
mov r8, r13
xor edx, edx
mov rcx, rax
call sub.VCRUNTIME140.dll_memset
mov r9d, dword [rsp + 0x48]
lea rax, [r15 + 0x70]
mov r11, qword [rsp + 0x88]
xor r10d, r10d
mov qword [r15 + 0x40], rax
mov r13d, r10d
movsx r8, bp
mov word [r15 + 0x60], bp
lea rbp, str.BINARY
mov word [r15 + 0x5e], r9w
mov qword [rsp + 0xa0], r10
lea rdx, [rax + r8*8]
lea eax, [r14 + 1]
mov qword [r15 + 0x10], rdx
mov r14, qword [rsp + 0x108]
movsxd rcx, eax
lea rax, [rdx + rcx*2]
mov qword [r15 + 8], rax
lea rax, [rax + r8*2]
mov qword [r15 + 0x38], rax
mov rax, qword [rsp + 0x50]
mov qword [rax + 0x20], r15
lea rax, str.auto_index
mov qword [r15], rax
mov rax, qword [rsp + 0x40]
mov qword [r15 + 0x18], r11
mov r14, qword [r14 + 0x20]
cmp r14, rax
jae 0x1400cd409
mov rsi, qword [rsp + 0x68]
mov r12, qword [rsp + 0x110]
mov qword [rsp + 0x90], r10
mov qword [rsp + 0x98], r10
mov edx, dword [rsi + 0x4c]
cmp dword [r14 + 0x1c], edx
jne 0x1400cd3d5
test byte [r14 + 0x14], 0x82
je 0x1400cd3d5
movzx ecx, byte [rsi + 0x44]
test cl, 0x58
je 0x1400cd29f
mov rax, qword [r14]
mov r8d, dword [rax + 4]
test r8b, 3
je 0x1400cd3d0
cmp dword [rax + 0x34], edx
mov rax, qword [rsp + 0x40]
jne 0x1400cd3d5
test cl, 0x18
je 0x1400cd29f
test r8b, 2
jne 0x1400cd3d5
mov dword [rsp + 0x58], edi
test qword [r14 + 0x28], r12
jne 0x1400cd3d5
movsxd rax, dword [r14 + 0x20]
test eax, eax
js 0x1400cd3d0
lea rdx, [rax + rax*2]
mov rax, qword [rsi + 0x28]
mov rcx, qword [rax + 8]
movzx edx, byte [rcx + rdx*8 + 0xc]
mov rcx, qword [r14]
call fcn.140062850
test eax, eax
je 0x1400cd3d0
mov ecx, dword [r14 + 0x20]
cmp ecx, 0x40
jl 0x1400cd2ef
movabs rax, 0x8000000000000000
jmp 0x1400cd2f7
mov eax, 1
shl rax, cl
mov r8, qword [rsp + 0xa0]
test r8, rax
jne 0x1400cd3d0
mov rbp, qword [r14]
or r8, rax
mov rax, qword [r15 + 8]
mov rdx, qword [rsp + 0x98]
mov qword [rsp + 0xa0], r8
mov word [rdx + rax], cx
test dword [rbp + 4], 0x400
je 0x1400cd339
mov rdi, qword [rbp + 0x10]
mov rdx, qword [rbp + 0x18]
jmp 0x1400cd341
mov rdi, qword [rbp + 0x18]
mov rdx, qword [rbp + 0x10]
test dword [rdx + 4], 0x200
jne 0x1400cd368
test rdi, rdi
je 0x1400cd358
test dword [rdi + 4], 0x200
jne 0x1400cd365
mov rcx, rbx
call fcn.140062640
test rax, rax
jne 0x1400cd375
mov rdx, rdi
mov rcx, rbx
call fcn.140062640
test rax, rax
je 0x1400cd37a
mov rcx, qword [rax]
jmp 0x1400cd381
lea rcx, str.BINARY
mov r8, qword [rsp + 0x90]
inc r13d
mov rax, qword [r15 + 0x40]
add qword [rsp + 0x98], 2
mov qword [r8 + rax], rcx
add r8, 8
mov rcx, qword [rbp + 0x10]
mov ebp, dword [rsp + 0x58]
mov edi, ebp
mov qword [rsp + 0x90], r8
test rcx, rcx
je 0x1400cd3d0
call fcn.140062330
cmp al, 0x42
mov rax, qword [rsp + 0x40]
je 0x1400cd3d5
mov byte [rsp + 0x100], 1
jmp 0x1400cd3d5
mov rax, qword [rsp + 0x40]
add r14, 0x38
cmp r14, rax
jb 0x1400cd250
mov rsi, qword [rsp + 0xa8]
lea rbp, str.BINARY
mov r12, qword [rsp + 0x80]
xor r10d, r10d
mov r9d, dword [rsp + 0x48]
mov r11, qword [rsp + 0x88]
mov ecx, r10d
test edi, edi
jle 0x1400cd451
mov r10, qword [rsp + 0x60]
movsxd rax, r13d
lea rdx, [rax*8]
lea r8, [rax + rax]
mov eax, ecx
bt r10, rax
jae 0x1400cd448
mov rax, qword [r15 + 8]
inc r13d
mov word [r8 + rax], cx
add r8, 2
mov rax, qword [r15 + 0x40]
mov qword [rdx + rax], rbp
add rdx, 8
inc ecx
cmp ecx, edi
jl 0x1400cd424
xor r10d, r10d
mov r14, qword [rsp + 0x68]
cmp qword [r14 + 0x58], 0
jge 0x1400cd4ab
mov r8d, 0x3f
cmp r8w, word [r11 + 0x36]
jge 0x1400cd4ab
movsxd rax, r13d
lea rcx, [rax*8]
lea rdx, [rax + rax]
nop dword [rax]
mov rax, qword [r15 + 8]
lea rdx, [rdx + 2]
inc r13d
lea rcx, [rcx + 8]
mov word [rdx + rax - 2], r8w
inc r8d
mov rax, qword [r15 + 0x40]
mov qword [rcx + rax - 8], rbp
movsx eax, word [r11 + 0x36]
cmp r8d, eax
jl 0x1400cd480
mov rax, qword [r15 + 8]
lea edx, [r9 + 1]
movsxd rcx, r13d
mov word [rax + rcx*2], 0xffff
mov rax, qword [r15 + 0x40]
mov qword [rax + rcx*8], rbp
mov rbp, qword [rsp + 0x118]
mov eax, dword [rbx + 0x34]
mov dword [rbp + 8], eax
inc dword [rbx + 0x34]
movsxd rcx, dword [rsi + 0x90]
mov r8d, dword [rbp + 8]
cmp dword [rsi + 0x94], ecx
jg 0x1400cd4ff
mov r9d, edx
mov dword [rsp + 0x20], r10d
mov edx, 0x74
mov rcx, rsi
call fcn.140048950
jmp 0x1400cd52d
lea eax, [rcx + 1]
mov dword [rsi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8], 0x74
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r10d
mov qword [rax + rcx*8 + 0x10], r10
mov rdi, qword [rbx + 0x10]
mov rdx, r15
mov rcx, rbx
call fcn.1400842c0
mov rdx, rax
test rax, rax
je 0x1400cd578
mov rcx, qword [rdi]
cmp byte [rcx + 0x67], 0
je 0x1400cd55c
mov r8, rax
mov edx, 0xfffffff8
call fcn.1400493e0
jmp 0x1400cd578
movsxd rax, dword [rdi + 0x90]
lea rcx, [rax + rax*2]
mov rax, qword [rdi + 0x88]
mov byte [rax + rcx*8 - 0x17], 0xf8
mov qword [rax + rcx*8 - 8], rdx
mov rax, qword [rbx]
test dword [rax + 0x60], 0x80000
jne 0x1400cd5d9
cmp byte [rsp + 0x100], 0
je 0x1400cd5d9
mov rax, qword [rsp + 0x108]
mov r8, rbp
mov rcx, rbx
mov rdx, qword [rax]
call fcn.1400c1bf0
inc dword [rbx + 0x38]
mov edx, dword [rbx + 0x38]
mov dword [rbp + 0x34], edx
movsxd rcx, dword [rsi + 0x90]
cmp dword [rsi + 0x94], ecx
jg 0x1400cd620
xor r11d, r11d
mov r9d, edx
mov r8d, 0x2710
mov dword [rsp + 0x20], r11d
mov rcx, rsi
lea edx, [r11 + 0x4d]
call fcn.140048950
xor r9d, r9d
test byte [r14 + 0x48], 0x20
je 0x1400cd727
movsxd r8, dword [rsi + 0x90]
mov ebp, dword [r14 + 0x3c]
mov dword [rsp + 0x70], r8d
cmp dword [rsi + 0x94], r8d
jg 0x1400cd656
mov dword [rsp + 0x20], r9d
xor r8d, r8d
xor r9d, r9d
mov rcx, rsi
lea edx, [r9 + 0x47]
call fcn.140048950
mov dword [rsp + 0x70], eax
xor r9d, r9d
jmp 0x1400cd681
lea eax, [rcx + 1]
xor r9d, r9d
mov dword [rsi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8], 0x4d
mov dword [rax + rcx*8 + 4], 0x2710
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r9d
mov qword [rax + rcx*8 + 0x10], r9
jmp 0x1400cd5dc
lea rcx, [r8 + r8*2]
lea eax, [r8 + 1]
mov dword [rsi + 0x90], eax
mov rax, qword [rsi + 0x88]
mov qword [rax + rcx*8], 0x47
mov qword [rax + rcx*8 + 8], 0
mov qword [rax + rcx*8 + 0x10], r9
movsxd rcx, dword [rsi + 0x90]
mov edx, dword [r14 + 0x38]
cmp dword [rsi + 0x94], ecx
jg 0x1400cd6af
xor r9d, r9d
mov dword [rsp + 0x20], edx
mov r8d, ebp
mov rcx, rsi
lea edx, [r9 + 0xb]
call fcn.140048950
xor r9d, r9d
jmp 0x1400cd6dc
lea eax, [rcx + 1]
mov dword [rsi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8], 0xb
mov dword [rax + rcx*8 + 4], ebp
mov dword [rax + rcx*8 + 8], r9d
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], r9
movsxd rdi, dword [rsi + 0x90]
cmp dword [rsi + 0x94], edi
jg 0x1400cd706
mov dword [rsp + 0x20], r9d
mov r8d, ebp
xor r9d, r9d
mov rcx, rsi
lea edx, [r9 + 0xc]
call fcn.140048950
mov edi, eax
jmp 0x1400cd781
lea eax, [rdi + 1]
mov dword [rsi + 0x90], eax
lea rcx, [rdi + rdi*2]
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8], 0xc
mov dword [rax + rcx*8 + 4], ebp
jmp 0x1400cd773
movsxd rdi, dword [rsi + 0x90]
mov edx, dword [rbp + 4]
cmp dword [rsi + 0x94], edi
jg 0x1400cd754
mov dword [rsp + 0x20], r9d
mov r8d, edx
xor r9d, r9d
mov rcx, rsi
lea edx, [r9 + 0x24]
call fcn.140048950
mov edi, eax
jmp 0x1400cd781
lea eax, [rdi + 1]
mov dword [rsi + 0x90], eax
lea rcx, [rdi + rdi*2]
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8], 0x24
mov dword [rax + rcx*8 + 4], edx
mov qword [rax + rcx*8 + 0x10], r9
mov qword [rax + rcx*8 + 8], 0
mov eax, 0x10
test r12, r12
je 0x1400cd7b1
dec dword [rbx + 0x44]
mov r9d, eax
mov r8d, dword [rbx + 0x44]
mov rdx, r12
mov rcx, rbx
mov dword [rsp + 0x74], r8d
call fcn.14006da00
mov rcx, qword [rsp + 0x50]
or dword [rcx + 0x38], 0x20000
movzx eax, byte [rbx + 0x1f]
test al, al
jne 0x1400cd7c1
inc dword [rbx + 0x38]
mov ebp, dword [rbx + 0x38]
jmp 0x1400cd7d0
dec al
movzx eax, al
mov byte [rbx + 0x1f], al
mov ebp, dword [rbx + rax*4 + 0xe8]
mov r14, qword [rsp + 0x118]
xor r11d, r11d
mov dword [rsp + 0x38], r11d
mov r9d, ebp
mov qword [rsp + 0x30], r11
mov rdx, r15
mov qword [rsp + 0x28], r11
mov rcx, rbx
mov r8d, dword [r14 + 4]
mov dword [rsp + 0x20], r11d
call fcn.140087590
mov edx, dword [r14 + 0x34]
mov r15d, eax
test edx, edx
je 0x1400cd842
mov rax, qword [rsp + 0x50]
movsxd rcx, dword [rsi + 0x90]
movzx r8d, word [rax + 0x18]
cmp dword [rsi + 0x94], ecx
jg 0x1400cd872
mov dword [rsp + 0x28], r8d
xor r9d, r9d
mov r8d, edx
mov dword [rsp + 0x20], r15d
mov edx, IStream_Read
mov rcx, rsi
call fcn.1400489b0
xor r9d, r9d
movsxd rcx, dword [rsi + 0x90]
mov edx, dword [r14 + 8]
cmp dword [rsi + 0x94], ecx
jg 0x1400cd8a5
mov dword [rsp + 0x20], r9d
mov r8d, edx
mov r9d, ebp
mov edx, 0x8a
mov rcx, rsi
call fcn.140048950
jmp 0x1400cd8d2
lea eax, [rcx + 1]
xor r9d, r9d
mov dword [rsi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8], 0xfdb7
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], r9d
mov dword [rax + rcx*8 + 0xc], r15d
mov dword [rax + rcx*8 + 0x10], r8d
jmp 0x1400cd845
lea eax, [rcx + 1]
mov dword [rsi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8], 0x8a
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], ebp
mov dword [rax + rcx*8 + 0xc], r9d
mov qword [rax + rcx*8 + 0x10], r9
movsxd rax, dword [rsi + 0x90]
test eax, eax
jle 0x1400cd8ef
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x88]
mov word [rax + rcx*8 - 0x16], 0x10
test r12, r12
je 0x1400cd923
mov rcx, qword [rsi + 0x18]
mov edx, dword [rsp + 0x74]
not edx
mov eax, dword [rcx + 0x48]
add eax, dword [rcx + 0x44]
jns 0x1400cd913
mov r8d, edx
mov rdx, rsi
call fcn.140049110
jmp 0x1400cd923
mov rcx, qword [rcx + 0x50]
mov eax, dword [rsi + 0x90]
movsxd rdx, edx
mov dword [rcx + rdx*4], eax
mov rax, qword [rsp + 0x68]
lea r14, [0x140120770]
test byte [rax + 0x48], 0x20
je 0x1400cd9f0
mov rax, qword [rsi]
cmp byte [rax + 0x67], 0
je 0x1400cd947
mov rcx, r14
jmp 0x1400cd95b
movsxd rax, dword [rsp + 0x70]
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x88]
lea rcx, [rax + rcx*8]
mov r8, qword [rsp + 0x118]
lea eax, [r15 + r13]
mov r15, qword [rsp + 0x68]
mov edx, edi
mov dword [rcx + 8], eax
mov rcx, rbx
mov eax, dword [r8 + 8]
mov r9d, dword [r15 + 0x40]
mov r8d, dword [r8 + 4]
mov dword [rsp + 0x20], eax
call fcn.1400ccad0
movsxd rcx, dword [rsi + 0x90]
xor r11d, r11d
cmp dword [rsi + 0x94], ecx
jg 0x1400cd9bc
mov r9d, edi
mov dword [rsp + 0x20], r11d
xor r8d, r8d
lea edx, [r11 + 9]
mov rcx, rsi
call fcn.140048950
and dword [r15 + 0x48], 0xffffffdf
jmp 0x1400cda72
lea eax, [rcx + 1]
mov dword [rsi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x88]
mov qword [rax + rcx*8], 9
mov dword [rax + rcx*8 + 8], edi
mov dword [rax + rcx*8 + 0xc], r11d
mov qword [rax + rcx*8 + 0x10], r11
and dword [r15 + 0x48], 0xffffffdf
jmp 0x1400cda72
mov r8, qword [rsp + 0x118]
lea edx, [rdi + 1]
movsxd rcx, dword [rsi + 0x90]
xor r11d, r11d
mov r8d, dword [r8 + 4]
cmp dword [rsi + 0x94], ecx
jg 0x1400cda27
mov r9d, edx
mov dword [rsp + 0x20], r11d
lea edx, [r11 + 0x27]
mov rcx, rsi
call fcn.140048950
jmp 0x1400cda55
lea eax, [rcx + 1]
mov dword [rsi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rsi + 0x88]
mov dword [rax + rcx*8], 0x27
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r11d
mov qword [rax + rcx*8 + 0x10], r11
movsxd rax, dword [rsi + 0x90]
test eax, eax
jle 0x1400cda72
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x88]
mov word [rax + rcx*8 - 0x16], 3
mov rax, qword [rsi]
mov edx, dword [rsi + 0x90]
cmp byte [rax + 0x67], 0
je 0x1400cda86
mov rax, r14
jmp 0x1400cda98
movsxd rax, edi
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x88]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
test ebp, ebp
je 0x1400cdab1
movzx eax, byte [rbx + 0x1f]
cmp al, 8
jae 0x1400cdab1
mov dword [rbx + rax*4 + 0xe8], ebp
inc byte [rbx + 0x1f]
mov rax, qword [rsi]
mov edx, dword [rsi + 0x90]
cmp byte [rax + 0x67], 0
jne 0x1400cdad4
movsxd rax, dword [rsp + 0x78]
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x88]
lea r14, [rax + rcx*8]
mov dword [r14 + 8], edx
test r12, r12
je 0x1400cdae8
mov rcx, qword [rbx]
mov rdx, r12
call fcn.140064430
add rsp, 0xb8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret