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

Disassembly:
mov dword [rsp + 0x20], r9d
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x58]
sub rsp, 0x158
mov r12, qword [rbp + 0xc0]
lea rax, [r8 + 0x80]
mov r14, rdx
mov qword [rbp - 0x48], rax
mov rax, qword [rcx]
xor r10d, r10d
mov rdx, qword [r8 + 8]
mov r15, rcx
mov r11, qword [r12 + 0x60]
add rdx, 8
mov qword [rbp - 0x78], rax
mov edi, r9d
movzx eax, byte [r12 + 0x40]
mov rbx, r8
imul rcx, rax, 0x68
mov qword [rbp - 0x30], r10
add rdx, rcx
mov qword [rsp + 0x58], r10
mov qword [rsp + 0x40], r11
mov qword [rbp - 0x40], rdx
mov esi, dword [rdx + 0x44]
mov dword [rsp + 0x48], esi
cmp dword [r8 + 0x270], esi
jne 0x140224826
lea eax, [r10 + 1]
jmp 0x140224862
movsxd r8, dword [r8 + 0x26c]
mov r9d, 1
mov edx, r9d
cmp r8, rdx
jle 0x14022485b
mov ecx, r9d
lea rax, [rbx + 0x274]
cmp dword [rax], esi
je 0x1402248f5
inc edx
inc rcx
add rax, 4
cmp rcx, r8
jl 0x140224845
mov rax, r10
mov rdx, qword [rbp - 0x40]
not rax
mov ecx, edi
and rax, qword [rbp + 0xc8]
mov qword [r12 + 0x68], rax
mov r13d, dword [r15 + 0x44]
mov rsi, qword [rbx + 0x78]
dec r13d
mov dword [r15 + 0x44], r13d
shr rsi, cl
and esi, 1
mov dword [r12 + 0x10], r13d
mov dword [r12 + 0xc], r13d
mov eax, dword [r15 + 0x44]
dec eax
mov qword [rsp + 0x68], rsi
mov dword [r15 + 0x44], eax
mov dword [rbp - 0x50], eax
mov dword [r12 + 0x18], eax
cmp byte [r12 + 0x40], r10b
jbe 0x14022492d
test byte [rdx + 0x3c], 8
je 0x14022492d
mov edx, dword [r15 + 0x38]
inc edx
mov dword [r15 + 0x38], edx
mov dword [r12], edx
movsxd rcx, dword [r14 + 0x90]
cmp dword [r14 + 0x94], ecx
jg 0x140224902
xor r8d, r8d
mov dword [rsp + 0x20], r10d
mov r9d, edx
mov rcx, r14
lea edx, [r8 + 0x47]
call fcn.1401b8f70
mov r11, qword [rsp + 0x40]
xor r10d, r10d
jmp 0x14022492d
mov ecx, edx
mov rax, r9
shl rax, cl
jmp 0x14022485e
lea eax, [rcx + 1]
mov dword [r14 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r14 + 0x88]
mov qword [rax + rcx*8], 0x47
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r10d
mov qword [rax + rcx*8 + 0x10], r10
mov edx, edi
test edi, edi
jle 0x140224961
nop dword [rax]
nop word [rax + rax]
mov eax, edx
imul rcx, rax, 0x70
cmp dword [rcx + rbx + 0x370], 0
jne 0x140224961
cmp qword [rcx + rbx + 0x3a8], 0
jne 0x140224961
dec edx
test edx, edx
jg 0x140224940
movsxd rax, edx
imul rcx, rax, 0x70
mov rax, qword [rbp - 0x40]
mov r8d, dword [rax + 0x40]
mov r9d, dword [rcx + rbx + 0x37c]
test r8b, 0x20
je 0x140224a5a
movsxd rcx, dword [r14 + 0x90]
mov ebx, dword [rax + 0x34]
mov edx, dword [rax + 0x30]
cmp dword [r14 + 0x94], ecx
jg 0x1402249b3
xor r9d, r9d
mov dword [rsp + 0x20], edx
mov r8d, ebx
mov rcx, r14
lea edx, [r9 + 0xa]
call fcn.1401b8f70
xor r10d, r10d
jmp 0x1402249e1
lea eax, [rcx + 1]
mov dword [r14 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r14 + 0x88]
mov dword [rax + rcx*8], 0xa
mov dword [rax + rcx*8 + 4], ebx
mov dword [rax + rcx*8 + 8], r10d
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], r10
movsxd rdx, dword [r14 + 0x90]
cmp dword [r14 + 0x94], edx
jg 0x140224a1b
mov r9d, r13d
mov dword [rsp + 0x20], r10d
mov r8d, ebx
mov edx, VariantTimeToDosDateTime
mov rcx, r14
call fcn.1401b8f70
mov edx, eax
mov dword [r12 + 0x48], eax
mov byte [r12 + 0x41], 8
jmp 0x140225444
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov dword [r14 + 0x90], eax
mov rax, qword [r14 + 0x88]
mov dword [rax + rcx*8], VariantTimeToDosDateTime
mov dword [rax + rcx*8 + 4], ebx
mov dword [rax + rcx*8 + 8], r13d
mov dword [rax + rcx*8 + 0xc], r10d
mov qword [rax + rcx*8 + 0x10], r10
mov dword [r12 + 0x48], edx
mov byte [r12 + 0x41], 8
jmp 0x140225444
mov edx, dword [r11 + 0x38]
bt edx, 0xa
jae 0x140225368
movzx ebx, word [r11 + 0x3c]
mov r9, qword [rbp + 0xa0]
mov dword [rbp + 0xb8], ebx
lea ecx, [rbx + 2]
cmp ecx, 1
jne 0x140224aa8
movzx eax, byte [r9 + 0x1f]
test al, al
jne 0x140224a95
inc dword [r9 + 0x38]
mov r13d, dword [r9 + 0x38]
jmp 0x140224ad7
dec al
movzx eax, al
mov byte [r9 + 0x1f], al
mov r13d, dword [r9 + rax*4 + 0xd8]
jmp 0x140224ad7
mov edx, dword [r9 + 0x28]
mov r13d, dword [r9 + 0x2c]
mov dword [rsp + 0x50], r13d
cmp ecx, edx
jg 0x140224ac9
lea eax, [rcx + r13]
sub edx, ecx
mov dword [r9 + 0x2c], eax
mov dword [r9 + 0x28], edx
jmp 0x140224adc
mov eax, dword [r9 + 0x38]
lea r13d, [rax + 1]
add eax, ecx
mov dword [r9 + 0x38], eax
mov dword [rsp + 0x50], r13d
mov edi, dword [r12 + 0xc]
mov dword [rsp + 0x54], edi
test ebx, ebx
je 0x140224d95
mov ecx, dword [rbp + 0xb8]
lea ebx, [r13 + 2]
mov r12d, 0xfffffffe
mov r15, r10
sub r12d, r13d
mov r13, qword [rsp + 0x68]
jmp 0x140224b17
mov r9, qword [rbp + 0xa0]
mov rax, qword [r11 + 0x48]
mov rsi, qword [r15 + rax]
test rsi, rsi
je 0x140224d74
test byte [rsi + 0x14], 1
je 0x140224c2c
lea ecx, [r12 + rbx]
mov eax, 1
shl eax, cl
cmp ecx, 0x1f
cmovg eax, r10d
test dword [r11 + 0x30], eax
je 0x140224bed
mov edi, dword [r9 + 0x34]
mov rcx, r9
inc dword [r9 + 0x38]
mov r8d, edi
mov r14d, dword [r9 + 0x38]
lea eax, [rdi + 1]
mov dword [r9 + 0x34], eax
mov rdx, qword [rsi]
call fcn.1401dd4f0
mov rdx, qword [rbp + 0xa8]
movsxd rcx, dword [rdx + 0x90]
cmp dword [rdx + 0x94], ecx
jg 0x140224bb1
mov dword [rsp + 0x20], r14d
mov r9d, ebx
mov r14, qword [rbp + 0xa8]
mov r8d, edi
mov rcx, r14
mov edx, 0xae
call fcn.1401b8f70
mov r11, qword [rsp + 0x40]
xor r10d, r10d
jmp 0x140224d6e
mov r11, qword [rsp + 0x40]
lea eax, [rcx + 1]
mov dword [rdx + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdx + 0x88]
xor r10d, r10d
mov dword [rax + rcx*8 + 0xc], r14d
mov r14, qword [rbp + 0xa8]
mov dword [rax + rcx*8], 0xae
mov dword [rax + rcx*8 + 4], edi
mov dword [rax + rcx*8 + 8], ebx
jmp 0x140224d69
mov rdi, qword [rbp + 0xc0]
mov r9d, ecx
mov rcx, qword [rbp + 0xa0]
mov r8, rdi
mov dword [rsp + 0x28], ebx
mov rdx, rsi
mov dword [rsp + 0x20], r13d
call fcn.1401a61f0
mov edi, dword [rdi + 0x10]
xor r10d, r10d
mov ecx, dword [rbp + 0xb8]
mov r11, qword [rsp + 0x40]
mov dword [rsp + 0x54], edi
jmp 0x140224d78
mov rax, qword [rsi]
mov rdx, qword [rax + 0x18]
test rdx, rdx
je 0x140224ce4
movzx eax, byte [rdx]
cmp al, 0xb0
jne 0x140224c47
movzx eax, byte [rdx + 2]
cmp al, 0xb1
jne 0x140224c54
mov rax, qword [rdx + 0x20]
mov rcx, rax
jmp 0x140224c64
cmp al, 0x8a
jne 0x140224ce4
mov rax, qword [rdx + 0x20]
mov rcx, qword [rax + 0x20]
cmp dword [rcx], 1
jle 0x140224ce4
test dword [rdx + 4], 0x1000
mov rcx, r9
je 0x140224cde
mov rdi, qword [r9 + 0x10]
call fcn.1401ddfe0
movsxd rcx, dword [rdi + 0x90]
mov edx, eax
cmp dword [rdi + 0x94], ecx
jg 0x140224cac
mov r9d, ebx
mov dword [rsp + 0x20], 0
mov r8d, eax
mov edx, 0x50
mov rcx, rdi
call fcn.1401b8f70
jmp 0x140224cef
lea eax, [rcx + 1]
xor r10d, r10d
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0x50
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], ebx
mov dword [rax + rcx*8 + 0xc], r10d
mov qword [rax + rcx*8 + 0x10], r10
jmp 0x140224cf2
mov rdx, qword [rax + 8]
jmp 0x140224ce7
mov rcx, r9
mov r8d, ebx
call fcn.1401e60f0
xor r10d, r10d
cmp byte [rsi + 0x17], 0x4a
mov r11, qword [rsp + 0x40]
jne 0x140224d6e
test byte [r11 + 0x1c], 2
je 0x140224d6e
mov rax, qword [rbp + 0xb0]
movsxd rcx, dword [r14 + 0x90]
mov rax, qword [rax + 0x28]
mov edx, dword [rax + 0xc]
cmp dword [r14 + 0x94], ecx
jg 0x140224d43
xor r8d, r8d
mov dword [rsp + 0x20], r10d
mov r9d, edx
mov rcx, r14
lea edx, [r8 + 0x47]
call fcn.1401b8f70
mov r11, qword [rsp + 0x40]
xor r10d, r10d
jmp 0x140224d6e
lea eax, [rcx + 1]
mov dword [r14 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r14 + 0x88]
mov qword [rax + rcx*8], 0x47
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r10d
mov qword [rax + rcx*8 + 0x10], r10
mov ecx, dword [rbp + 0xb8]
mov edi, dword [rsp + 0x54]
inc ebx
add r15, 8
lea eax, [r12 + rbx]
cmp eax, ecx
jl 0x140224b10
mov r13d, dword [rsp + 0x50]
mov ebx, dword [rbp + 0xb8]
movsxd rcx, dword [r14 + 0x90]
mov edx, dword [r11 + 0x18]
cmp dword [r14 + 0x94], ecx
jg 0x140224dc6
mov r8d, edx
mov dword [rsp + 0x20], r10d
mov edx, 0x47
mov r9d, r13d
mov rcx, r14
call fcn.1401b8f70
xor r10d, r10d
jmp 0x140224df5
lea eax, [rcx + 1]
mov dword [r14 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r14 + 0x88]
mov dword [rax + rcx*8], 0x47
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], r13d
mov dword [rax + rcx*8 + 0xc], r10d
mov qword [rax + rcx*8 + 0x10], r10
movsxd rcx, dword [r14 + 0x90]
lea edx, [r13 + 1]
cmp dword [r14 + 0x94], ecx
jg 0x140224e23
mov r9d, edx
mov dword [rsp + 0x20], r10d
mov edx, 0x47
mov r8d, ebx
mov rcx, r14
call fcn.1401b8f70
jmp 0x140224e51
lea eax, [rcx + 1]
mov dword [r14 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r14 + 0x88]
mov dword [rax + rcx*8], 0x47
mov dword [rax + rcx*8 + 4], ebx
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r10d
mov qword [rax + rcx*8 + 0x10], r10
mov rcx, qword [rsp + 0x40]
mov edx, 0xfffffffa
mov esi, dword [rsp + 0x48]
mov eax, 0xffffffff
mov r9d, edi
mov r8d, esi
test byte [rcx + 0x1c], 1
cmovne eax, edx
mov edx, 6
mov dword [rsp + 0x30], eax
mov rax, qword [rcx + 0x28]
mov rcx, r14
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], r13d
call fcn.140211ea0
mov rdx, qword [rsp + 0x40]
xor edi, edi
mov r8, qword [rbp - 0x78]
and dword [rdx + 0x1c], 0xfffffffe
cmp byte [r8 + 0x67], dil
je 0x140224ea9
mov qword [rdx + 0x28], rdi
mov r9, qword [rbp + 0xc0]
mov eax, 0x3e
mov rcx, qword [rbp + 0xb0]
mov r12d, 0xb8
mov dword [r9 + 0x44], esi
mov esi, edi
cmp byte [rcx + 0x4a], 0
cmovne eax, r12d
mov byte [r9 + 0x41], al
mov eax, dword [r14 + 0x90]
mov dword [r9 + 0x48], eax
test ebx, ebx
je 0x14022544e
mov r12, rdi
add r13d, 2
mov r15d, 0x48
mov rax, qword [rdx + 0x48]
mov rbx, qword [r12 + rax]
cmp esi, 0x10
jae 0x140224f95
movzx eax, word [rdx + 0x22]
movzx ecx, si
shr ax, cl
test al, 1
je 0x140224f95
test byte [rbx + 0x12], 4
mov edx, edi
jne 0x14022534c
cmp dword [r9], 0
je 0x140224f36
mov rax, qword [rbx]
test byte [rax + 4], 1
je 0x14022534c
mov rax, qword [rbx + 0x30]
test qword [r9 + 0x68], rax
jne 0x14022534c
test edx, edx
je 0x140224f61
movzx eax, word [rbx + 0x12]
bt ax, 0xa
jae 0x140224f61
mov ecx, 0x200
or ax, cx
mov word [rbx + 0x12], ax
jmp 0x140224f66
or word [rbx + 0x12], 4
movsxd rax, dword [rbx + 0x18]
test eax, eax
js 0x14022534c
mov rcx, qword [rbx + 8]
imul rbx, rax, 0x38
add rbx, qword [rcx + 0x20]
add byte [rbx + 0x16], 0xff
jne 0x14022534c
inc edx
test byte [rbx + 0x12], 4
je 0x140224f23
jmp 0x14022534c
test byte [rbx + 0x14], 1
je 0x140225351
cmp esi, 0x1f
ja 0x140224faf
mov ecx, esi
mov eax, 1
shl eax, cl
jmp 0x140224fb1
mov eax, edi
test dword [rdx + 0x30], eax
jne 0x140225351
cmp byte [r8 + 0x67], 0
jne 0x140225351
mov rcx, qword [rbp + 0xc0]
mov r9d, edi
mov r10d, dword [rcx + 0x50]
test r10d, r10d
jle 0x1402250b1
mov rax, qword [r14]
mov r8, qword [rcx + 0x58]
add r8, 4
movzx r11d, byte [rax + 0x67]
nop dword [rax]
mov eax, dword [r8]
test eax, eax
jns 0x140225000
mov eax, dword [r14 + 0x90]
dec eax
test r11b, r11b
je 0x14022500e
lea rcx, [0x1402f3210]
jmp 0x14022501f
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [r14 + 0x88]
lea rcx, [rax + rcx*8]
movzx edx, byte [rcx]
cmp dl, 0x5e
jne 0x140225030
lea eax, [rsi + r13]
cmp dword [rcx + 0xc], eax
jmp 0x14022503c
cmp dl, 0x87
jne 0x14022503e
lea eax, [rsi + r13]
cmp dword [rcx + 8], eax
je 0x14022504c
inc r9d
add r8, 0x14
cmp r9d, r10d
jl 0x140224ff0
jmp 0x1402250ad
mov r10d, dword [rcx + 0xc]
mov r9d, dword [rcx + 8]
mov r8d, dword [rcx + 4]
movsxd rcx, dword [r14 + 0x90]
cmp dword [r14 + 0x94], ecx
jg 0x140225077
mov rcx, r14
mov dword [rsp + 0x20], r10d
call fcn.1401b8f70
jmp 0x1402250ad
lea eax, [rcx + 1]
mov dword [r14 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r14 + 0x88]
mov byte [rax + rcx*8], dl
mov word [rax + rcx*8 + 2], di
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], r9d
mov dword [rax + rcx*8 + 0xc], r10d
mov qword [rax + rcx*8 + 0x10], rdi
mov byte [rax + rcx*8 + 1], 0
mov r8, qword [rbp - 0x78]
mov r9, qword [rbp + 0xa0]
mov rcx, qword [r9]
cmp r15w, word [rcx + 0x1a4]
jbe 0x1402250e8
cmp dword [rcx + 0x1a0], 0
jne 0x1402250d9
inc dword [rcx + 0x1b4]
jmp 0x140225169
cmp byte [rcx + 0x67], 0
jne 0x14022527a
jmp 0x140225169
mov rdi, qword [rcx + 0x1d8]
test rdi, rdi
je 0x140225109
mov rax, qword [rdi]
mov qword [rcx + 0x1d8], rax
inc dword [rcx + 0x1b0]
jmp 0x140225184
mov rdi, qword [rcx + 0x1d0]
test rdi, rdi
je 0x140225127
mov rax, qword [rdi]
mov qword [rcx + 0x1d0], rax
inc dword [rcx + 0x1b0]
jmp 0x140225184
mov rdi, qword [rcx + 0x1c8]
test rdi, rdi
je 0x140225145
mov rax, qword [rdi]
mov qword [rcx + 0x1c8], rax
inc dword [rcx + 0x1b0]
jmp 0x140225184
mov rdi, qword [rcx + 0x1c0]
test rdi, rdi
je 0x140225163
mov rax, qword [rdi]
inc dword [rcx + 0x1b0]
mov qword [rcx + 0x1c0], rax
jmp 0x140225184
inc dword [rcx + 0x1b8]
mov rdx, r15
call fcn.1401aaf90
mov rdi, rax
test rax, rax
je 0x140225276
mov r9, qword [rbp + 0xa0]
xorps xmm0, xmm0
xor eax, eax
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 rax, 0xffffffffffffffff
mov word [rdi + 0x32], ax
mov rax, qword [rdi + 0x10]
mov byte [rdi], 0x35
test rax, rax
je 0x1402251b8
mov ecx, dword [rax + 0x28]
jmp 0x1402251ba
xor ecx, ecx
mov rax, qword [rdi + 0x18]
mov dword [rsp + 0x4c], ecx
test rax, rax
je 0x1402251d3
mov eax, dword [rax + 0x28]
cmp eax, ecx
cmovg ecx, eax
mov dword [rsp + 0x4c], ecx
mov r11d, dword [rdi + 4]
bt r11d, 0xc
jae 0x1402251f2
mov rcx, qword [rdi + 0x20]
lea rdx, [rsp + 0x4c]
call fcn.1401b95c0
mov ecx, dword [rsp + 0x4c]
jmp 0x14022524c
mov r10, qword [rdi + 0x20]
test r10, r10
je 0x140225253
movsxd r8, dword [r10]
test r8, r8
jle 0x140225221
lea rdx, [r10 + 8]
mov rax, qword [rdx]
test rax, rax
je 0x140225217
mov eax, dword [rax + 0x28]
cmp eax, ecx
cmovg ecx, eax
add rdx, 0x20
sub r8, 1
jne 0x140225207
movsxd r9, dword [r10]
xor edx, edx
test r9, r9
jle 0x140225240
lea r8, [r10 + 8]
nop
mov rax, qword [r8]
lea r8, [r8 + 0x20]
or edx, dword [rax + 4]
sub r9, 1
jne 0x140225230
and edx, 0x400208
or edx, r11d
mov dword [rdi + 4], edx
mov r9, qword [rbp + 0xa0]
inc ecx
mov dword [rdi + 0x28], ecx
mov rax, qword [r9]
mov r8d, dword [rax + 0x94]
cmp ecx, r8d
jle 0x140225276
lea rdx, str.Expression_tree_is_too_large__maximum_depth__d_
mov rcx, r9
call fcn.1401e5070
mov r8, qword [rbp - 0x78]
cmp byte [r8 + 0x67], 0
jne 0x14022532f
mov rax, qword [rbx]
movsxd rcx, dword [rbx + 0x24]
mov rdx, qword [rax + 0x10]
test ecx, ecx
jle 0x1402252a1
mov rax, qword [rdx + 0x20]
shl rcx, 5
mov rdx, qword [rcx + rax - 0x18]
mov qword [rdi + 0x10], rdx
mov rcx, r8
mov edx, 0x49
call fcn.1401e2500
mov rcx, rax
test rax, rax
je 0x14022531f
mov r8, qword [rbp + 0xc0]
xorps xmm0, xmm0
movups xmmword [rcx], xmm0
xor eax, eax
mov r9d, 0x10
movups xmmword [rcx + 0x10], xmm0
mov rdx, rdi
movups xmmword [rcx + 0x20], xmm0
movups xmmword [rcx + 0x30], xmm0
mov qword [rcx + 0x40], rax
mov rax, 0xffffffffffffffff
mov word [rcx + 0x32], ax
lea rax, [rcx + 0x48]
mov qword [rcx + 8], rax
mov byte [rcx], 0xb0
mov byte [rax], 0
lea eax, [rsi + r13]
mov dword [rcx + 0x28], 1
mov qword [rdi + 0x18], rcx
mov dword [rcx + 0x2c], eax
mov r8d, dword [r8 + 0x18]
mov rcx, qword [rbp + 0xa0]
call fcn.1401e9d90
jmp 0x140225323
mov qword [rdi + 0x18], rcx
mov r8, qword [rbp - 0x78]
mov qword [rdi + 0x10], 0
test rdi, rdi
je 0x140225343
mov rdx, rdi
mov rcx, r8
call fcn.1401e9a70
mov r8, qword [rbp - 0x78]
mov r9, qword [rbp + 0xc0]
xor edi, edi
mov rdx, qword [rsp + 0x40]
inc esi
add r12, 8
cmp esi, dword [rbp + 0xb8]
jl 0x140224ef4
jmp 0x140225447
test dl, 5
setne cl
bt edx, 8
setb al
test al, cl
je 0x1402254e7
mov rax, qword [r11 + 0x48]
xor r9d, r9d
mov r8, r12
mov rcx, r15
mov rdx, qword [rax]
inc dword [r15 + 0x38]
mov ebx, dword [r15 + 0x38]
mov dword [rsp + 0x28], ebx
mov dword [rsp + 0x20], esi
call fcn.1401a61f0
mov edi, eax
cmp eax, ebx
je 0x1402253c1
test ebx, ebx
je 0x1402253c1
movzx eax, byte [r15 + 0x1f]
cmp al, 8
jae 0x1402253c1
mov dword [r15 + rax*4 + 0xd8], ebx
inc byte [r15 + 0x1f]
mov r8d, dword [r12 + 0x34]
mov ebx, dword [r12 + 0x10]
test r8d, r8d
je 0x140225411
mov dword [rsp + 0x28], 1
mov r9d, ebx
mov edx, 0x3f
mov dword [rsp + 0x20], edi
mov rcx, r14
call fcn.140211fd0
mov rax, qword [rbp + 0xc8]
mov r9d, ebx
mov r8d, dword [rbp + 0xb8]
mov rcx, r15
mov rdx, qword [rbp + 0xb0]
mov qword [rsp + 0x20], rax
call fcn.1401b19a0
movsxd rcx, dword [r14 + 0x90]
cmp dword [r14 + 0x94], ecx
jg 0x1402254ad
mov r8d, dword [rsp + 0x48]
mov r9d, ebx
mov edx, 0x1d
mov dword [rsp + 0x20], edi
mov rcx, r14
call fcn.1401b8f70
mov byte [r12 + 0x41], 0xb8
mov r9, r12
mov rcx, qword [rbp + 0xb0]
xor r13d, r13d
mov rdx, r13
mov rax, rdx
lea r8, [0x1401b0400]
neg rax
lea r10, [rcx + 0x80]
sbb r12d, r12d
add r12d, 2
nop
mov r15d, dword [r10 + 0x14]
mov r14d, r13d
mov rbx, qword [r10 + 0x20]
test r15d, r15d
jle 0x140227396
movzx r10d, word [rbx + 0x12]
mov esi, r13d
test r10b, 6
jne 0x14022735d
mov r11, qword [r9 + 0x68]
test qword [rbx + 0x30], r11
je 0x1402271c0
or dword [rcx + 0x4c], 2
jmp 0x14022735d
mov r9d, dword [rsp + 0x48]
lea eax, [rcx + 1]
mov dword [r14 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r14 + 0x88]
xor edx, edx
mov dword [rax + rcx*8], 0x1d
mov dword [rax + rcx*8 + 4], r9d
mov dword [rax + rcx*8 + 8], ebx
mov dword [rax + rcx*8 + 0xc], edi
mov qword [rax + rcx*8 + 0x10], rdx
jmp 0x14022543e
mov eax, edx
and eax, 0x102
cmp eax, 0x102
jne 0x1402257b0
mov dword [rsp + 0x4c], r10d
mov r12d, 0xb8
mov r15d, r12d
mov edi, r10d
mov r14, r10
mov rbx, r10
test dl, 0x20
je 0x140225523
mov rax, qword [r11 + 0x48]
mov ecx, 8
mov rbx, qword [rax]
jmp 0x140225526
mov rcx, r10
test dl, 0x10
je 0x140225533
mov rax, qword [r11 + 0x48]
mov r14, qword [rcx + rax]
test esi, esi
je 0x140225540
mov rax, rbx
mov rbx, r14
mov r14, rax
test rbx, rbx
je 0x140225645
mov rdi, qword [rbx]
mov dword [rbp + 0xb8], 0x16141517
mov rdx, qword [rdi + 0x18]
movzx eax, byte [rdx]
cmp al, 0xb0
jne 0x140225565
movzx eax, byte [rdx + 2]
cmp al, 0xb1
jne 0x14022556f
mov rax, qword [rdx + 0x20]
jmp 0x14022557b
cmp al, 0x8a
jne 0x1402255d1
mov rax, qword [rdx + 0x20]
mov rax, qword [rax + 0x20]
cmp dword [rax], 1
jle 0x1402255d1
mov rcx, qword [rbp + 0xa0]
movzx eax, byte [rcx + 0x1f]
test al, al
jne 0x140225597
inc dword [rcx + 0x38]
mov ebx, dword [rcx + 0x38]
jmp 0x1402255a6
dec al
movzx eax, al
mov byte [rcx + 0x1f], al
mov ebx, dword [rcx + rax*4 + 0xd8]
mov rdx, qword [rdi + 0x18]
mov r9d, 1
mov r8d, ebx
call fcn.1401a6a80
movzx eax, byte [rdi]
mov esi, ebx
inc rax
and eax, 2
or rax, 1
movzx ecx, byte [rbp + rax + 0xb8]
jmp 0x140225602
mov rcx, qword [rbp + 0xa0]
lea r8, [rbp - 0x80]
call fcn.1401e9360
mov rcx, qword [rbp + 0xc0]
mov rdx, rbx
mov esi, eax
call fcn.1401abff0
movzx r10d, byte [rdi]
mov ebx, dword [rbp - 0x80]
movzx ecx, byte [rbp + r10 + 0x82]
mov r8d, dword [rsp + 0x48]
mov r9d, r13d
movzx edx, cl
mov rcx, qword [rbp + 0xa8]
mov dword [rsp + 0x20], esi
call fcn.140211e30
mov rcx, qword [rbp + 0xa0]
mov edi, dword [rsp + 0x4c]
mov rsi, qword [rsp + 0x68]
test ebx, ebx
je 0x140225669
movzx eax, byte [rcx + 0x1f]
cmp al, 8
jae 0x140225669
mov dword [rcx + rax*4 + 0xd8], ebx
inc byte [rcx + 0x1f]
jmp 0x140225669
mov r8d, dword [rsp + 0x48]
mov edx, esi
mov rcx, qword [rbp + 0xa8]
xor edx, 1
lea edx, [rdx*4 + 0x1f]
call fcn.140211dc0
mov rcx, qword [rbp + 0xa0]
test r14, r14
je 0x140225710
mov rbx, qword [r14]
mov r9d, 1
inc dword [rcx + 0x38]
mov edi, dword [rcx + 0x38]
mov r8d, edi
mov rdx, qword [rbx + 0x18]
call fcn.1401a6a80
mov rcx, qword [rbx + 0x18]
movzx edx, byte [rcx]
movzx eax, dl
cmp dl, 0xb0
jne 0x1402256a0
movzx eax, byte [rcx + 2]
cmp al, 0xb1
jne 0x1402256aa
mov rax, qword [rcx + 0x20]
jmp 0x1402256b6
cmp al, 0x8a
jne 0x1402256bb
mov rax, qword [rcx + 0x20]
mov rax, qword [rax + 0x20]
cmp dword [rax], 1
jg 0x1402256c4
movzx eax, byte [rbx]
sub al, 0x36
test al, 0xfd
je 0x1402256ce
lea r15d, [rsi*2 + 0x36]
jmp 0x1402256db
mov eax, esi
xor eax, 1
lea r15d, [rax*2 + 0x37]
cmp dl, 0xb0
jne 0x1402256e4
movzx edx, byte [rcx + 2]
cmp dl, 0xb1
jne 0x1402256ef
mov rax, qword [rcx + 0x20]
jmp 0x1402256fc
cmp dl, 0x8a
jne 0x140225701
mov rax, qword [rcx + 0x20]
mov rax, qword [rax + 0x20]
cmp dword [rax], 1
jg 0x140225710
mov rcx, qword [rbp + 0xc0]
mov rdx, r14
call fcn.1401abff0
mov r9, qword [rbp + 0xc0]
test esi, esi
mov r14, qword [rbp + 0xa8]
sete al
add al, 0x25
mov ecx, dword [r14 + 0x90]
mov byte [r9 + 0x41], al
mov eax, dword [rsp + 0x48]
mov dword [r9 + 0x44], eax
mov dword [r9 + 0x48], ecx
cmp r15d, r12d
je 0x140225447
mov rsi, qword [rbp + 0xa0]
mov r8d, eax
mov edx, 0x87
mov rcx, r14
inc dword [rsi + 0x38]
mov ebx, dword [rsi + 0x38]
mov r9d, ebx
call fcn.140211dc0
mov r9d, r13d
mov dword [rsp + 0x20], ebx
mov r8d, edi
mov edx, r15d
mov rcx, r14
call fcn.140211e30
movsxd rax, dword [r14 + 0x90]
xor r13d, r13d
mov r9, qword [rbp + 0xc0]
test eax, eax
jle 0x1402257a4
lea rcx, [rax + rax*2]
mov edx, 0x53
mov rax, qword [r14 + 0x88]
mov word [rax + rcx*8 - 0x16], dx
mov rcx, qword [rbp + 0xb0]
jmp 0x140225451
bt edx, 9
jae 0x140226582
movzx r14d, word [r11 + 0x18]
xor sil, sil
movzx r13d, word [r11 + 0x1c]
mov r15, r10
mov r9, qword [r11 + 0x20]
mov ebx, r10d
movzx r12d, word [r11 + 0x1a]
mov r8d, r14d
mov qword [rbp - 0x58], r10
mov qword [rbp - 0x68], r10
mov dword [rsp + 0x70], r10d
mov dword [rbp - 0x6c], r10d
mov r10, qword [rbp + 0xc0]
mov word [rsp + 0x54], r13w
mov byte [rsp + 0x60], sil
mov qword [rsp + 0x58], r9
mov eax, dword [r10 + 8]
mov dword [rsp + 0x50], eax
mov eax, r14d
mov dword [rsp + 0x7c], eax
mov dword [rbp - 0x80], eax
test dl, 0x20
je 0x140225826
mov rax, qword [r11 + 0x48]
inc r8d
mov ebx, r12d
mov r15, qword [rax + r14*8]
test dl, 0x10
je 0x1402258f9
mov rax, qword [r11 + 0x48]
cmp ebx, r13d
mov ecx, r8d
mov edi, r13d
cmova edi, ebx
mov r9, qword [rax + rcx*8]
mov eax, 0x100
mov qword [rbp - 0x58], r9
test word [r9 + 0x12], ax
je 0x1402258b8
mov rcx, qword [rbp + 0xa0]
mov edx, 0x47
mov rbx, qword [rbp + 0xa8]
mov r9d, dword [rcx + 0x38]
lea r8d, [rdx - 0x46]
inc r9d
mov dword [rcx + 0x38], r9d
mov rcx, rbx
mov dword [r10 + 0x2c], r9d
call fcn.140211dc0
mov eax, dword [rbx + 0x90]
xor ecx, ecx
mov r10, qword [rbp + 0xc0]
mov r9, qword [rsp + 0x58]
mov r11, qword [rsp + 0x40]
shl dword [r10 + 0x2c], 1
mov dword [r10 + 0x30], eax
mov rax, qword [r9 + 0x38]
cmp byte [r14 + rax], 1
sete cl
xor ecx, dword [rsp + 0x68]
or dword [r10 + 0x2c], ecx
jmp 0x1402258bd
mov r9, qword [rsp + 0x58]
mov rdx, r14
mov ebx, edi
test r15, r15
jne 0x1402258f3
mov rax, qword [r9 + 8]
movsx r8, word [rax + rdx*2]
test r8d, r8d
js 0x1402258e8
mov rax, qword [r9 + 0x18]
lea rdx, [r8 + r8*2]
mov rcx, qword [rax + 8]
test byte [rcx + rdx*8 + 8], 0xf
je 0x1402258ee
cmp r8d, 0xfffffffe
jne 0x1402258f3
mov sil, 1
mov ebx, edi
mov edi, dword [rbp + 0xb8]
mov eax, dword [r11 + 0x38]
test al, 0x30
jne 0x14022595c
bt eax, 0x13
jae 0x14022595c
mov rcx, qword [rbp + 0xa0]
mov ebx, 1
movzx esi, bl
inc dword [rcx + 0x38]
cmp dword [r10], 0
mov eax, dword [rcx + 0x38]
mov dword [rsp + 0x70], eax
mov dword [r10 + 0x24], eax
je 0x140225952
mov rcx, qword [rbp + 0xa8]
lea edx, [rbx + 0x46]
mov r9d, eax
xor r8d, r8d
call fcn.140211dc0
mov r11, qword [rsp + 0x40]
mov rcx, qword [rbp + 0xa0]
mov r10, qword [rbp + 0xc0]
dec dword [rcx + 0x44]
mov eax, dword [rcx + 0x44]
mov dword [r10 + 0x28], eax
mov rax, qword [rsp + 0x58]
cmp r14w, word [rax + 0x60]
jae 0x14022599f
mov rax, qword [rax + 0x38]
xor edx, edx
cmp byte [r14 + rax], dl
sete dl
cmp dword [rsp + 0x68], edx
jne 0x14022599f
mov rcx, qword [rbp - 0x58]
movzx eax, r12b
movzx r12d, r13w
mov qword [rbp - 0x58], r15
movzx r13d, ax
mov byte [rsp + 0x60], sil
mov r15, rcx
mov word [rsp + 0x54], ax
xor sil, sil
test edi, edi
jle 0x1402259c3
test dword [r11 + 0x38], 0x100000
je 0x1402259c3
mov r8d, dword [rsp + 0x50]
mov edx, 0x88
mov rcx, qword [rbp + 0xa8]
call fcn.140211d50
mov r8d, dword [rsp + 0x68]
lea rax, [rbp - 0x60]
mov rcx, qword [rbp + 0xa0]
mov r9d, ebx
mov rbx, qword [rbp + 0xc0]
mov rdx, rbx
mov qword [rsp + 0x20], rax
call fcn.1401a52e0
mov edx, eax
mov dword [rsp + 0x78], eax
mov rax, qword [rbp - 0x60]
test rax, rax
je 0x140225a63
test r13w, r13w
je 0x140225a63
mov rdi, r14
add rdi, rax
jne 0x140225a10
xor r9d, r9d
mov qword [rbp - 0x68], r9
jmp 0x140225a66
mov rbx, 0xffffffffffffffff
inc rbx
cmp byte [rdi + rbx], 0
jne 0x140225a17
mov rax, qword [rbp - 0x78]
inc rbx
test rax, rax
je 0x140225a39
mov rdx, rbx
mov rcx, rax
call fcn.1401e2500
jmp 0x140225a41
mov rcx, rbx
call fcn.1401f83e0
mov qword [rbp - 0x68], rax
test rax, rax
je 0x140225a58
mov r8, rbx
mov rdx, rdi
mov rcx, rax
call fcn.140145e60
mov edx, dword [rsp + 0x78]
mov rbx, qword [rbp + 0xc0]
xor r9d, r9d
mov ecx, dword [rsp + 0x70]
test ecx, ecx
je 0x140225a73
mov eax, dword [rbx + 0x28]
jmp 0x140225a76
mov eax, dword [rbx + 0x10]
mov dword [rsp + 0x74], eax
test r15, r15
je 0x140225a92
test byte [r15 + 0x14], 0x28
jne 0x140225a92
mov dword [rsp + 0x64], r9d
mov edi, 1
jmp 0x140225a9b
mov edi, 1
mov dword [rsp + 0x64], edi
mov rax, qword [rbp - 0x58]
test rax, rax
je 0x140225aaf
test byte [rax + 0x14], 0x28
mov dword [rsp + 0x4c], r9d
je 0x140225ab3
mov dword [rsp + 0x4c], edi
test r15, r15
jne 0x140225afe
test r14w, r14w
jne 0x140225afe
mov dword [rbp - 0x70], r9d
mov r8d, r14d
mov r13d, r8d
test sil, sil
je 0x140225c17
mov ebx, dword [rbp - 0x80]
xor r8d, r8d
mov rcx, qword [rbp + 0xa8]
mov r14d, r9d
lea r9d, [rbx + rdx]
lea edx, [r8 + 0x4b]
call fcn.140211dc0
mov r12, qword [rbp - 0x60]
inc r13d
mov dword [rsp + 0x7c], ebx
jmp 0x140225c52
mov dword [rbp - 0x70], edi
mov r8d, r14d
mov r13d, r14d
test r15, r15
je 0x140225ac5
mov rax, qword [r15]
lea esi, [rdx + r14]
mov rcx, qword [rbp + 0xa0]
mov r8d, esi
movzx edi, r12w
mov r9d, edi
mov rbx, qword [rax + 0x18]
mov rdx, rbx
call fcn.1401a6a80
movzx eax, word [r15 + 0x12]
bt ax, 8
mov r10, qword [rbp + 0xa8]
jae 0x140225b91
mov rax, qword [r10]
mov ecx, dword [r10 + 0x90]
dec ecx
cmp byte [rax + 0x67], 0
je 0x140225b5e
lea rcx, [0x1402f3210]
jmp 0x140225b70
movsxd rax, ecx
lea rcx, [rax + rax*2]
mov rax, qword [r10 + 0x88]
lea rcx, [rax + rcx*8]
mov rdx, qword [rbp + 0xc0]
mov eax, dword [rdx + 0x2c]
shr eax, 1
mov dword [rcx + 0xc], eax
movzx eax, byte [rdx + 0x2c]
and al, 1
movzx eax, al
mov word [rcx + 2], ax
movzx eax, word [r15 + 0x12]
test al, al
js 0x140225bb6
mov rcx, rbx
call fcn.1401e5f80
test eax, eax
je 0x140225bb6
mov r9d, dword [rsp + 0x74]
mov r8d, esi
mov edx, 0x32
mov rcx, r10
call fcn.140211dc0
mov r12, qword [rbp - 0x60]
test r12, r12
je 0x140225bcd
lea r8, [r12 + r14]
mov edx, edi
mov rcx, rbx
call fcn.1402314b0
movzx eax, byte [rbx]
add r13d, edi
cmp al, 0xb0
jne 0x140225bdb
movzx eax, byte [rbx + 2]
cmp al, 0xb1
jne 0x140225be5
mov rax, qword [rbx + 0x20]
jmp 0x140225bf1
cmp al, 0x8a
jne 0x140225c03
mov rax, qword [rbx + 0x20]
mov rax, qword [rax + 0x20]
cmp dword [rax], 1
jle 0x140225c03
mov dword [rsp + 0x64], 1
xor sil, sil
jmp 0x140225c4a
mov rcx, qword [rbp + 0xc0]
mov rdx, r15
call fcn.1401abff0
xor sil, sil
jmp 0x140225c4a
mov ebx, r14d
mov dword [rsp + 0x7c], ebx
test ecx, ecx
je 0x140225c46
mov rcx, qword [rbp + 0xa8]
lea r9d, [r14 + rdx]
xor r8d, r8d
lea edx, [r8 + 0x4b]
call fcn.140211dc0
mov r12, qword [rbp - 0x60]
inc r13d
mov dword [rsp + 0x7c], ebx
jmp 0x140225c4d
mov r12, qword [rbp - 0x60]
mov edi, dword [rbp - 0x70]
mov r14d, dword [rsp + 0x64]
mov ebx, dword [rsp + 0x78]
mov r9d, r13d
movzx esi, sil
mov r10, r12
sub r9d, esi
mov dword [rbp - 0x80], esi
mov r8d, ebx
test r12, r12
je 0x140225cd7
test r9d, r9d
jle 0x140225c87
cmp byte [r10], 0x41
jg 0x140225c87
dec r9d
inc r8d
inc r10
test r9d, r9d
jg 0x140225c73
movsxd rdx, r9d
cmp rdx, 1
jle 0x140225cab
lea rax, [rdx - 1]
add rax, r10
cmp byte [rax], 0x41
jg 0x140225cab
dec r9d
dec rdx
dec rax
cmp rdx, 1
jg 0x140225c97
xor r12d, r12d
test r9d, r9d
jle 0x140225cd7
mov rax, qword [rbp + 0xa0]
lea edx, [r12 + 0x60]
mov dword [rsp + 0x30], r9d
mov qword [rsp + 0x28], r10
mov dword [rsp + 0x20], r12d
mov rcx, qword [rax + 0x10]
call fcn.140211ea0
mov rax, qword [rsp + 0x40]
lea r15, [0x140000000]
movzx eax, word [rax + 0x3e]
test ax, ax
je 0x140225cf5
cmp r13d, eax
je 0x140225ef7
mov edx, dword [rsp + 0x70]
mov r10, qword [rbp + 0xa8]
test edx, edx
je 0x140225d6b
movsxd rcx, dword [r10 + 0x90]
cmp dword [r10 + 0x94], ecx
jg 0x140225d36
mov r9d, edx
mov dword [rsp + 0x20], r12d
mov edx, 0x47
mov rcx, r10
lea r8d, [rdx - 0x46]
call fcn.1401b8f70
mov r10, qword [rbp + 0xa8]
jmp 0x140225d6b
lea eax, [rcx + 1]
mov r8d, 1
mov dword [r10 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r10 + 0x88]
mov dword [rax + rcx*8], 0x47
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r12d
mov qword [rax + rcx*8 + 0x10], r12
mov rax, qword [rbp + 0xc0]
mov r12d, dword [rsp + 0x74]
mov r8d, dword [rax + 0x34]
test r8d, r8d
je 0x140225dc5
mov eax, dword [rsp + 0x7c]
mov r9d, r12d
mov dword [rsp + 0x28], eax
mov edx, 0x3f
mov rcx, r10
mov dword [rsp + 0x20], ebx
call fcn.140211fd0
mov rax, qword [rbp + 0xc8]
mov r9d, r12d
mov r8d, dword [rbp + 0xb8]
mov rdx, qword [rbp + 0xb0]
mov rcx, qword [rbp + 0xa0]
mov qword [rsp + 0x20], rax
call fcn.1401b19a0
mov rcx, qword [rsp + 0x68]
lea eax, [r14 + rdi*2]
lea ecx, [rcx + rax*2]
mov rax, qword [rsp + 0x40]
movzx ebx, byte [rcx + r15 + 0x28af70]
test dword [rax + 0x38], 0x100000
je 0x140225e22
cmp ebx, 0x16
jne 0x140225e22
mov rax, qword [rsp + 0x58]
mov rax, qword [rax + 0x10]
movsx ecx, word [rax]
mov eax, 0x66666667
add ecx, 9
imul ecx
mov rcx, qword [rbp + 0xa8]
sar edx, 2
mov r8d, edx
shr r8d, 0x1f
add r8d, edx
lea edx, [rbx + 0x66]
call fcn.140211d50
mov dword [rbp - 0x6c], eax
mov edi, dword [rsp + 0x78]
mov edx, ebx
mov rbx, qword [rbp + 0xa8]
mov r9d, r12d
mov dword [rsp + 0x28], r13d
mov rcx, rbx
mov dword [rsp + 0x20], edi
mov edi, dword [rsp + 0x50]
mov r8d, edi
call fcn.140211fd0
cmp dword [rsp + 0x70], 0
je 0x140225efe
movsxd rcx, dword [rbx + 0x90]
lea edx, [rcx + 2]
cmp dword [rbx + 0x94], ecx
jg 0x140225e83
xor r8d, r8d
mov dword [rsp + 0x20], 0
mov r9d, edx
mov rcx, rbx
lea edx, [r8 + 8]
call fcn.1401b8f70
jmp 0x140225eb0
lea eax, [rcx + 1]
xor r8d, r8d
mov dword [rbx + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx + 0x88]
mov qword [rax + rcx*8], 8
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r8d
mov qword [rax + rcx*8 + 0x10], r8
mov ebx, dword [rsp + 0x78]
mov eax, 2
mov edx, 6
mov ecx, r13d
sub ecx, r14d
mov r8d, edi
mov rdi, qword [rbp + 0xa8]
cmp r13d, 1
mov dword [rsp + 0x28], ecx
mov r9d, r12d
cmova eax, edx
mov dword [rsp + 0x20], ebx
add eax, dword [rsp + 0x68]
mov rcx, rdi
movzx edx, byte [rax + r15 + 0x28af70]
call fcn.140211fd0
jmp 0x140225f09
mov r12d, dword [rsp + 0x74]
jmp 0x140225f02
mov ebx, dword [rsp + 0x78]
mov rdi, qword [rbp + 0xa8]
mov r13, qword [rbp - 0x58]
mov ecx, dword [rsp + 0x7c]
mov r14d, ecx
test r13, r13
je 0x1402260bb
cmp dword [rbp - 0x6c], 0
mov rax, qword [r13]
mov rdi, qword [rax + 0x18]
je 0x140225f43
mov rax, qword [rbp + 0xa8]
mov r8, qword [rbp + 0xc0]
mov eax, dword [rax + 0x90]
mov dword [r8 + 0x48], eax
movzx esi, word [rsp + 0x54]
add ebx, ecx
mov rcx, qword [rbp + 0xa0]
mov r9d, esi
mov r8d, ebx
mov rdx, rdi
call fcn.1401a6a80
movzx eax, word [r13 + 0x12]
bt ax, 8
mov r10, qword [rbp + 0xa8]
jae 0x140225fc0
mov rax, qword [r10]
mov ecx, dword [r10 + 0x90]
dec ecx
cmp byte [rax + 0x67], 0
je 0x140225f8d
lea rcx, [0x1402f3210]
jmp 0x140225f9f
movsxd rax, ecx
lea rcx, [rax + rax*2]
mov rax, qword [r10 + 0x88]
lea rcx, [rax + rcx*8]
mov rdx, qword [rbp + 0xc0]
mov eax, dword [rdx + 0x2c]
shr eax, 1
mov dword [rcx + 0xc], eax
movzx eax, byte [rdx + 0x2c]
and al, 1
movzx eax, al
mov word [rcx + 2], ax
movzx eax, word [r13 + 0x12]
test al, al
js 0x140225fe3
mov rcx, rdi
call fcn.1401e5f80
test eax, eax
je 0x140225fe3
mov r9d, r12d
mov r8d, ebx
mov edx, 0x32
mov rcx, r10
call fcn.140211dc0
mov r12, qword [rbp - 0x68]
test r12, r12
je 0x140226074
mov r8, r12
mov edx, esi
mov rcx, rdi
call fcn.1402314b0
mov r11, r12
mov r9d, esi
test esi, esi
je 0x14022601a
cmp byte [r11], 0x41
jg 0x14022601a
dec r9d
inc ebx
inc r11
test r9d, r9d
jg 0x140226007
movsxd rax, r9d
cmp rax, 1
jle 0x140226045
lea r10, [rax - 1]
add r10, r11
nop word [rax + rax]
cmp byte [r10], 0x41
jg 0x140226045
dec r9d
dec rax
dec r10
cmp rax, 1
jg 0x140226030
test r9d, r9d
jle 0x140226074
mov rax, qword [rbp + 0xa0]
mov r8d, ebx
mov dword [rsp + 0x30], r9d
mov edx, 0x60
mov qword [rsp + 0x28], r11
mov dword [rsp + 0x20], 0
mov rcx, qword [rax + 0x10]
call fcn.140211ea0
movzx eax, byte [rdi]
add r14d, esi
cmp al, 0xb0
jne 0x140226082
movzx eax, byte [rdi + 2]
cmp al, 0xb1
jne 0x14022608c
mov rax, qword [rdi + 0x20]
jmp 0x140226098
cmp al, 0x8a
jne 0x1402260a7
mov rax, qword [rdi + 0x20]
mov rax, qword [rax + 0x20]
cmp dword [rax], 1
jle 0x1402260a7
mov esi, dword [rbp - 0x80]
mov ebx, 1
jmp 0x1402260ff
mov rcx, qword [rbp + 0xc0]
mov rdx, r13
call fcn.1401abff0
mov esi, dword [rbp - 0x80]
jmp 0x1402260fb
cmp byte [rsp + 0x60], 0
je 0x1402260f7
mov r13d, dword [rsp + 0x70]
test r13d, r13d
jne 0x1402260ea
lea r9d, [rbx + rcx]
xor r8d, r8d
mov rcx, rdi
lea edx, [r13 + 0x4b]
call fcn.140211dc0
mov r12, qword [rbp - 0x68]
xor ebx, ebx
inc r14d
jmp 0x140226104
mov ebx, dword [rsp + 0x4c]
inc r14d
mov r12, qword [rbp - 0x68]
jmp 0x140226104
mov r12, qword [rbp - 0x68]
mov ebx, dword [rsp + 0x4c]
mov r13d, dword [rsp + 0x70]
mov rax, qword [rbp - 0x60]
mov rdi, qword [rbp - 0x78]
test rax, rax
je 0x14022611c
mov rdx, rax
mov rcx, rdi
call fcn.1401e2370
test r12, r12
je 0x1402261e5
test rdi, rdi
je 0x14022618a
cmp qword [rdi + 0x300], 0
je 0x140226144
mov rdx, r12
mov rcx, rdi
call fcn.1401bff30
jmp 0x1402261e5
cmp r12, qword [rdi + 0x1f0]
jae 0x14022618a
cmp r12, qword [rdi + 0x1e0]
jb 0x14022616d
mov rax, qword [rdi + 0x1d8]
mov qword [r12], rax
mov qword [rdi + 0x1d8], r12
jmp 0x1402261e5
cmp r12, qword [rdi + 0x1e8]
jb 0x14022618a
mov rax, qword [rdi + 0x1c8]
mov qword [r12], rax
mov qword [rdi + 0x1c8], r12
jmp 0x1402261e5
cmp dword [0x1402e7e10], 0
je 0x1402261dc
mov rcx, qword [0x1402f2f20]
test rcx, rcx
je 0x1402261a5
call qword [0x1402e7e90]
mov rcx, r12
call qword [0x1402e7e48]
dec qword [0x1402f2eb8]
movsxd rcx, eax
sub qword [0x1402f2e70], rcx
mov rcx, r12
call qword [0x1402e7e38]
mov rcx, qword [0x1402f2f20]
test rcx, rcx
je 0x1402261e5
call qword [0x1402e7ea0]
jmp 0x1402261e5
mov rcx, r12
call qword [0x1402e7e38]
mov rdx, qword [rbp + 0xc0]
mov rcx, qword [rbp + 0xa8]
cmp dword [rdx + 0x48], 0
jne 0x140226202
mov eax, dword [rcx + 0x90]
mov dword [rdx + 0x48], eax
test r14d, r14d
je 0x1402262a1
test r13d, r13d
je 0x140226228
mov r9d, dword [rcx + 0x90]
mov r8d, r13d
add r9d, 3
mov edx, 0x10
call fcn.140211dc0
mov rax, qword [rsp + 0x68]
mov r12d, dword [rsp + 0x74]
mov r9d, r12d
mov edi, dword [rsp + 0x78]
mov r8d, dword [rsp + 0x50]
lea eax, [rbx + rax*2]
mov dword [rsp + 0x28], r14d
mov rbx, qword [rbp + 0xa8]
movzx edx, byte [rax + r15 + 0x28aecc]
mov rcx, rbx
mov dword [rsp + 0x20], edi
call fcn.140211fd0
mov ecx, dword [rbp - 0x6c]
test ecx, ecx
je 0x1402262b1
mov edx, dword [rbx + 0x90]
jns 0x140226274
lea ecx, [rdx - 1]
mov rax, qword [rbx]
cmp byte [rax + 0x67], 0
je 0x140226289
lea rax, [0x1402f3210]
mov dword [rax + 8], edx
jmp 0x1402262b1
movsxd rax, ecx
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x88]
mov dword [rax + rcx*8 + 8], edx
lea rax, [rax + rcx*8]
jmp 0x1402262b1
mov r12d, dword [rsp + 0x74]
mov edi, dword [rsp + 0x78]
mov rbx, qword [rbp + 0xa8]
test r13d, r13d
je 0x14022630c
mov r9d, dword [rbx + 0x90]
mov r8d, r13d
add r9d, 2
mov edx, 0xf
mov rcx, rbx
call fcn.140211dc0
mov r13, qword [rsp + 0x68]
lea r8d, [rsi + r14]
mov dword [rsp + 0x28], r8d
mov r9d, r12d
mov r12, qword [rbp + 0xa8]
mov rcx, r12
mov dword [rsp + 0x20], edi
lea eax, [rsi + r13*2]
movzx edx, byte [rax + r15 + 0x28aecc]
mov r15d, dword [rsp + 0x50]
mov r8d, r15d
call fcn.140211fd0
jmp 0x14022631d
mov r15d, dword [rsp + 0x50]
mov r13, qword [rsp + 0x68]
mov r12, qword [rbp + 0xa8]
mov rbx, qword [rsp + 0x40]
mov eax, dword [rbx + 0x38]
bt eax, 0x12
jae 0x140226349
mov eax, dword [rsp + 0x7c]
mov r8d, r15d
mov r9d, eax
mov dword [rsp + 0x20], eax
mov edx, 0x7d
mov rcx, r12
call fcn.140211e30
mov eax, dword [rbx + 0x38]
mov ecx, 0x1020
test al, 0x40
je 0x140226374
mov r11, qword [rbp + 0xb0]
test word [r11 + 0x44], cx
jne 0x140226374
mov esi, dword [rsp + 0x48]
mov r14d, 1
mov rdi, qword [rsp + 0x58]
jmp 0x1402264ee
mov rdi, qword [rsp + 0x58]
xor r11d, r11d
mov esi, dword [rsp + 0x48]
mov r14d, r11d
mov dword [rbp + 0xb8], r11d
mov rbx, qword [rdi + 0x18]
test byte [rbx + 0x30], 0x80
jne 0x1402263ae
mov rcx, qword [rbp + 0xb0]
mov r9d, r15d
mov r8d, esi
mov rdx, rdi
call fcn.1401a5d00
jmp 0x1402264dd
cmp esi, r15d
je 0x1402264e2
mov rbx, qword [rbx + 0x10]
test rbx, rbx
je 0x1402263d2
mov eax, dword [rbx + 0x64]
and al, 3
cmp al, 2
je 0x1402263d2
mov rbx, qword [rbx + 0x28]
test rbx, rbx
jne 0x1402263c0
movzx edx, word [rbx + 0x5e]
mov rcx, qword [rbp + 0xa0]
call fcn.1401f28e0
mov esi, eax
mov edi, r11d
movzx eax, word [rbx + 0x5e]
cmp r11w, ax
jae 0x1402264b5
mov r13, qword [rsp + 0x58]
mov r14, 0xffffffffffffffff
movzx r8d, word [r13 + 0x60]
mov edx, r11d
test r8d, r8d
je 0x140226431
mov rax, qword [rbx + 8]
mov r9, qword [r13 + 8]
movsxd rcx, edi
movzx r10d, word [rax + rcx*2]
nop
movsxd rax, edx
cmp r10w, word [r9 + rax*2]
je 0x140226435
inc edx
cmp edx, r8d
jl 0x140226420
movzx edx, r14w
movsxd rcx, dword [r12 + 0x90]
movsx r8d, dx
lea edx, [rdi + rsi]
cmp dword [r12 + 0x94], ecx
jg 0x14022646a
mov dword [rsp + 0x20], edx
mov r9d, r8d
mov r8d, r15d
mov edx, 0x5e
mov rcx, r12
call fcn.1401b8f70
xor r11d, r11d
jmp 0x14022649b
lea eax, [rcx + 1]
mov dword [r12 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r12 + 0x88]
mov dword [rax + rcx*8], 0x5e
mov dword [rax + rcx*8 + 4], r15d
mov dword [rax + rcx*8 + 8], r8d
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], r11
movzx eax, word [rbx + 0x5e]
inc edi
cmp edi, eax
jl 0x140226401
mov r14d, dword [rbp + 0xb8]
mov r13, qword [rsp + 0x68]
mov r9d, dword [rbp - 0x50]
mov edx, 0x1b
movzx eax, ax
mov rcx, r12
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], esi
mov esi, dword [rsp + 0x48]
mov r8d, esi
call fcn.140211fd0
mov rdi, qword [rsp + 0x58]
mov ecx, 0x1020
mov rbx, qword [rsp + 0x40]
mov r11, qword [rbp + 0xb0]
mov rax, qword [rbp + 0xc0]
cmp dword [rax], 0
jne 0x140226525
test word [r11 + 0x44], cx
jne 0x140226511
mov r9, r11
mov r8d, r15d
mov edx, esi
mov rcx, rdi
call fcn.14023a930
mov rcx, qword [rdi + 0x48]
test rcx, rcx
je 0x140226525
mov r8, qword [rbp - 0x48]
mov edx, esi
call fcn.14023a450
mov r9, qword [rbp + 0xc0]
mov eax, 0x1000
test dword [rbx + 0x38], eax
je 0x14022653d
mov byte [r9 + 0x41], 0xb8
jmp 0x140226549
test r13d, r13d
sete al
add al, 0x25
mov byte [r9 + 0x41], al
mov dword [r9 + 0x44], r15d
movzx eax, byte [rbx + 0x3a]
and al, 1
mov byte [r9 + 0x42], al
test byte [rbx + 0x38], 0xf
jne 0x140226562
mov byte [r9 + 0x43], 1
mov rcx, qword [rbp + 0xb0]
xor r13d, r13d
test r14d, r14d
je 0x1402271b6
mov edx, r13d
mov qword [rsp + 0x58], rdx
jmp 0x140225454
bt edx, 0xd
jae 0x140227166
inc dword [r15 + 0x38]
mov r12, r10
dec dword [r15 + 0x44]
mov r13, r10
mov eax, dword [r15 + 0x34]
mov esi, dword [r15 + 0x38]
mov r14d, dword [r15 + 0x44]
mov dword [rsp + 0x78], eax
inc eax
mov dword [r15 + 0x34], eax
mov rax, qword [r11 + 0x48]
mov r15, qword [rbp - 0x40]
mov qword [rsp + 0x68], r10
mov dword [rbp - 0x80], esi
mov rax, qword [rax]
mov rcx, qword [r15 + 0x20]
mov qword [rbp - 0x20], rax
mov dword [rsp + 0x64], r10d
mov rax, qword [rax + 0x20]
mov qword [rbp - 0x28], rax
mov rax, qword [rbp + 0xc0]
mov dword [rsp + 0x50], r10d
mov dword [rbp - 0x70], r14d
mov dword [rsp + 0x7c], r10d
mov byte [rax + 0x41], 0x43
mov dword [rax + 0x44], esi
movzx eax, byte [rbx + 0x48]
mov qword [rbp - 0x68], r10
mov qword [rbp - 0x38], rcx
cmp al, 1
jbe 0x140226862
mov r8, qword [rbp - 0x78]
mov ebx, eax
sub ebx, edi
dec ebx
movsxd rax, ebx
imul rcx, rax, 0x68
add rcx, 0x70
test r8, r8
je 0x14022671c
movzx eax, word [r8 + 0x1a4]
cmp rcx, rax
jbe 0x14022666c
cmp dword [r8 + 0x1a0], 0
jne 0x140226654
inc dword [r8 + 0x1b4]
mov rdx, rcx
mov rcx, r8
call fcn.1401aaf90
jmp 0x140226721
cmp byte [r8 + 0x67], 0
je 0x14022670f
mov r15, r10
mov qword [rsp + 0x40], r10
jmp 0x140226729
cmp rcx, 0x80
ja 0x1402266c0
mov r15, qword [r8 + 0x1d8]
mov qword [rsp + 0x40], r15
test r15, r15
je 0x14022669c
mov rax, qword [r15]
mov qword [r8 + 0x1d8], rax
inc dword [r8 + 0x1b0]
jmp 0x140226729
mov r15, qword [r8 + 0x1d0]
mov qword [rsp + 0x40], r15
test r15, r15
je 0x1402266c0
mov rax, qword [r15]
mov qword [r8 + 0x1d0], rax
inc dword [r8 + 0x1b0]
jmp 0x140226729
mov r15, qword [r8 + 0x1c8]
mov qword [rsp + 0x40], r15
test r15, r15
je 0x1402266e4
mov rax, qword [r15]
mov qword [r8 + 0x1c8], rax
inc dword [r8 + 0x1b0]
jmp 0x140226729
mov r15, qword [r8 + 0x1c0]
mov qword [rsp + 0x40], r15
test r15, r15
je 0x140226708
mov rax, qword [r15]
inc dword [r8 + 0x1b0]
mov qword [r8 + 0x1c0], rax
jmp 0x140226729
inc dword [r8 + 0x1b8]
mov rdx, rcx
mov rcx, r8
call fcn.1401aaf90
jmp 0x140226721
call fcn.1401f83e0
mov r15, rax
mov qword [rsp + 0x40], rax
test r15, r15
jne 0x14022673a
mov rax, qword [rbp + 0xc8]
jmp 0x1402278ce
lea eax, [rbx + 1]
movzx ecx, al
mov rax, qword [rbp - 0x40]
mov dword [r15 + 4], ecx
mov dword [r15], ecx
movups xmm0, xmmword [rax]
movups xmmword [r15 + 8], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [r15 + 0x18], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [r15 + 0x28], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [r15 + 0x38], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [r15 + 0x48], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [r15 + 0x58], xmm1
movsd xmm0, qword [rax + 0x60]
mov rax, qword [rbp + 0xb0]
movsd qword [r15 + 0x68], xmm0
mov r10, qword [rax + 8]
cmp ebx, 1
jl 0x14022681e
mov r8, qword [rbp + 0xc0]
lea rdx, [r15 + 0x70]
add r8, 0xb0
mov r9d, ebx
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [r8]
lea rdx, [rdx + 0x68]
imul rcx, rax, 0x68
lea r8, [r8 + 0x70]
movups xmm0, xmmword [rcx + r10 + 8]
movups xmmword [rdx - 0x68], xmm0
movups xmm1, xmmword [rcx + r10 + 0x18]
movups xmmword [rdx - 0x58], xmm1
movups xmm0, xmmword [rcx + r10 + 0x28]
movups xmmword [rdx - 0x48], xmm0
movups xmm1, xmmword [rcx + r10 + 0x38]
movups xmmword [rdx - 0x38], xmm1
movups xmm0, xmmword [rcx + r10 + 0x48]
movups xmmword [rdx - 0x28], xmm0
movups xmm1, xmmword [rcx + r10 + 0x58]
movups xmmword [rdx - 0x18], xmm1
movsd xmm0, qword [rcx + r10 + 0x68]
movsd qword [rdx - 8], xmm0
sub r9, 1
jne 0x1402267c0
mov rbx, qword [rbp + 0xb0]
mov rcx, qword [rbp - 0x38]
test byte [rbx + 0x44], 0x10
jne 0x1402268cd
test byte [rcx + 0x30], 0x80
jne 0x14022686d
mov rdi, qword [rbp + 0xa0]
xor r8d, r8d
mov rcx, qword [rbp + 0xa8]
inc dword [rdi + 0x38]
lea edx, [r8 + 0x4b]
mov esi, dword [rdi + 0x38]
mov r9d, esi
mov dword [rsp + 0x64], esi
call fcn.140211dc0
jmp 0x1402268c0
mov r15, qword [rbx + 8]
mov qword [rsp + 0x40], r15
jmp 0x140226829
mov rbx, qword [rcx + 0x10]
test rbx, rbx
je 0x140226888
mov eax, dword [rbx + 0x64]
and al, 3
cmp al, 2
je 0x140226888
mov rbx, qword [rbx + 0x28]
test rbx, rbx
jne 0x140226876
mov rdi, qword [rbp + 0xa0]
mov edx, 0x76
mov rcx, qword [rbp + 0xa8]
mov esi, dword [rdi + 0x34]
mov r8d, esi
mov dword [rsp + 0x64], esi
lea eax, [rsi + 1]
mov dword [rdi + 0x34], eax
movzx r9d, word [rbx + 0x5e]
call fcn.140211dc0
mov rdx, rbx
mov rcx, rdi
call fcn.140220200
inc dword [rdi + 0x38]
mov eax, dword [rdi + 0x38]
mov esi, dword [rbp - 0x80]
mov dword [rsp + 0x50], eax
mov r10, qword [rbp + 0xa8]
movsxd rdx, dword [r10 + 0x90]
mov dword [rsp + 0x74], edx
cmp dword [r10 + 0x94], edx
jg 0x14022690a
xor r8d, r8d
mov dword [rsp + 0x20], 0
mov r9d, esi
mov rcx, r10
lea edx, [r8 + 0x47]
call fcn.1401b8f70
mov dword [rsp + 0x74], eax
xor edx, edx
jmp 0x140226936
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
xor edx, edx
mov dword [r10 + 0x90], eax
mov rax, qword [r10 + 0x88]
mov qword [rax + rcx*8], 0x47
mov dword [rax + rcx*8 + 8], esi
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], rdx
mov rax, qword [rbp - 0x48]
cmp dword [rax + 0x14], 1
jle 0x140226b3e
mov rsi, qword [rbp - 0x20]
mov ebx, edx
mov r12, qword [rbp + 0xa0]
mov rdi, rdx
mov r15, qword [rbp - 0x78]
mov r8d, 0x8006
mov r9d, 0x3fff
mov r14, rax
nop word [rax + rax]
mov rdx, qword [r14 + 0x20]
movsxd rax, ebx
imul rcx, rax, 0x38
mov r10, qword [rdx + rdi]
add rcx, rdx
cmp rcx, rsi
je 0x1402269cf
test word [rdx + rdi + 0x12], r8w
jne 0x1402269cf
test word [rdx + rdi + 0x14], r9w
je 0x1402269cf
test dword [r10 + 4], 0x400000
jne 0x1402269cf
xor r9d, r9d
xor r8d, r8d
mov rdx, r10
mov rcx, r15
call fcn.1401aff70
mov r8, rax
mov rdx, r13
mov rcx, r12
call fcn.1401e5a90
mov r13, rax
mov r8d, 0x8006
mov r9d, 0x3fff
inc ebx
add rdi, 0x38
cmp ebx, dword [r14 + 0x14]
jl 0x140226970
mov r15, qword [rsp + 0x40]
mov r12, qword [rsp + 0x68]
mov r14d, dword [rbp - 0x70]
mov rsi, qword [rbp + 0xa0]
mov qword [rbp - 0x68], r13
test r13, r13
je 0x140226b45
mov rcx, qword [rsi]
mov edx, 0x48
cmp dx, word [rcx + 0x1a4]
jbe 0x140226a45
cmp dword [rcx + 0x1a0], 0
jne 0x140226a22
inc dword [rcx + 0x1b4]
jmp 0x140226ac3
cmp byte [rcx + 0x67], 0
je 0x140226ac3
xor ebx, ebx
mov rcx, qword [rsi]
mov rdx, r13
call fcn.1401e9a70
mov r13, rbx
mov qword [rbp - 0x68], rbx
jmp 0x140226b45
mov rbx, qword [rcx + 0x1d8]
test rbx, rbx
je 0x140226a63
mov rax, qword [rbx]
mov qword [rcx + 0x1d8], rax
inc dword [rcx + 0x1b0]
jmp 0x140226ad4
mov rbx, qword [rcx + 0x1d0]
test rbx, rbx
je 0x140226a81
mov rax, qword [rbx]
mov qword [rcx + 0x1d0], rax
inc dword [rcx + 0x1b0]
jmp 0x140226ad4
mov rbx, qword [rcx + 0x1c8]
test rbx, rbx
je 0x140226a9f
mov rax, qword [rbx]
mov qword [rcx + 0x1c8], rax
inc dword [rcx + 0x1b0]
jmp 0x140226ad4
mov rbx, qword [rcx + 0x1c0]
test rbx, rbx
je 0x140226abd
mov rax, qword [rbx]
inc dword [rcx + 0x1b0]
mov qword [rcx + 0x1c0], rax
jmp 0x140226ad4
inc dword [rcx + 0x1b8]
call fcn.1401aaf90
mov rbx, rax
test rax, rax
je 0x140226a2e
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbx], xmm0
mov rcx, rbx
movups xmmword [rbx + 0x10], xmm0
movups xmmword [rbx + 0x20], xmm0
movups xmmword [rbx + 0x30], xmm0
mov qword [rbx + 0x40], rax
mov rax, 0xffffffffffffffff
mov word [rbx + 0x32], ax
mov byte [rbx], 0x2c
mov qword [rbx + 0x18], r13
mov eax, dword [r13 + 4]
and eax, 0x400208
or dword [rbx + 4], eax
call fcn.1401b10f0
mov rax, qword [rsi]
mov r8d, dword [rax + 0x94]
cmp dword [rbx + 0x28], r8d
jle 0x140226a39
lea rdx, str.Expression_tree_is_too_large__maximum_depth__d_
mov rcx, rsi
call fcn.1401e5070
mov r13, rbx
mov qword [rbp - 0x68], rbx
jmp 0x140226b45
mov rsi, qword [rbp + 0xa0]
lea r8, str.MULTI_INDEX_OR
mov edx, 1
mov rcx, rsi
call fcn.14021c0c0
mov rax, qword [rbp - 0x28]
xor r10d, r10d
mov edi, r10d
mov dword [rbp + 0xb8], r10d
cmp dword [rax + 0x14], r10d
jle 0x14022703a
mov r14d, r10d
mov qword [rbp - 0x60], r10
nop dword [rax + rax]
mov rax, qword [rax + 0x20]
mov ecx, dword [rsp + 0x48]
cmp dword [r14 + rax + 0x1c], ecx
je 0x140226ba0
mov ecx, 0x400
test word [r14 + rax + 0x14], cx
je 0x14022700c
mov rdx, qword [r14 + rax]
mov dword [rbp - 0x6c], r10d
test rdx, rdx
je 0x140226bc1
mov rcx, qword [rbp - 0x78]
xor r9d, r9d
xor r8d, r8d
call fcn.1401aff70
mov rbx, rax
jmp 0x140226bc4
mov rbx, r10
mov rax, qword [rbp - 0x78]
mov rsi, rbx
mov qword [rbp - 0x18], rbx
cmp byte [rax + 0x67], 0
je 0x140226be9
test rbx, rbx
je 0x14022700c
mov rdx, rbx
mov rcx, rax
jmp 0x140227007
test r13, r13
je 0x140226bf5
mov qword [r13 + 0x10], rbx
mov rbx, r13
mov rcx, qword [rbp + 0xa0]
lea r9d, [rdi + 1]
lea r8, str.INDEX__d
mov edx, 1
call fcn.14021c0c0
mov eax, dword [rsp + 0x78]
xor r9d, r9d
mov rcx, qword [rbp + 0xa0]
mov r8, rbx
mov dword [rsp + 0x38], eax
mov rdx, r15
mov eax, 0x20
mov word [rsp + 0x30], ax
xor eax, eax
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rax
call fcn.140223360
mov qword [rbp - 0x58], rax
mov rbx, rax
test rax, rax
je 0x140226ffb
mov rcx, qword [rbp + 0xa0]
lea r8, [rax + 0x370]
xor r9d, r9d
mov rdx, r15
call fcn.140228ac0
mov rax, qword [rbp + 0xb0]
test byte [rax + 0x44], 0x10
jne 0x140226f1d
mov rax, qword [rbp - 0x28]
mov r13d, edi
mov ecx, dword [rax + 0x14]
mov rax, 0xffffffffffffffff
dec ecx
cmp edi, ecx
cmove r13d, eax
mov rax, qword [rbp - 0x38]
mov dword [rsp + 0x54], r13d
test byte [rax + 0x30], 0x80
jne 0x140226d4d
mov r10, qword [rbp + 0xa8]
movsxd rcx, dword [r10 + 0x90]
cmp dword [r10 + 0x94], ecx
jg 0x140226ce9
mov r9d, dword [rsp + 0x50]
mov edx, 0x87
mov r8d, dword [rsp + 0x48]
mov rcx, r10
mov dword [rsp + 0x20], 0
call fcn.1401b8f70
mov r10, qword [rbp + 0xa8]
jmp 0x140226d24
mov r9d, dword [rsp + 0x48]
lea eax, [rcx + 1]
mov edx, dword [rsp + 0x50]
lea rcx, [rcx + rcx*2]
mov dword [r10 + 0x90], eax
xor r8d, r8d
mov rax, qword [r10 + 0x88]
mov dword [rax + rcx*8], 0x87
mov dword [rax + rcx*8 + 4], r9d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r8d
mov qword [rax + rcx*8 + 0x10], r8
mov eax, dword [rsp + 0x50]
xor r9d, r9d
mov r8d, dword [rsp + 0x64]
mov rcx, r10
mov dword [rsp + 0x28], r13d
mov dword [rsp + 0x20], eax
lea edx, [r9 + 0x2e]
call fcn.140211fd0
mov dword [rbp - 0x6c], eax
jmp 0x140226f19
mov rbx, qword [rax + 0x10]
test rbx, rbx
je 0x140226d68
mov eax, dword [rbx + 0x64]
and al, 3
cmp al, 2
je 0x140226d68
mov rbx, qword [rbx + 0x28]
test rbx, rbx
jne 0x140226d56
movzx r15d, word [rbx + 0x5e]
mov rdx, qword [rbp + 0xa0]
cmp r15d, 1
jne 0x140226d9d
movzx eax, byte [rdx + 0x1f]
test al, al
jne 0x140226d8b
inc dword [rdx + 0x38]
mov r12d, dword [rdx + 0x38]
jmp 0x140226dca
dec al
movzx eax, al
mov byte [rdx + 0x1f], al
mov r12d, dword [rdx + rax*4 + 0xd8]
jmp 0x140226dca
mov ecx, dword [rdx + 0x28]
mov r12d, dword [rdx + 0x2c]
mov dword [rsp + 0x4c], r12d
cmp r15d, ecx
jg 0x140226dbd
lea eax, [r15 + r12]
sub ecx, r15d
mov dword [rdx + 0x2c], eax
mov dword [rdx + 0x28], ecx
jmp 0x140226dcf
mov eax, dword [rdx + 0x38]
lea r12d, [rax + 1]
add eax, r15d
mov dword [rdx + 0x38], eax
mov dword [rsp + 0x4c], r12d
xor edi, edi
mov r14, r15
test r15d, r15d
je 0x140226e26
mov r13, qword [rbp - 0x38]
mov esi, r12d
mov r12d, dword [rsp + 0x48]
mov r15, qword [rbp + 0xa8]
nop dword [rax]
mov rax, qword [rbx + 8]
mov r8d, r12d
mov rdx, r13
mov dword [rsp + 0x20], esi
mov rcx, r15
movsx r9d, word [rax + rdi*2]
call fcn.1401e66e0
inc esi
inc rdi
cmp rdi, r14
jl 0x140226df0
mov r12d, dword [rsp + 0x4c]
mov r15d, r14d
mov r13d, dword [rsp + 0x54]
mov rsi, qword [rbp - 0x18]
mov rdi, qword [rbp + 0xa8]
test r13d, r13d
je 0x140226e58
mov r8d, dword [rsp + 0x64]
xor r9d, r9d
mov dword [rsp + 0x28], r15d
mov rcx, rdi
mov dword [rsp + 0x20], r12d
lea edx, [r9 + 0x1c]
call fcn.140211fd0
mov dword [rbp - 0x6c], eax
test r13d, r13d
js 0x140226eb7
mov ebx, dword [rsp + 0x50]
mov r9d, r15d
mov r8d, r12d
mov dword [rsp + 0x20], ebx
mov edx, 0x61
mov rcx, rdi
call fcn.140211e30
mov r8d, dword [rsp + 0x64]
mov r9d, ebx
mov edx, 0x8a
mov dword [rsp + 0x28], r15d
mov rcx, rdi
mov dword [rsp + 0x20], r12d
call fcn.140211fd0
test r13d, r13d
je 0x140226eb7
movsxd rax, dword [rdi + 0x90]
test eax, eax
jle 0x140226eb7
lea rcx, [rax + rax*2]
mov edx, 0x10
mov rax, qword [rdi + 0x88]
mov word [rax + rcx*8 - 0x16], dx
mov rbx, qword [rbp - 0x58]
mov edi, dword [rbp + 0xb8]
mov r14, qword [rbp - 0x60]
cmp r15d, 1
jne 0x140226efa
test r12d, r12d
je 0x140226f0f
mov rcx, qword [rbp + 0xa0]
mov r15, qword [rsp + 0x40]
mov r13, qword [rbp - 0x68]
movzx eax, byte [rcx + 0x1f]
cmp al, 8
jae 0x140226ef3
mov dword [rcx + rax*4 + 0xd8], r12d
inc byte [rcx + 0x1f]
mov r12, qword [rsp + 0x68]
jmp 0x140226f1d
mov rax, qword [rbp + 0xa0]
cmp r15d, dword [rax + 0x28]
jle 0x140226f0f
mov dword [rax + 0x28], r15d
mov dword [rax + 0x2c], r12d
mov r15, qword [rsp + 0x40]
mov r12, qword [rsp + 0x68]
mov r13, qword [rbp - 0x68]
mov r9d, dword [rbp - 0x70]
mov edx, 9
mov r8d, dword [rbp - 0x80]
mov rcx, qword [rbp + 0xa8]
call fcn.140211dc0
mov ecx, dword [rbp - 0x6c]
test ecx, ecx
je 0x140226f79
mov r8, qword [rbp + 0xa8]
mov rax, qword [r8]
mov edx, dword [r8 + 0x90]
cmp byte [rax + 0x67], 0
je 0x140226f5d
lea rax, [0x1402f3210]
jmp 0x140226f76
test ecx, ecx
lea eax, [rdx - 1]
cmovns eax, ecx
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [r8 + 0x88]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
mov eax, dword [rbx + 0x4c]
mov r8d, 1
mov ecx, dword [rsp + 0x7c]
test al, 2
mov rdx, qword [rbx + 0x3d0]
cmovne ecx, r8d
mov dword [rsp + 0x7c], ecx
mov ecx, eax
test dword [rdx + 0x38], 0x200
je 0x140226fcf
test edi, edi
je 0x140226fac
cmp qword [rdx + 0x20], r12
jne 0x140226fcf
mov r8, qword [rbp - 0x38]
mov r12, qword [rdx + 0x20]
mov qword [rsp + 0x68], r12
test byte [r8 + 0x30], 0x80
je 0x1402270a3
mov eax, dword [r12 + 0x64]
and al, 3
cmp al, 2
jne 0x140226fd7
xor r12d, r12d
mov qword [rsp + 0x68], r12
test cl, 1
je 0x140226fe7
mov rax, qword [rbp + 0xb0]
or dword [rax + 0x4c], 1
mov rcx, rbx
call fcn.1402278f0
mov rcx, qword [rbp + 0xa0]
call fcn.14021c200
test rsi, rsi
je 0x14022700c
mov rcx, qword [rbp - 0x78]
mov rdx, rsi
call fcn.1401e9a70
mov rax, qword [rbp - 0x28]
inc edi
add r14, 0x38
mov dword [rbp + 0xb8], edi
mov qword [rbp - 0x60], r14
mov r10d, 0
cmp edi, dword [rax + 0x14]
jl 0x140226b80
mov r14d, dword [rbp - 0x70]
mov rsi, qword [rbp + 0xa0]
mov rcx, rsi
call fcn.14021c200
mov r8, qword [rbp + 0xc0]
mov qword [r8 + 0x50], r12
test r12, r12
je 0x14022705a
mov eax, dword [rsp + 0x78]
mov dword [r8 + 8], eax
mov rdi, qword [rbp - 0x78]
test r13, r13
je 0x140227079
mov rdx, r13
mov qword [r13 + 0x10], r10
mov rcx, rdi
call fcn.1401e9a70
mov r8, qword [rbp + 0xc0]
mov rbx, qword [rbp + 0xa8]
mov ecx, dword [rsp + 0x74]
mov edx, dword [rbx + 0x90]
test ecx, ecx
jns 0x140227091
lea ecx, [rdx - 1]
mov rax, qword [rbx]
cmp byte [rax + 0x67], 0
je 0x1402270aa
lea rax, [0x1402f3210]
jmp 0x1402270bc
mov ecx, eax
jmp 0x140226fd7
movsxd rax, ecx
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x88]
lea rax, [rax + rcx*8]
mov dword [rax + 4], edx
mov rcx, rbx
mov edx, dword [r8 + 0xc]
call fcn.14021c800
mov rcx, qword [rbx + 0x18]
not r14d
mov eax, dword [rcx + 0x48]
add eax, dword [rcx + 0x44]
jns 0x1402270ee
mov r8d, r14d
mov r14, qword [rbp + 0xa8]
mov rdx, r14
call fcn.1401cd480
jmp 0x140227106
mov rcx, qword [rcx + 0x50]
movsxd rdx, r14d
mov r14, qword [rbp + 0xa8]
mov eax, dword [r14 + 0x90]
mov dword [rcx + rdx*4], eax
mov r9, qword [rbp + 0xc0]
mov rcx, qword [rbp + 0xb0]
mov eax, dword [r14 + 0x90]
mov dword [r9 + 0x48], eax
cmp byte [rcx + 0x48], 1
jbe 0x140227143
test r15, r15
je 0x140227143
mov rdx, r15
mov rcx, rdi
call fcn.1401e2370
mov r9, qword [rbp + 0xc0]
mov rcx, qword [rbp + 0xb0]
cmp dword [rsp + 0x7c], 0
jne 0x14022544e
mov rdx, qword [rbp - 0x20]
mov rcx, r9
call fcn.1401abff0
mov r9, qword [rbp + 0xc0]
jmp 0x140225447
test r8b, 0x40
jne 0x14022543e
mov ecx, esi
lea r15, [0x140000000]
movzx eax, byte [rsi + r15 + 0x28aedc]
mov esi, dword [rsp + 0x48]
mov r8d, esi
mov byte [r12 + 0x41], al
movzx edx, byte [rcx + r15 + 0x28af6c]
mov rcx, r14
mov dword [r12 + 0x44], esi
call fcn.140211dc0
inc eax
mov byte [r12 + 0x43], 1
mov dword [r12 + 0x48], eax
jmp 0x140225444
mov rdx, qword [rsp + 0x58]
jmp 0x140225454
mov rax, qword [rbp - 0x40]
mov rdi, qword [rbx]
movzx eax, byte [rax + 0x3c]
test al, 0x58
je 0x140227257
mov ecx, dword [rdi + 4]
test cl, 3
je 0x14022735d
test al, 8
je 0x1402271ec
test cl, 1
je 0x14022735d
mov rcx, qword [rbp + 0xb0]
mov r8d, dword [rdi + 0x34]
cmp dword [rcx + 0x270], r8d
jne 0x140227207
mov eax, 1
jmp 0x140227247
movsxd r9, dword [rcx + 0x26c]
mov edx, 1
mov eax, 2
cmp rdx, r9
jge 0x140227238
add rcx, 0x274
cmp dword [rcx], r8d
je 0x14022723b
rol rax, 1
inc rdx
add rcx, 4
cmp rdx, r9
jl 0x140227224
mov rax, r13
mov rdx, qword [rsp + 0x58]
mov r9, qword [rbp + 0xc0]
test rax, r11
jne 0x14022735d
lea r8, [0x1401b0400]
cmp r12d, 1
jne 0x1402272ae
mov eax, dword [r9 + 4]
xorps xmm0, xmm0
mov dword [rbp - 0x10], eax
lea rax, [rbp - 0x18]
mov qword [rbp + 0x28], rax
mov qword [rbp], r13
mov qword [rbp + 0x20], r13
mov qword [rbp - 0x18], rdx
mov qword [rbp + 8], r8
movdqu xmmword [rbp + 0x10], xmm0
test rdi, rdi
je 0x14022729c
mov rdx, rdi
lea rcx, [rbp]
call fcn.14023a070
mov r9, qword [rbp + 0xc0]
cmp word [rbp + 0x24], 0
je 0x1402272b4
mov r14d, 2
jmp 0x14022735d
cmp r12d, 3
jge 0x1402272d5
movzx r10d, word [rbx + 0x12]
bt r10w, 0xc
jae 0x1402272d5
test r14d, r14d
jne 0x14022735d
mov r14d, 3
jmp 0x14022735d
bt r10w, 9
mov r13, qword [rbp + 0xa8]
jae 0x140227302
mov edx, dword [r9 + 0x2c]
test edx, edx
je 0x140227302
mov r8d, edx
mov rcx, r13
and edx, 1
shr r8d, 1
add edx, 0xf
call fcn.140211d50
mov esi, eax
mov r8d, dword [rbp - 0x50]
mov r9d, 0x10
mov rcx, qword [rbp + 0xa0]
mov rdx, rdi
call fcn.1401e9d90
test esi, esi
je 0x140227355
mov rcx, qword [r13]
mov edx, dword [r13 + 0x90]
cmp byte [rcx + 0x67], 0
je 0x140227339
lea rax, [0x1402f3210]
jmp 0x140227352
lea eax, [rdx - 1]
test esi, esi
cmovns eax, esi
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [r13 + 0x88]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
or word [rbx + 0x12], 4
xor r13d, r13d
mov r9, qword [rbp + 0xc0]
lea r8, [0x1401b0400]
mov rcx, qword [rbp + 0xb0]
dec r15d
mov rdx, qword [rsp + 0x58]
add rbx, 0x38
test r15d, r15d
jg 0x140225484
mov r10, qword [rbp - 0x48]
lea r8, [0x1401b0400]
mov rbx, qword [r10 + 0x20]
mov r9, qword [rbp + 0xc0]
mov r12d, r14d
mov rcx, qword [rbp + 0xb0]
test r14d, r14d
jg 0x140225470
mov esi, dword [r10 + 0x1c]
test esi, esi
jle 0x1402274c3
mov r15, qword [rbp - 0x40]
lea rdi, [rbx + 0x14]
mov r12, qword [rbp + 0xc8]
nop dword [rax + rax]
test byte [rdi - 2], 6
jne 0x1402274b5
movzx eax, word [rdi]
mov edx, VariantTimeToDosDateTime
test al, 0x82
setne cl
bt ax, dx
setb al
test al, cl
je 0x1402274b5
mov eax, dword [rsp + 0x48]
cmp dword [rdi + 8], eax
jne 0x1402274b5
test byte [r15 + 0x3c], 0x58
jne 0x1402274b5
mov r8d, dword [rdi + 0xc]
mov r9, r12
mov r14, qword [rdi - 0x14]
mov edx, eax
mov qword [rsp + 0x28], r13
mov rcx, r10
mov dword [rsp + 0x20], 0x83
call fcn.140229130
mov rbx, rax
test rax, rax
je 0x1402274b1
test byte [rax + 0x12], 4
jne 0x1402274b1
test byte [rax + 0x14], 1
je 0x14022745e
mov rax, qword [rax]
mov ecx, 0x1000
test dword [rax + 4], ecx
je 0x14022745e
mov rax, qword [rax + 0x20]
mov rcx, qword [rax + 0x20]
cmp dword [rcx], 1
jg 0x1402274b1
mov rax, qword [rbx]
lea rdx, [rbp]
mov r8d, dword [rbp - 0x50]
mov r9d, 0x10
mov rcx, qword [rbp + 0xa0]
movups xmm0, xmmword [rax]
movaps xmmword [rbp], xmm0
movups xmm1, xmmword [rax + 0x10]
movaps xmmword [rbp + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movaps xmmword [rbp + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movaps xmmword [rbp + 0x30], xmm1
movsd xmm0, qword [rax + 0x40]
movsd qword [rbp + 0x40], xmm0
mov rax, qword [r14 + 0x10]
mov qword [rbp + 0x10], rax
call fcn.1401e9d90
or word [rbx + 0x12], 4
mov r10, qword [rbp - 0x48]
dec esi
add rdi, 0x38
test esi, esi
jg 0x1402273d0
mov r8, qword [rbp + 0xc0]
mov r14, qword [r8 + 0x38]
mov qword [rbp + 0xc8], r14
test r14, r14
je 0x140227753
movzx eax, byte [r8 + 0x40]
imul rcx, rax, 0x68
mov rax, qword [rbp + 0xb0]
mov rax, qword [rax + 8]
mov r13, qword [rcx + rax + 0x28]
test byte [r13 + 0x30], 0x80
jne 0x140227559
mov rdx, qword [rbp + 0xa0]
mov ecx, dword [rdx + 0x28]
mov esi, dword [rdx + 0x2c]
cmp ecx, 2
jl 0x14022751e
lea eax, [rsi + 2]
mov dword [rdx + 0x2c], eax
lea eax, [rcx - 2]
mov dword [rdx + 0x28], eax
jmp 0x14022752a
mov eax, dword [rdx + 0x38]
lea esi, [rax + 1]
add eax, 2
mov dword [rdx + 0x38], eax
mov r12, qword [rbp + 0xa8]
lea eax, [rsi + 1]
mov r8d, dword [r8 + 4]
mov rcx, r12
mov r9, 0xffffffffffffffff
mov dword [rsp + 0x20], eax
mov rdx, r13
call fcn.1401e66e0
mov r15d, 1
jmp 0x140227652
mov rbx, qword [r13 + 0x10]
test rbx, rbx
je 0x140227574
mov eax, dword [rbx + 0x64]
and al, 3
cmp al, 2
je 0x140227574
mov rbx, qword [rbx + 0x28]
test rbx, rbx
jne 0x140227562
movzx r15d, word [rbx + 0x5e]
mov dword [rbp + 0xb0], r15d
lea ecx, [r15 + 1]
cmp ecx, 1
jne 0x1402275b1
mov rcx, qword [rbp + 0xa0]
movzx eax, byte [rcx + 0x1f]
test al, al
jne 0x1402275a0
inc dword [rcx + 0x38]
mov esi, dword [rcx + 0x38]
jmp 0x1402275e6
dec al
movzx eax, al
mov byte [rcx + 0x1f], al
mov esi, dword [rcx + rax*4 + 0xd8]
jmp 0x1402275e6
mov r8, qword [rbp + 0xa0]
mov edx, dword [r8 + 0x28]
mov esi, dword [r8 + 0x2c]
mov dword [rbp + 0xb8], esi
cmp ecx, edx
jg 0x1402275d9
lea eax, [rcx + rsi]
sub edx, ecx
mov dword [r8 + 0x2c], eax
mov dword [r8 + 0x28], edx
jmp 0x1402275ec
mov eax, dword [r8 + 0x38]
lea esi, [rax + 1]
add eax, ecx
mov dword [r8 + 0x38], eax
mov dword [rbp + 0xb8], esi
mov r12, r15
test r15, r15
je 0x14022764b
mov r15, qword [rbp + 0xa8]
lea r14d, [rsi + 1]
mov esi, dword [rsp + 0x48]
xor edi, edi
nop word [rax + rax]
mov rax, qword [rbx + 8]
mov r8d, esi
mov rdx, r13
mov dword [rsp + 0x20], r14d
mov rcx, r15
movsx r9d, word [rax + rdi*2]
call fcn.1401e66e0
inc r14d
inc rdi
cmp rdi, r12
jl 0x140227610
mov esi, dword [rbp + 0xb8]
mov r15d, dword [rbp + 0xb0]
mov r14, qword [rbp + 0xc8]
mov r12, qword [rbp + 0xa8]
mov r8d, dword [r14]
lea ebx, [rsi + 1]
xor r9d, r9d
mov dword [rsp + 0x28], r15d
mov rcx, r12
mov dword [rsp + 0x20], ebx
lea edx, [r9 + 0x1c]
call fcn.140211fd0
mov r9d, r15d
mov dword [rsp + 0x20], esi
mov r8d, ebx
mov edx, 0x61
mov rcx, r12
mov edi, eax
call fcn.140211e30
mov r8d, dword [r14]
mov r9d, esi
mov edx, 0x8a
mov dword [rsp + 0x28], r15d
mov rcx, r12
mov dword [rsp + 0x20], ebx
call fcn.140211fd0
mov r8d, dword [r14 + 4]
xor r9d, r9d
mov edx, 0xb4
mov dword [rsp + 0x28], r15d
mov rcx, r12
mov dword [rsp + 0x20], ebx
call fcn.140211fd0
movsxd rdx, dword [r12 + 0x90]
test edx, edx
jle 0x1402276ec
mov rax, qword [r12 + 0x88]
lea rcx, [rdx + rdx*2]
mov edx, 0x10
mov word [rax + rcx*8 - 0x16], dx
mov edx, dword [r12 + 0x90]
test edi, edi
jns 0x1402276f3
lea edi, [rdx - 1]
mov rax, qword [r12]
cmp byte [rax + 0x67], 0
je 0x140227706
lea rax, [0x1402f3210]
jmp 0x140227719
movsxd rax, edi
lea rcx, [rax + rax*2]
mov rax, qword [r12 + 0x88]
lea rax, [rax + rcx*8]
mov rdi, qword [rbp + 0xa0]
inc r15d
mov dword [rax + 8], edx
cmp r15d, 1
jne 0x140227744
test esi, esi
je 0x140227761
movzx eax, byte [rdi + 0x1f]
cmp al, 8
jae 0x140227761
mov dword [rdi + rax*4 + 0xd8], esi
inc byte [rdi + 0x1f]
jmp 0x140227761
cmp r15d, dword [rdi + 0x28]
jle 0x140227761
mov dword [rdi + 0x28], r15d
mov dword [rdi + 0x2c], esi
jmp 0x140227761
mov r12, qword [rbp + 0xa8]
mov rdi, qword [rbp + 0xa0]
mov r14, qword [rbp + 0xc0]
mov r9d, dword [r14]
test r9d, r9d
je 0x1402277f7
mov eax, dword [r12 + 0x90]
mov dword [r14 + 0x1c], eax
movsxd rcx, dword [r12 + 0x90]
cmp dword [r12 + 0x94], ecx
jg 0x1402277ad
mov edx, 0x47
mov dword [rsp + 0x20], 0
mov rcx, r12
lea r8d, [rdx - 0x46]
call fcn.1401b8f70
jmp 0x1402277e6
lea eax, [rcx + 1]
xor edx, edx
mov dword [r12 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r12 + 0x88]
mov r8d, 1
mov dword [rax + rcx*8], 0x47
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], r9d
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], rdx
cmp qword [r14 + 0x38], 0
je 0x140227873
mov rbx, qword [r14 + 0x38]
jmp 0x140227804
mov rbx, qword [r14 + 0x38]
test rbx, rbx
je 0x1402278ca
movsxd rcx, dword [r12 + 0x90]
mov edx, dword [rbx + 8]
cmp dword [r12 + 0x94], ecx
jg 0x140227835
xor r8d, r8d
mov dword [rsp + 0x20], 0
mov r9d, edx
mov rcx, r12
lea edx, [r8 + 0x4a]
call fcn.1401b8f70
jmp 0x140227865
lea eax, [rcx + 1]
xor r8d, r8d
mov dword [r12 + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [r12 + 0x88]
mov qword [rax + rcx*8], 0x4a
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r8d
mov qword [rax + rcx*8 + 0x10], r8
mov eax, dword [r12 + 0x90]
mov dword [rbx + 0xc], eax
inc byte [rdi + 0x26]
mov rsi, qword [rbp - 0x48]
cmp dword [rsi + 0x1c], 0
mov rbx, qword [rsi + 0x20]
jle 0x1402278ca
xor eax, eax
test byte [rbx + 0x12], 6
jne 0x1402278bb
mov rax, qword [rbx + 0x30]
test qword [r14 + 0x68], rax
jne 0x1402278b7
mov rax, qword [rbp - 0x40]
test byte [rax + 0x3c], 0x40
jne 0x1402278b7
mov r8d, dword [rbp - 0x50]
mov r9d, 0x10
mov rdx, qword [rbx]
mov rcx, rdi
call fcn.1401e9d90
or word [rbx + 0x12], 4
mov rax, qword [rbp - 0x30]
inc eax
add rbx, 0x38
mov qword [rbp - 0x30], rax
cmp eax, dword [rsi + 0x1c]
jl 0x140227883
mov rax, qword [r14 + 0x68]
add rsp, 0x158
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret