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

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x180
mov rax, qword [0x1403eaa10]
xor rax, rsp
mov qword [rsp + 0x170], rax
mov rsi, qword [rcx]
lea rax, [rcx + 0x158]
mov r11, rcx
mov r13, qword [r11 + 8]
mov r12, qword [rsi + 0x10]
movsxd r10, edx
xor ebp, ebp
lea r14, [rcx + 0x340]
mov qword [rsp + 0xa8], rax
mov rax, qword [rsi]
mov qword [rsp + 0x68], rcx
add r13, 8
mov rbx, r8
movsxd r8, dword [r11 + 0x54]
lea r9, [r10 + r10*4]
shl r9, 4
mov qword [rsp + 0xb0], rax
mov qword [rsp + 0xd0], rbx
add r14, r9
mov dword [rsp + 0x78], r10d
mov qword [rsp + 0xc8], rsi
movzx eax, byte [r14 + 0x24]
mov r15, qword [r14 + 0x40]
mov qword [rsp + 0x50], r12
imul rcx, rax, 0x78
add r13, rcx
mov qword [rsp + 0xe0], r14
mov r9d, dword [r13 + 0x48]
mov qword [rsp + 0x70], r15
mov edx, ebp
mov qword [rsp + 0xb8], r13
mov ecx, ebp
lea edi, [rbp + 1]
mov dword [rsp + 0x40], r9d
test r8, r8
jle 0x14026d747
lea rax, [r11 + 0x58]
cmp dword [rax], r9d
je 0x14026d876
inc rcx
inc edx
add rax, 4
cmp rcx, r8
jl 0x14026d730
mov rax, rbp
not rax
mov ecx, r10d
and rax, rbx
mov qword [r14 + 0x48], rax
mov rbx, qword [r11 + 0x28]
shr rbx, cl
and ebx, edi
test byte [r15 + 0x28], 0x40
mov qword [rsp + 0x80], rbx
je 0x14026d77a
test byte [r11 + 0x32], 0x20
mov dword [rsp + 0x60], edi
je 0x14026d77e
mov dword [rsp + 0x60], ebp
mov rcx, r12
call fcn.140221a10
mov rcx, r12
mov edi, eax
mov dword [rsp + 0x58], eax
mov dword [r14 + 0x10], eax
mov dword [r14 + 0xc], eax
call fcn.140221a10
mov dword [rsp + 0x90], eax
mov dword [r14 + 0x18], eax
cmp byte [r14 + 0x24], bpl
jbe 0x14026d7d5
test byte [r13 + 0x3c], 8
je 0x14026d7d5
mov r9d, dword [rsi + 0x58]
xor r8d, r8d
mov rcx, r12
inc r9d
lea edx, [r8 + 0x19]
mov dword [rsp + 0x20], ebp
mov dword [rsi + 0x58], r9d
mov dword [r14], r9d
call fcn.140221790
mov ecx, dword [r13 + 0x40]
mov qword [rsp + 0xd8], 0xa
test cl, 4
je 0x14026d883
mov ebx, dword [r13 + 0x34]
mov eax, dword [r13 + 0x30]
xor r9d, r9d
lea edx, [r9 + 0x14]
mov rcx, r12
mov r8d, ebx
mov dword [rsp + 0x20], eax
call fcn.140221790
mov r9d, edi
mov r8d, ebx
mov edx, 0x16
mov rcx, r12
mov dword [rsp + 0x20], ebp
call fcn.140221790
mov r15, qword [rsp + 0x68]
mov dword [r14 + 0x2c], eax
mov byte [r14 + 0x25], 0x10
mov r13d, dword [rsp + 0x40]
lea rax, [r15 + 0x158]
mov edi, dword [rax + 0x14]
mov rbx, qword [rax + 0x20]
test edi, edi
jle 0x14026ead4
mov r13d, dword [rsp + 0x90]
test byte [rbx + 0x1c], 6
jne 0x14026eab9
mov rax, qword [rbx + 0x30]
test qword [r14 + 0x48], rax
je 0x14026ea95
mov byte [r15 + 0x36], 1
jmp 0x14026eab9
mov ecx, edx
mov rax, rdi
shl rax, cl
jmp 0x14026d74a
mov edx, dword [r15 + 0x28]
bt edx, 0xa
jae 0x14026db1f
movzx r13d, word [r15 + 0x2c]
mov ecx, dword [rsi + 0x48]
mov edx, dword [rsi + 0x4c]
inc dword [rsi + 0x74]
lea r8d, [r13 + 2]
mov dword [rsp + 0x44], edx
mov dword [rsp + 0x60], r8d
cmp r8d, ecx
jg 0x14026d8c0
lea eax, [r8 + rdx]
sub ecx, r8d
mov dword [rsi + 0x4c], eax
mov dword [rsi + 0x48], ecx
jmp 0x14026d8d0
mov eax, dword [rsi + 0x58]
lea edx, [rax + 1]
add eax, r8d
mov dword [rsp + 0x44], edx
mov dword [rsi + 0x58], eax
mov r12d, dword [r14 + 0xc]
mov ebx, ebp
test r13d, r13d
jle 0x14026d94d
mov rdi, rbp
mov rbp, qword [rsp + 0x70]
lea r15d, [rdx + 2]
nop word [rax + rax]
mov rax, qword [rbp + 0x30]
mov rdx, qword [rdi + rax]
test rdx, rdx
je 0x14026d93b
test byte [rdx + 0x1a], 1
mov rcx, rsi
je 0x14026d92b
lea eax, [r15 + rbx]
mov r9d, ebx
mov r8, r14
mov dword [rsp + 0x28], eax
mov rax, qword [rsp + 0x80]
mov dword [rsp + 0x20], eax
call fcn.14026c940
mov r12d, dword [r14 + 0x10]
jmp 0x14026d93b
mov rdx, qword [rdx]
lea r8d, [r15 + rbx]
mov rdx, qword [rdx + 0x18]
call fcn.1402384f0
inc ebx
add rdi, 8
cmp ebx, r13d
jl 0x14026d8f0
mov r15, qword [rsp + 0x70]
xor ebp, ebp
mov ebx, dword [rsp + 0x44]
mov r8d, dword [r15 + 0x18]
mov rcx, qword [rsp + 0x50]
mov r9d, ebx
mov edx, 0x19
mov dword [rsp + 0x20], ebp
call fcn.140221790
mov rcx, qword [rsp + 0x50]
lea r9d, [rbx + 1]
mov r8d, r13d
mov edx, 0x19
mov dword [rsp + 0x20], ebp
call fcn.140221790
cmp byte [r15 + 0x1c], 0
mov r8d, dword [rsp + 0x40]
mov rbx, qword [r15 + 0x20]
mov eax, 0xfffffff5
mov r9d, r12d
mov r12, qword [rsp + 0x50]
mov edi, 0xfffffffe
mov edx, 0xe
cmovne edi, eax
mov eax, dword [rsp + 0x44]
mov rcx, r12
mov dword [rsp + 0x20], eax
call fcn.140221790
mov r9d, edi
mov r8, rbx
mov rcx, r12
mov edx, eax
call fcn.140221fb0
mov byte [r15 + 0x1c], 0
mov r10d, ebp
test r13d, r13d
jle 0x14026da57
nop word [rax + rax]
cmp r10d, 0x10
jge 0x14026da57
movzx eax, word [r15 + 0x1e]
movzx ecx, r10w
shr ax, cl
test al, 1
je 0x14026da4f
mov rax, qword [r15 + 0x30]
movsxd rcx, r10d
mov rcx, qword [rax + rcx*8]
test rcx, rcx
je 0x14026da4f
movzx edx, byte [rcx + 0x1c]
test dl, 4
jne 0x14026da4f
cmp dword [r14], 0
je 0x14026da1e
mov rax, qword [rcx]
test byte [rax + 4], 1
je 0x14026da4f
mov rax, qword [rcx + 0x30]
test qword [r14 + 0x48], rax
jne 0x14026da4f
movsxd rax, dword [rcx + 8]
or dl, 4
mov byte [rcx + 0x1c], dl
test eax, eax
js 0x14026da4f
mov rcx, qword [rcx + 0x20]
imul rdx, rax, 0x38
add rdx, qword [rcx + 0x20]
dec byte [rdx + 0x1d]
jne 0x14026da4f
mov rcx, r14
call fcn.14026c820
inc r10d
cmp r10d, r13d
jl 0x14026d9e0
mov r13d, dword [rsp + 0x40]
mov r10d, dword [rsp + 0x60]
mov byte [r14 + 0x25], 0x96
mov dword [r14 + 0x28], r13d
mov eax, dword [r12 + 0x3c]
mov r11d, 0xa
mov dword [r14 + 0x2c], eax
mov eax, dword [rsp + 0x44]
lea rcx, [rsi + 0x94]
lea r9d, [rax - 1]
mov r8d, r11d
add r9d, r10d
nop
mov edx, dword [rcx]
cmp edx, eax
jl 0x14026dabd
cmp edx, r9d
jg 0x14026dabd
cmp byte [rcx - 6], 0
je 0x14026dabb
movzx eax, byte [rsi + 0x1f]
cmp al, 8
jae 0x14026dab3
movzx eax, al
mov dword [rsi + rax*4 + 0x28], edx
inc byte [rsi + 0x1f]
mov eax, dword [rsp + 0x44]
mov byte [rcx - 6], 0
mov dword [rcx], ebp
add rcx, 0x14
dec r8
jne 0x14026da90
cmp r10d, dword [rsi + 0x48]
jle 0x14026dad3
mov dword [rsi + 0x48], r10d
mov dword [rsi + 0x4c], eax
dec dword [rsi + 0x74]
lea rcx, [rsi + 0x94]
mov r8, r11
mov edx, dword [rcx]
test edx, edx
je 0x14026db0c
mov eax, dword [rsi + 0x74]
cmp dword [rcx - 4], eax
jle 0x14026db0c
cmp byte [rcx - 6], 0
je 0x14026db0a
movzx eax, byte [rsi + 0x1f]
cmp al, 8
jae 0x14026db06
movzx eax, al
mov dword [rsi + rax*4 + 0x28], edx
inc byte [rsi + 0x1f]
mov byte [rcx - 6], 0
mov dword [rcx], ebp
add rcx, 0x14
dec r8
jne 0x14026dae0
mov r15, qword [rsp + 0x68]
jmp 0x14026d836
mov eax, edx
and eax, 0x100
je 0x14026dbd8
test dl, 5
je 0x14026dbd8
mov rax, qword [r15 + 0x30]
xor r9d, r9d
mov r8, r14
mov rdx, qword [rax]
inc dword [rsi + 0x58]
mov ebx, dword [rsi + 0x58]
mov rax, qword [rsp + 0x80]
mov rcx, rsi
mov dword [rsp + 0x28], ebx
mov dword [rsp + 0x20], eax
call fcn.14026c940
mov edi, eax
cmp eax, ebx
je 0x14026db70
mov edx, ebx
mov rcx, rsi
call fcn.140239990
mov ebx, dword [r14 + 0x10]
mov r8d, edi
mov edx, 0x26
mov rcx, r12
mov r9d, ebx
mov dword [rsp + 0x20], ebp
call fcn.140221790
mov r13d, dword [rsp + 0x40]
mov r9d, ebx
mov edx, 0x43
mov rcx, r12
mov r8d, r13d
mov dword [rsp + 0x20], edi
call fcn.140221790
mov r8d, 1
mov edx, edi
mov rcx, rsi
call fcn.140236b10
mov r9d, edi
or r8d, 0xffffffff
mov edx, r13d
mov rcx, rsi
call fcn.1402369a0
mov r15, qword [rsp + 0x68]
mov byte [r14 + 0x25], 0x9b
jmp 0x14026d836
test eax, eax
je 0x14026ddbc
test dl, 2
je 0x14026ddbc
mov r8, qword [rsp + 0x70]
mov r15d, 0x9b
mov eax, ebp
mov r12, rbp
mov r13, rbp
test dl, 0x20
je 0x14026dc0d
mov rax, qword [r8 + 0x30]
mov r13, qword [rax]
mov eax, 1
test dl, 0x10
je 0x14026dc1d
movsxd rcx, eax
mov rax, qword [r8 + 0x30]
mov r12, qword [rax + rcx*8]
test ebx, ebx
je 0x14026dc2a
mov rax, r13
mov r13, r12
mov r12, rax
test r13, r13
je 0x14026dc9b
mov rbx, qword [r13]
lea r8, [rsp + 0x60]
mov rcx, rsi
mov rdx, qword [rbx + 0x18]
mov dword [rsp + 0x44], 0x3d3b3c3e
call fcn.140238390
movzx ecx, byte [rbx]
mov r9d, dword [rsp + 0x58]
movzx edx, byte [rsp + rcx - 0xc]
mov r8d, dword [rsp + 0x40]
mov rcx, qword [rsp + 0x50]
mov edi, eax
mov dword [rsp + 0x20], eax
call fcn.140221790
mov r8d, 1
mov edx, edi
mov rcx, rsi
call fcn.140236b10
mov edx, dword [rsp + 0x60]
mov rcx, rsi
call fcn.140239990
mov rdx, r13
mov rcx, r14
call fcn.14026c820
mov edi, dword [rsp + 0x58]
jmp 0x14026dcc0
mov r8d, dword [rsp + 0x40]
mov rcx, qword [rsp + 0x50]
mov edx, 0x69
mov eax, 0x66
test ebx, ebx
mov r9d, edi
cmovne edx, eax
mov dword [rsp + 0x20], ebp
call fcn.140221790
test r12, r12
je 0x14026dd16
mov rbx, qword [r12]
inc dword [rsi + 0x58]
mov r13d, dword [rsi + 0x58]
mov rdx, qword [rbx + 0x18]
mov r8d, r13d
mov rcx, rsi
call fcn.1402384f0
movzx eax, byte [rbx]
sub al, 0x50
test al, 0xfd
je 0x14026dcf3
mov eax, 0x52
lea r15d, [rax - 2]
jmp 0x14026dcfe
mov eax, 0x51
mov r15d, 0x53
cmp dword [rsp + 0x80], ebp
mov rdx, r12
mov rcx, r14
cmovne r15d, eax
call fcn.14026c820
jmp 0x14026dd19
mov r13d, ebp
cmp dword [rsp + 0x80], ebp
mov r12, qword [rsp + 0x50]
mov ecx, dword [r12 + 0x3c]
sete al
add al, 8
mov dword [r14 + 0x2c], ecx
mov byte [r14 + 0x25], al
mov eax, dword [rsp + 0x40]
mov dword [r14 + 0x28], eax
cmp r15d, 0x9b
je 0x14026ea88
inc dword [rsi + 0x58]
mov ebx, dword [rsi + 0x58]
mov r8d, eax
mov edx, 0x64
mov rcx, r12
mov r9d, ebx
mov dword [rsp + 0x20], ebp
call fcn.140221790
mov edx, dword [rsp + 0x40]
mov r9d, ebx
or r8d, 0xffffffff
mov rcx, rsi
call fcn.1402369a0
mov r9d, edi
mov r8d, r13d
mov edx, r15d
mov rcx, r12
mov dword [rsp + 0x20], ebx
call fcn.140221790
mov rdx, qword [r12 + 8]
mov r15, qword [rsp + 0x68]
mov r13d, dword [rsp + 0x40]
test rdx, rdx
je 0x14026d836
movsxd rax, dword [r12 + 0x3c]
lea rcx, [rax + rax*2]
mov byte [rdx + rcx*8 - 0x15], 0x6b
jmp 0x14026d836
mov eax, 0x200
test eax, edx
je 0x14026e468
mov eax, dword [r14 + 8]
mov r13, qword [rsp + 0x70]
movzx ebx, word [r15 + 0x18]
mov r10, qword [r13 + 0x20]
mov rdi, rbp
mov dword [rsp + 0x58], eax
mov rax, qword [rsp + 0x68]
xor r15b, r15b
mov qword [rsp + 0x98], rbp
test byte [rax + 0x32], 1
mov qword [rsp + 0x88], rbp
mov r9d, ebp
mov byte [rsp + 0x48], dil
mov byte [rsp + 0x49], dil
mov qword [rsp + 0xc0], r10
je 0x14026de31
cmp byte [rax + 0x34], dil
je 0x14026de31
mov r11d, 1
cmp word [r10 + 0x5e], bx
jbe 0x14026de37
movzx r15d, r11b
mov r9d, r11d
jmp 0x14026de37
mov r11d, 1
movzx r12d, bx
mov r8d, r12d
test dl, 0x20
je 0x14026de59
mov rax, qword [r13 + 0x30]
inc r8d
mov r9d, r11d
mov rdi, qword [rax + r12*8]
mov qword [rsp + 0x98], rdi
test dl, 0x10
je 0x14026dea5
mov rax, qword [r13 + 0x30]
movsxd rcx, r8d
mov r9d, r11d
mov rax, qword [rax + rcx*8]
mov qword [rsp + 0x88], rax
test rdi, rdi
jne 0x14026dea5
mov rax, qword [r10 + 8]
movzx ecx, bx
movsx rdx, word [rax + rcx*2]
test edx, edx
js 0x14026dea5
mov rax, qword [r10 + 0x18]
lea rdx, [rdx + rdx*2]
movzx r15d, r15b
mov rcx, qword [rax + 8]
add rdx, rdx
cmp byte [rcx + rdx*8 + 0x28], bpl
cmove r15d, r11d
mov r8d, dword [rsp + 0x80]
lea rax, [rsp + 0xb8]
mov rdx, r14
mov rcx, rsi
mov qword [rsp + 0x20], rax
call fcn.14026cba0
mov r9d, eax
mov dword [rsp + 0x78], eax
mov rax, qword [rsp + 0xb8]
test rax, rax
je 0x14026dee4
movzx ecx, bx
movzx edx, byte [rcx + rax]
mov byte [rsp + 0x48], dl
mov eax, dword [r14 + 0x10]
mov dword [rsp + 0x44], eax
mov rax, qword [rsp + 0xc0]
movzx r8d, word [rax + 0x5e]
cmp bx, r8w
jae 0x14026df1c
mov rax, qword [rax + 0x38]
mov edx, ebp
movzx ecx, bx
cmp byte [rcx + rax], dl
mov rax, qword [rsp + 0x80]
sete dl
cmp eax, edx
je 0x14026df2e
jmp 0x14026df24
mov rax, qword [rsp + 0x80]
test eax, eax
je 0x14026df56
cmp r8w, bx
jne 0x14026df56
mov rax, qword [rsp + 0x88]
mov rcx, rdi
mov byte [rsp + 0x49], r15b
mov qword [rsp + 0x88], rcx
xor r15b, r15b
mov rdi, rax
mov qword [rsp + 0x98], rax
jmp 0x14026df5e
mov rcx, qword [rsp + 0x88]
test rdi, rdi
je 0x14026df77
test byte [rdi + 0x1a], 0x28
jne 0x14026df77
mov dword [rsp + 0xa0], ebp
mov eax, 1
jmp 0x14026df83
mov eax, 1
mov dword [rsp + 0xa0], eax
test rcx, rcx
je 0x14026df92
test byte [rcx + 0x1a], 0x28
mov dword [rsp + 0x5c], ebp
je 0x14026df96
mov dword [rsp + 0x5c], eax
test rdi, rdi
jne 0x14026e168
test bx, bx
jne 0x14026e168
mov dword [rsp + 0x7c], ebp
mov edi, r12d
test r15b, r15b
je 0x14026dfdd
mov rcx, qword [rsp + 0x50]
xor r8d, r8d
add r9d, r12d
lea edx, [r8 + 0x1c]
mov dword [rsp + 0x20], ebp
call fcn.140221790
mov dword [rsp + 0xa0], ebp
mov dword [rsp + 0x7c], 1
inc edi
mov r9, qword [rsp + 0xb8]
movzx eax, r15b
mov r15d, dword [rsp + 0x78]
mov r8d, edi
mov rcx, rsi
mov edx, r15d
sub r8d, eax
call fcn.14026c880
movsxd rdx, dword [rsp + 0x80]
movsxd rax, dword [rsp + 0xa0]
movsxd rcx, dword [rsp + 0x7c]
mov r9d, dword [rsp + 0x44]
mov r8d, dword [rsp + 0x58]
lea rcx, [rax + rcx*2]
lea rbx, [0x140000000]
mov dword [rsp + 0x28], edi
lea rax, [rdx + rcx*2]
mov rcx, qword [rsp + 0x50]
mov dword [rsp + 0x20], r15d
movzx edx, byte [rax + rbx + 0x309b08]
call fcn.140221970
mov rdi, qword [rsp + 0x88]
test rdi, rdi
je 0x14026e202
mov rax, qword [rdi]
add r15d, r12d
mov r8d, 1
mov rbx, qword [rax + 0x18]
mov edx, r15d
mov rcx, rsi
call fcn.140236b10
mov r8d, r15d
mov rdx, rbx
mov rcx, rsi
call fcn.1402384f0
mov rcx, rbx
call fcn.140235660
test eax, eax
je 0x14026e0a9
mov r9d, dword [rsp + 0x44]
mov rcx, qword [rsp + 0x50]
mov r8d, r15d
mov edx, 0x4c
mov dword [rsp + 0x20], ebp
call fcn.140221790
movzx edx, byte [rsp + 0x48]
mov rcx, rbx
call fcn.140233a70
cmp al, 0x62
je 0x14026e157
movzx edx, byte [rsp + 0x48]
mov rcx, rbx
call fcn.140235690
test eax, eax
jne 0x14026e157
mov rcx, qword [rsi + 0x10]
lea rdi, [rsp + 0x48]
lea ebx, [rax + 1]
mov qword [rsp + 0xa0], rcx
cmp byte [rdi], 0x62
jne 0x14026e0f8
dec ebx
inc r15d
inc rdi
test ebx, ebx
jg 0x14026e0e7
movsxd rax, ebx
cmp rax, 1
jle 0x14026e113
cmp byte [rdi + rax - 1], 0x62
jne 0x14026e113
dec rax
dec ebx
cmp rax, 1
jg 0x14026e101
test ebx, ebx
jle 0x14026e14f
mov r9d, ebx
mov r8d, r15d
mov edx, 0x2f
mov dword [rsp + 0x20], ebp
call fcn.140221790
mov rcx, qword [rsp + 0xa0]
mov r9d, ebx
mov r8, rdi
or edx, 0xffffffff
call fcn.140221fb0
mov r8d, ebx
mov edx, r15d
mov rcx, rsi
call fcn.140236b10
mov rdi, qword [rsp + 0x88]
mov r15d, dword [rsp + 0x78]
lea rbx, [0x140000000]
jmp 0x14026e226
mov dword [rsp + 0x7c], eax
mov rax, qword [rsp + 0x98]
mov edi, r12d
test rax, rax
je 0x14026dfaf
mov rax, qword [rax]
lea r8d, [r12 + r9]
mov rcx, rsi
mov r13, qword [rax + 0x18]
mov rdx, r13
call fcn.1402384f0
mov rcx, r13
call fcn.140235660
test eax, eax
je 0x14026e1c2
mov r8d, dword [rsp + 0x78]
mov r9d, dword [rsp + 0x44]
mov rcx, qword [rsp + 0x50]
add r8d, r12d
mov edx, 0x4c
mov dword [rsp + 0x20], ebp
call fcn.140221790
mov rcx, qword [rsp + 0xb8]
test rcx, rcx
je 0x14026e1f8
movzx ebx, bx
add rbx, rcx
mov rcx, r13
movzx edx, byte [rbx]
call fcn.140233a70
cmp al, 0x62
jne 0x14026e1e6
mov byte [rbx], al
movzx edx, byte [rbx]
mov rcx, r13
call fcn.140235690
test eax, eax
je 0x14026e1f8
mov byte [rbx], 0x62
mov r13, qword [rsp + 0x70]
jmp 0x14026dfdb
cmp byte [rsp + 0x49], bpl
je 0x14026e229
mov rcx, qword [rsp + 0x50]
xor r8d, r8d
lea r9d, [r12 + r15]
lea edx, [r8 + 0x1c]
mov dword [rsp + 0x20], ebp
call fcn.140221790
mov dword [rsp + 0x5c], ebp
inc r12d
mov rdx, qword [rsp + 0xb8]
mov rcx, qword [rsp + 0xb0]
call fcn.140201d40
mov r10, qword [rsp + 0x50]
mov eax, dword [r10 + 0x3c]
mov dword [r14 + 0x2c], eax
test r12d, r12d
je 0x14026e28f
movsxd rax, dword [rsp + 0x5c]
movsxd rcx, dword [rsp + 0x80]
mov r9d, dword [rsp + 0x44]
lea rcx, [rax + rcx*2]
mov dword [rsp + 0x28], r12d
mov r12d, dword [rsp + 0x58]
movzx edx, byte [rcx + rbx + 0x30657c]
mov r8d, r12d
mov rcx, r10
mov dword [rsp + 0x20], r15d
call fcn.140221970
mov r10, qword [rsp + 0x50]
jmp 0x14026e294
mov r12d, dword [rsp + 0x58]
mov rdx, qword [rsp + 0x98]
mov rcx, r14
call fcn.14026c820
mov rdx, rdi
mov rcx, r14
call fcn.14026c820
cmp dword [rsp + 0x60], ebp
jne 0x14026e419
mov rbx, qword [rsp + 0xc0]
mov rbx, qword [rbx + 0x18]
test byte [rbx + 0x48], 0x20
jne 0x14026e318
inc dword [rsi + 0x58]
mov ebx, dword [rsi + 0x58]
mov r8d, r12d
mov edx, 0x6d
mov rcx, r10
mov r9d, ebx
mov dword [rsp + 0x20], ebp
call fcn.140221790
mov edx, dword [rsp + 0x40]
mov r9d, ebx
or r8d, 0xffffffff
mov rcx, rsi
call fcn.1402369a0
mov r8d, dword [rsp + 0x40]
mov rcx, qword [rsp + 0x50]
mov edx, 0x3f
mov dword [rsp + 0x20], ebp
call fcn.140221790
jmp 0x14026e419
mov rbx, qword [rbx + 0x10]
test rbx, rbx
je 0x14026e333
mov eax, dword [rbx + 0x64]
and al, 3
cmp al, 2
je 0x14026e333
mov rbx, qword [rbx + 0x28]
test rbx, rbx
jne 0x14026e321
movzx ecx, word [rbx + 0x5e]
mov edx, dword [rsi + 0x48]
mov r15d, dword [rsi + 0x4c]
cmp ecx, edx
jg 0x14026e350
lea eax, [rcx + r15]
sub edx, ecx
mov dword [rsi + 0x4c], eax
mov dword [rsi + 0x48], edx
jmp 0x14026e35c
mov eax, dword [rsi + 0x58]
lea r15d, [rax + 1]
add eax, ecx
mov dword [rsi + 0x58], eax
mov edi, ebp
cmp bp, word [rbx + 0x5e]
jae 0x14026e3f0
mov r13, qword [rsp + 0xc0]
mov rsi, qword [rsp + 0x50]
or r14d, 0xffffffff
nop dword [rax]
movzx r8d, word [r13 + 0x60]
mov edx, ebp
test r8d, r8d
jle 0x14026e3b1
mov rax, qword [rbx + 8]
mov r9, qword [r13 + 8]
movsxd rcx, edi
movzx r10d, word [rax + rcx*2]
nop dword [rax]
movsxd rax, edx
cmp r10w, word [r9 + rax*2]
je 0x14026e3b5
inc edx
cmp edx, r8d
jl 0x14026e3a0
movzx edx, r14w
lea eax, [r15 + rdi]
movsx r9d, dx
mov r8d, r12d
mov edx, 0x2e
mov rcx, rsi
mov dword [rsp + 0x20], eax
call fcn.140221790
movzx eax, word [rbx + 0x5e]
inc edi
cmp edi, eax
jl 0x14026e380
mov rsi, qword [rsp + 0xc8]
mov r14, qword [rsp + 0xe0]
mov r13, qword [rsp + 0x70]
movzx eax, word [rbx + 0x5e]
mov r9d, dword [rsp + 0x90]
mov r8d, dword [rsp + 0x40]
mov rcx, qword [rsp + 0x50]
mov dword [rsp + 0x28], eax
mov edx, 0x41
mov dword [rsp + 0x20], r15d
call fcn.140221970
test dword [r13 + 0x28], 0x1000
je 0x14026e42a
mov byte [r14 + 0x25], 0x9b
jmp 0x14026e43a
cmp dword [rsp + 0x80], ebp
sete al
add al, 8
mov byte [r14 + 0x25], al
mov r15, qword [rsp + 0x68]
mov dword [r14 + 0x28], r12d
movzx eax, byte [r13 + 0x2a]
and al, 1
mov byte [r14 + 0x26], al
test byte [r13 + 0x28], 0xf
mov r13d, dword [rsp + 0x40]
jne 0x14026d836
mov byte [r14 + 0x27], 1
jmp 0x14026d836
bt edx, 0xd
jae 0x14026ea26
mov edi, dword [rsi + 0x54]
inc dword [rsi + 0x58]
mov ebx, dword [rsi + 0x58]
mov rcx, qword [rsp + 0x50]
lea eax, [rdi + 1]
mov r12, rbp
mov qword [rsp + 0x70], rbp
mov dword [rsp + 0x44], edi
mov dword [rsp + 0x58], ebx
mov dword [rsi + 0x54], eax
mov dword [rsp + 0xa0], ebp
mov dword [rsp + 0x60], ebp
call fcn.140221a10
mov rcx, qword [r15 + 0x30]
mov r15, qword [rsp + 0x68]
mov dword [rsp + 0x7c], eax
mov rax, qword [rcx]
mov dword [rsp + 0x5c], ebp
mov rcx, qword [rax + 0x10]
mov byte [r14 + 0x25], 0x12
mov dword [r14 + 0x28], ebx
mov qword [rsp + 0xc0], rcx
movzx ecx, byte [r15 + 0x38]
mov r13, rbp
mov qword [rsp + 0x88], rax
cmp cl, 1
jbe 0x14026e90c
movzx ebx, cl
mov rcx, qword [rsp + 0xb0]
sub ebx, dword [rsp + 0x78]
dec ebx
imul edx, ebx, 0x78
sub edx, 0xffffff80
call fcn.140202010
mov rdx, rax
mov qword [rsp + 0x98], rax
test rax, rax
jne 0x14026e521
mov rax, qword [rsp + 0xd0]
jmp 0x14026ed1f
lea eax, [rbx + 1]
movzx ecx, al
mov rax, qword [rsp + 0xb8]
mov dword [rdx + 4], ecx
mov dword [rdx], ecx
movups xmm0, xmmword [rax]
movups xmmword [rdx + 8], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rdx + 0x18], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rdx + 0x28], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rdx + 0x38], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rdx + 0x48], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rdx + 0x58], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rdx + 0x68], xmm0
movsd xmm1, qword [rax + 0x70]
movsd qword [rdx + 0x78], xmm1
mov r10, qword [r15 + 8]
cmp ebx, 1
jl 0x14026e5f7
sub rdx, 0xffffffffffffff80
lea r8, [r14 + 0x74]
mov r9d, ebx
nop dword [rax]
movzx eax, byte [r8]
lea rdx, [rdx + 0x78]
lea r8, [r8 + 0x50]
imul rcx, rax, 0x78
movups xmm0, xmmword [rcx + r10 + 8]
movups xmmword [rdx - 0x78], xmm0
movups xmm1, xmmword [rcx + r10 + 0x18]
movups xmmword [rdx - 0x68], xmm1
movups xmm0, xmmword [rcx + r10 + 0x28]
movups xmmword [rdx - 0x58], xmm0
movups xmm1, xmmword [rcx + r10 + 0x38]
movups xmmword [rdx - 0x48], xmm1
movups xmm0, xmmword [rcx + r10 + 0x48]
movups xmmword [rdx - 0x38], xmm0
movups xmm1, xmmword [rcx + r10 + 0x58]
movups xmmword [rdx - 0x28], xmm1
movups xmm0, xmmword [rcx + r10 + 0x68]
movups xmmword [rdx - 0x18], xmm0
movsd xmm1, qword [rcx + r10 + 0x78]
movsd qword [rdx - 8], xmm1
dec r9
jne 0x14026e590
mov ebx, dword [rsp + 0x58]
test byte [r15 + 0x32], 8
jne 0x14026e630
mov eax, dword [rsi + 0x58]
xor r8d, r8d
mov dword [rsp + 0x20], ebp
inc eax
lea edx, [r8 + 0x1c]
lea ecx, [rax + 1]
mov r9d, eax
mov dword [rsp + 0xa0], eax
mov dword [rsp + 0x60], ecx
mov dword [rsi + 0x58], ecx
mov rcx, qword [rsp + 0x50]
call fcn.140221790
mov rcx, qword [rsp + 0x50]
xor r8d, r8d
mov r9d, ebx
lea edx, [r8 + 0x19]
mov dword [rsp + 0x20], ebp
call fcn.140221790
mov ecx, dword [r15 + 0x16c]
or r15d, 0xffffffff
mov dword [rsp + 0x80], eax
cmp ecx, 1
jle 0x14026e78e
mov ebx, ebp
test ecx, ecx
jle 0x14026e78e
mov r14, qword [rsp + 0x88]
mov r12, qword [rsp + 0xa8]
mov rsi, qword [rsp + 0xb0]
mov rdi, rbp
mov r8d, 0xfff
nop
mov rdx, qword [r12 + 0x20]
movsxd rax, ebx
mov r10, qword [rdi + rdx]
imul rcx, rax, 0x38
add rcx, rdx
cmp rcx, r14
je 0x14026e6e6
test byte [r10 + 4], 1
jne 0x14026e6e6
test byte [rdi + rdx + 0x1c], 0x12
jne 0x14026e6e6
test word [rdi + rdx + 0x1a], r8w
je 0x14026e6e6
xor r9d, r9d
xor r8d, r8d
mov rdx, r10
mov rcx, rsi
call fcn.1402349a0
mov rdx, r13
mov rcx, rsi
mov r8, rax
call fcn.140234400
mov r8d, 0xfff
mov r13, rax
inc ebx
add rdi, 0x38
cmp ebx, dword [r12 + 0x14]
jl 0x14026e690
mov rsi, qword [rsp + 0xc8]
mov r14, qword [rsp + 0xe0]
mov r12, rbp
test r13, r13
je 0x14026e78a
mov rcx, qword [rsi]
mov edx, 0x48
call fcn.140202010
mov rbx, rax
test rax, rax
je 0x14026e755
xor eax, eax
mov qword [rbx], rax
mov qword [rbx + 8], rax
mov qword [rbx + 0x10], rax
mov qword [rbx + 0x18], rax
mov qword [rbx + 0x20], rax
mov qword [rbx + 0x28], rax
mov qword [rbx + 0x30], rax
mov qword [rbx + 0x38], rax
mov qword [rbx + 0x40], rax
mov eax, 1
mov byte [rbx], 0x48
mov word [rbx + 0x32], r15w
mov dword [rbx + 0x28], eax
mov rcx, qword [rsi]
mov r9, r13
xor r8d, r8d
mov rdx, rbx
call fcn.140234170
test rbx, rbx
je 0x14026e787
mov rax, qword [rsi]
mov r8d, dword [rax + 0x74]
cmp dword [rbx + 0x28], r8d
jle 0x14026e787
lea rdx, str.Expression_tree_is_too_large__maximum_depth__d_
mov rcx, rsi
call fcn.140204930
mov r13, rbx
mov edi, dword [rsp + 0x44]
mov rax, qword [rsp + 0xc0]
mov r15d, ebp
cmp dword [rax + 0x14], ebp
jle 0x14026e955
mov ecx, dword [rsp + 0x40]
mov r12, rbp
mov edx, 0xf0
nop
mov rax, qword [rax + 0x20]
cmp dword [r12 + rax + 0xc], ecx
je 0x14026e7cd
mov r8d, 0x200
test word [r12 + rax + 0x1a], r8w
je 0x14026e933
mov r8, qword [r12 + rax]
test r13, r13
je 0x14026e7e4
test byte [r8 + 4], 1
jne 0x14026e7e4
mov qword [r13 + 0x10], r8
mov r8, r13
mov rbx, qword [rsp + 0x98]
mov dword [rsp + 0x30], edi
mov word [rsp + 0x28], dx
xor r9d, r9d
mov rcx, rsi
mov rdx, rbx
mov qword [rsp + 0x20], rbp
call fcn.140271aa0
mov rdi, rax
test rax, rax
je 0x14026e92a
movzx ecx, byte [r14 + 0x24]
mov r9d, dword [rsp + 0x78]
lea r8, [rax + 0x340]
mov word [rsp + 0x28], bp
mov dword [rsp + 0x20], ecx
mov rdx, rbx
mov rcx, rsi
call fcn.14026d320
mov rax, qword [rsp + 0x68]
test byte [rax + 0x32], 8
jne 0x14026e8af
mov rcx, qword [rsp + 0xc0]
mov r9d, dword [rsp + 0x40]
mov ebx, r15d
mov eax, dword [rcx + 0x14]
mov ecx, dword [rsp + 0x60]
mov byte [rsp + 0x28], bpl
dec eax
mov dword [rsp + 0x20], ecx
mov rcx, rsi
cmp r15d, eax
mov eax, 0xffffffff
cmove ebx, eax
mov r8d, eax
mov rax, qword [rsp + 0xb8]
mov rdx, qword [rax + 0x20]
call fcn.140236d50
mov rcx, qword [rsp + 0x50]
mov r8d, dword [rsp + 0xa0]
mov r9d, dword [rcx + 0x3c]
mov edx, 0x7e
mov dword [rsp + 0x28], ebx
add r9d, 2
mov dword [rsp + 0x20], eax
call fcn.140221970
mov r9d, dword [rsp + 0x7c]
mov r8d, dword [rsp + 0x58]
mov rcx, qword [rsp + 0x50]
mov edx, 0x11
mov dword [rsp + 0x20], ebp
call fcn.140221790
mov eax, dword [rsp + 0x5c]
cmp byte [rdi + 0x36], bpl
mov ecx, 1
cmovne eax, ecx
mov ecx, 0x200
mov dword [rsp + 0x5c], eax
mov rax, qword [rdi + 0x380]
test dword [rax + 0x28], ecx
je 0x14026e91d
test r15d, r15d
je 0x14026e901
mov rcx, qword [rsp + 0x70]
cmp qword [rax + 0x20], rcx
jne 0x14026e91d
mov rbx, qword [rax + 0x20]
mov qword [rsp + 0x70], rbx
jmp 0x14026e922
mov rax, qword [r15 + 8]
mov qword [rsp + 0x98], rax
jmp 0x14026e5fb
mov qword [rsp + 0x70], rbp
mov rcx, rdi
call fcn.140272430
mov ecx, dword [rsp + 0x40]
mov edx, 0xf0
mov rax, qword [rsp + 0xc0]
mov edi, dword [rsp + 0x44]
inc r15d
add r12, 0x38
cmp r15d, dword [rax + 0x14]
jl 0x14026e7b0
mov r12, qword [rsp + 0x70]
mov qword [r14 + 0x30], r12
test r12, r12
je 0x14026e966
mov eax, dword [rsp + 0x44]
mov dword [r14 + 8], eax
mov rbx, qword [rsp + 0xb0]
test r13, r13
je 0x14026e982
mov rdx, r13
mov rcx, rbx
mov qword [r13 + 0x10], rbp
call fcn.140234810
mov r12, qword [rsp + 0x50]
mov eax, dword [rsp + 0x80]
mov edx, dword [r12 + 0x3c]
cmp edx, eax
jbe 0x14026e9a4
lea rcx, [rax + rax*2]
mov rax, qword [r12 + 8]
mov dword [rax + rcx*8 + 4], edx
mov r9d, dword [r14 + 0xc]
xor r8d, r8d
mov rcx, r12
lea edx, [r8 + 0x10]
mov dword [rsp + 0x20], ebp
call fcn.140221790
mov r8, qword [r12 + 0x30]
or eax, 0xffffffff
sub eax, dword [rsp + 0x7c]
js 0x14026e9e0
mov rdx, qword [r8 + 0x80]
test rdx, rdx
je 0x14026e9e0
movsxd rcx, eax
mov eax, dword [r12 + 0x3c]
mov dword [rdx + rcx*4], eax
mov eax, dword [r12 + 0x3c]
mov r15, qword [rsp + 0x68]
dec eax
mov dword [r8 + 0x68], eax
cmp byte [r15 + 0x38], 1
jbe 0x14026ea07
mov rdx, qword [rsp + 0x98]
mov rcx, rbx
call fcn.140201d40
cmp dword [rsp + 0x5c], ebp
jne 0x14026d831
mov rdx, qword [rsp + 0x88]
mov rcx, r14
call fcn.14026c820
jmp 0x14026d831
mov r13d, dword [rsp + 0x40]
test cl, 8
je 0x14026ea3f
mov r15, qword [rsp + 0x68]
mov byte [r14 + 0x25], 0x9b
jmp 0x14026d836
lea rdx, [0x140000000]
movsxd rcx, ebx
mov r9d, edi
movzx eax, byte [rcx + rdx + 0x3061bc]
movzx edx, byte [rcx + rdx + 0x306624]
mov r8d, r13d
mov rcx, r12
mov dword [r14 + 0x28], r13d
mov dword [rsp + 0x20], ebp
mov byte [r14 + 0x25], al
call fcn.140221790
mov r15, qword [rsp + 0x68]
inc eax
mov byte [r14 + 0x27], 1
mov dword [r14 + 0x2c], eax
jmp 0x14026d836
mov r15, qword [rsp + 0x68]
mov r13d, eax
jmp 0x14026d836
cmp dword [r14], 0
mov rdx, qword [rbx]
je 0x14026eaa4
test byte [rdx + 4], 1
je 0x14026eab9
mov r9d, 8
mov r8d, r13d
mov rcx, rsi
call fcn.140238d80
or byte [rbx + 0x1c], 4
dec edi
add rbx, 0x38
test edi, edi
jg 0x14026d854
mov r13d, dword [rsp + 0x40]
mov rax, qword [rsp + 0xa8]
mov r12d, dword [rax + 0x14]
mov r15, qword [rax + 0x20]
test r12d, r12d
jle 0x14026ec2b
mov ecx, 0x402
nop word [rax + rax]
test byte [r15 + 0x1c], 6
jne 0x14026ec16
cmp word [r15 + 0x1a], cx
jne 0x14026ec16
cmp dword [r15 + 0xc], r13d
jne 0x14026ec16
cmp dword [r14], 0
jne 0x14026ec16
mov r9d, dword [r15 + 0x10]
mov r8d, dword [rsp + 0x40]
mov r13, qword [r15]
lea rcx, [rsp + 0xf0]
mov rdx, rax
mov qword [rsp + 0x28], rbp
mov rdi, rbp
mov dword [rsp + 0x20], 3
call fcn.14026a060
mov rbx, rax
test rax, rax
je 0x14026eb85
nop
mov rax, qword [rbx + 0x28]
test qword [rsp + 0xd0], rax
jne 0x14026eb70
test rax, rax
jne 0x14026eb69
test byte [rbx + 0x1a], 2
jne 0x14026eb88
test rdi, rdi
cmove rdi, rbx
lea rcx, [rsp + 0xf0]
call fcn.140269d80
mov rbx, rax
test rax, rax
jne 0x14026eb50
mov rbx, rdi
test rbx, rbx
je 0x14026ec09
test byte [rbx + 0x1c], 4
jne 0x14026ec09
mov rcx, qword [rsp + 0xb0]
mov edx, 0x48
call fcn.140202010
mov rdi, rax
test rax, rax
je 0x14026ec09
mov rcx, qword [rbx]
mov r8d, dword [rsp + 0x90]
mov r9d, 8
mov rdx, rdi
movups xmm0, xmmword [rcx]
movups xmmword [rax], xmm0
movups xmm1, xmmword [rcx + 0x10]
movups xmmword [rax + 0x10], xmm1
movups xmm0, xmmword [rcx + 0x20]
movups xmmword [rax + 0x20], xmm0
movups xmm1, xmmword [rcx + 0x30]
movups xmmword [rax + 0x30], xmm1
movsd xmm0, qword [rcx + 0x40]
mov rcx, rsi
movsd qword [rax + 0x40], xmm0
mov rax, qword [r13 + 0x10]
mov qword [rdi + 0x10], rax
call fcn.140238d80
mov rcx, qword [rsp + 0xb0]
mov rdx, rdi
call fcn.140201d40
mov rax, qword [rsp + 0xa8]
mov ecx, 0x402
mov r13d, dword [rsp + 0x40]
dec r12d
add r15, 0x38
test r12d, r12d
jg 0x14026eaf0
mov ebx, dword [r14]
test ebx, ebx
je 0x14026ed1b
mov r15, qword [rsp + 0x50]
mov eax, dword [r15 + 0x3c]
mov dword [r14 + 0x1c], eax
mov rax, qword [r15 + 0x30]
movsxd rdi, dword [r15 + 0x3c]
cmp dword [rax + 0x64], edi
jg 0x14026ec5c
mov rcx, r15
call fcn.1402216e0
test eax, eax
jne 0x14026ec88
mov rax, qword [r15 + 8]
inc dword [r15 + 0x3c]
lea rcx, [rdi + rdi*2]
mov word [rax + rcx*8], 0x19
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], 1
mov dword [rax + rcx*8 + 8], ebx
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
lea rcx, [rsi + 0x94]
mov eax, 0xa
mov edx, dword [rcx]
test edx, edx
je 0x14026ecc0
cmp byte [rcx - 6], 0
je 0x14026ecb6
movzx eax, byte [rsi + 0x1f]
cmp al, 8
jae 0x14026ecb2
movzx eax, al
mov dword [rsi + rax*4 + 0x28], edx
inc byte [rsi + 0x1f]
mov byte [rcx - 6], 0
mov rax, qword [rsp + 0xd8]
mov dword [rcx], ebp
add rcx, 0x14
dec rax
mov qword [rsp + 0xd8], rax
jne 0x14026ec94
mov rdi, qword [rsp + 0xa8]
cmp dword [rdi + 0x14], 0
mov rbx, qword [rdi + 0x20]
jle 0x14026ed1b
test byte [rbx + 0x1c], 6
jne 0x14026ed10
mov rax, qword [rbx + 0x30]
test qword [r14 + 0x48], rax
jne 0x14026ed10
mov r8d, dword [rsp + 0x90]
mov rdx, qword [rbx]
mov r9d, 8
mov rcx, rsi
call fcn.140238d80
or byte [rbx + 0x1c], 4
inc ebp
add rbx, 0x38
cmp ebp, dword [rdi + 0x14]
jl 0x14026ece3
mov rax, qword [r14 + 0x48]
mov rcx, qword [rsp + 0x170]
xor rcx, rsp
call fcn.140297ff0
mov rbx, qword [rsp + 0x1d0]
add rsp, 0x180
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret