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

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x1d8
mov rdi, qword [rcx + 0x10]
mov eax, dword [rsp + 0x250]
mov qword [rsp + 0x98], rdi
mov rdi, qword [rcx]
mov r13, rcx
mov r12, r8
mov qword [rsp + 0x228], rdx
mov qword [rsp + 0x238], r9
mov word [rsp + 0x50], ax
mov qword [rsp + 0x90], rdi
mov qword [rsp + 0x130], 0
mov qword [rsp + 0x138], 0
mov qword [rsp + 0x140], 0
mov qword [rsp + 0x148], 0
mov qword [rsp + 0x150], 0
test r9, r9
je 0x1401da2d7
cmp dword [r9], 0x3f
jg 0x1401da699
mov rax, qword [rsp + 0x228]
mov eax, dword [rax]
mov dword [rsp + 0xe8], eax
cmp eax, 0x40
jg 0x1401dd76e
test byte [rsp + 0x50], 0x20
je 0x1401da670
mov dword [rsp + 0xe8], 1
mov edx, 0x440
mov ebx, 0x3d0
mov rdi, qword [rsp + 0x90]
mov rcx, rdi
call fcn.140173f40
mov r14, rax
movzx eax, byte [rdi + 0x67]
mov byte [rsp + 0x70], al
test al, al
jne 0x1401dbae4
mov edx, dword [rsp + 0xe8]
mov qword [r14], r13
add rbx, r14
xor r15d, r15d
mov rax, qword [rsp + 0x228]
mov qword [r14 + 0x28], 0xffffffffffffffff
lea rdi, [r14 + 0x49]
lea rsi, [r14 + 0x70]
mov byte [r14 + 0x40], dl
and rdi, 0xfffffffffffffff8
mov qword [r14 + 8], rax
mov rax, qword [rsp + 0x238]
mov qword [r14 + 0x10], rax
mov rax, qword [rsp + 0x240]
mov qword [r14 + 0x18], rax
mov eax, dword [r13 + 0x44]
sub eax, 1
mov dword [r13 + 0x44], eax
mov dword [r14 + 0x30], eax
mov dword [r14 + 0x34], eax
movzx eax, word [rsp + 0x50]
mov word [r14 + 0x3c], ax
movzx eax, word [rsp + 0x258]
mov word [r14 + 0x3e], ax
movsx eax, word [r13 + 0xe0]
mov dword [r14 + 0x38], eax
mov rax, qword [rsp + 0x248]
mov qword [r14 + 0x41], 0
mov qword [r14 + 0x20], rax
mov eax, r14d
sub eax, edi
mov qword [rsp + 0x60], rsi
lea ecx, [rax + 0x70]
xor eax, eax
mov qword [r14 + 0x68], 0
shr ecx, 3
rep stosq qword [rdi], rax
lea eax, [rdx + 1]
lea rcx, [r14 + 0x360]
mov edi, edx
cdqe
xor edx, edx
mov qword [rsp + 0xa0], rcx
lea r8, [rax*8]
mov qword [rsp + 0x88], rcx
sub r8, rax
shl r8, 4
call sub.msvcrt.dll_memset
mov r8d, 0x2c
mov rdx, r12
movabs rax, 0xffffff9d00000000
mov qword [r14 + 0x25c], rax
lea rax, [rbx + 0x58]
mov rcx, rsi
mov qword [rbx + 0x48], rax
mov eax, 3
mov word [rbx + 0x40], ax
lea rax, [r14 + 0x98]
mov word [rbx + 0x3c], r15w
mov dword [rbx + 0x38], 0
mov qword [r14 + 0x70], r14
mov byte [r14 + 0x81], 0
mov qword [r14 + 0x78], 0
mov dword [r14 + 0x84], 0
mov qword [r14 + 0x88], 8
mov qword [r14 + 0x90], rax
mov qword [rsp + 0x130], r14
mov qword [rsp + 0x138], rsi
mov qword [rsp + 0x140], rbx
call fcn.1401751d0
test edi, edi
jne 0x1401db8b8
cmp qword [rsp + 0x238], 0
je 0x1401da4cb
mov rax, qword [rsp + 0x238]
mov eax, dword [rax]
mov byte [r14 + 0x41], al
test word [rsp + 0x50], 0x100
jne 0x1401dbb05
lea r8, str.SCAN_CONSTANT_ROW
xor edx, edx
mov rcx, r13
call fcn.140199bf0
mov ebx, dword [r14 + 0x84]
sub ebx, 1
js 0x1401da51b
mov rsi, qword [rsp + 0x228]
mov rdi, qword [rsp + 0x60]
nop word [rax + rax]
mov r8d, ebx
mov rdx, rdi
mov rcx, rsi
call fcn.1401ea6a0
sub ebx, 1
jae 0x1401da508
cmp qword [rsp + 0x248], 0
je 0x1401da542
mov rax, qword [rsp + 0x248]
cmp qword [rax + 0x60], 0
je 0x1401da542
mov rcx, qword [rsp + 0x60]
mov rdx, rax
call fcn.140189b60
mov eax, dword [r13 + 0x30]
mov dword [rsp + 0x7c], eax
test eax, eax
jne 0x1401da6ba
mov rax, qword [rsp + 0x138]
xor edi, edi
xor esi, esi
lea rbp, [rsp + 0x160]
lea r12, [0x140156b80]
lea r15, [0x140155c00]
mov ebx, dword [rax + 0x1c]
test ebx, ebx
jle 0x1401da6f3
mov rcx, rbp
mov rbp, r13
mov r13, rcx
jmp 0x1401da5cd
test byte [rdx + 4], 2
je 0x1401da59e
mov rax, qword [rsp + 0x228]
test byte [rax + 0x44], 0x40
jne 0x1401da5b5
mov r8d, dword [r14 + 0x34]
mov r9d, 0x10
mov rcx, rbp
call fcn.1401e5a90
or word [rbx + 0x12], 4
mov rax, qword [rsp + 0x138]
add edi, 1
add rsi, 0x38
cmp dword [rax + 0x1c], edi
jle 0x1401da6f0
mov rbx, qword [rax + 0x20]
add rbx, rsi
test byte [rbx + 0x12], 2
jne 0x1401da5bd
cmp qword [rbx + 0x30], 0
jne 0x1401da5bd
mov r11d, dword [rsp + 0xe8]
mov rdx, qword [rbx]
test r11d, r11d
je 0x1401da58a
mov r10d, 1
mov qword [r13], 0
mov qword [r13 + 8], 0
mov qword [r13 + 0x10], 0
mov qword [r13 + 0x18], 0
mov qword [r13 + 0x20], 0
mov qword [r13 + 0x28], 0
mov word [rsp + 0x184], r10w
mov qword [rsp + 0x168], r12
mov qword [rsp + 0x170], r15
test rdx, rdx
je 0x1401da58a
mov rcx, r13
mov qword [rsp + 0x40], rdx
call fcn.14016f840
mov rdx, qword [rsp + 0x40]
cmp word [rsp + 0x184], 0
je 0x1401da5b5
jmp 0x1401da58a
mov eax, dword [rsp + 0xe8]
cmp eax, 1
jle 0x1401dd2cd
sub eax, 1
imul eax, eax, 0x70
lea ebx, [rax + 0x3d0]
add eax, 0x440
movsxd rdx, eax
jmp 0x1401da311
mov qword [rsp + 0x238], 0
and ah, 0xfe
mov word [rsp + 0x50], ax
jmp 0x1401da2d7
mov r13, qword [rsp + 0x220]
mov eax, dword [r14 + 0x38]
mov rcx, qword [rsp + 0x90]
mov rdx, r14
xor r14d, r14d
mov word [r13 + 0xe0], ax
call fcn.140169730
mov rax, r14
add rsp, 0x1d8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov r13, rbp
test word [rsp + 0x50], 0x100
je 0x1401da71c
mov rax, qword [rsp + 0x90]
test byte [rax + 0x60], 0x10
je 0x1401dbb4d
and word [rsp + 0x50], 0xfeff
and word [r14 + 0x3c], 0xfeff
mov rbx, qword [rsp + 0x130]
cmp dword [rsp + 0xe8], 1
mov r15, qword [rbx + 8]
je 0x1401dd2dc
movzx eax, byte [rbx + 0x40]
mov rsi, qword [rsp + 0x140]
lea rdx, [rax + rax*2]
lea rax, [rax + rdx*4]
lea rdi, [r15 + rax*8 + 8]
mov rax, qword [rbx]
mov rax, qword [rax]
mov dword [rsp + 0x154], 0x4e20
mov qword [rsp + 0x58], rax
lea rax, [r15 + 8]
cmp rdi, rax
jbe 0x1401db751
mov dword [rsp + 0x48], 0
xor edx, edx
xor ecx, ecx
lea r12, [r15 + 0x70]
mov dword [rsp + 0x40], 0
mov eax, 0x4e20
xor ebp, ebp
lea r15, [rsp + 0x130]
mov qword [rsp + 0x80], r14
mov r14, rcx
mov qword [rsp + 0x220], r13
mov r13d, edx
nop
add eax, 0x3e8
mov byte [rsi + 0x10], r13b
mov r11d, dword [rbx + 0x260]
mov dword [rsp + 0x154], eax
mov r8d, dword [r12 - 0x24]
mov eax, 1
cmp r8d, r11d
je 0x1401da811
movsxd rdx, dword [rbx + 0x25c]
cmp edx, 1
jg 0x1401da7fd
jmp 0x1401db870
add rax, 1
cmp rdx, rax
je 0x1401db870
mov ecx, eax
cmp r8d, dword [rbx + rax*4 + 0x260]
jne 0x1401da7f0
mov eax, 1
shl rax, cl
mov edx, dword [rsp + 0x40]
mov qword [rsi + 8], rax
movzx eax, byte [r12 - 0x2c]
test edx, edx
jne 0x1401db7c0
test al, 0x62
jne 0x1401db7c0
mov eax, dword [rsp + 0x48]
test eax, eax
mov eax, 0
cmove rbp, rax
mov rax, qword [r12 - 0x48]
cmp byte [rax + 0x3f], 1
je 0x1401db7ec
mov rdx, rbp
mov rcx, r15
call fcn.140198680
xor r8d, r8d
test eax, eax
jne 0x1401db788
mov rax, qword [rsp + 0x138]
cmp byte [rax + 0x11], 0
jne 0x1401db89c
or r14, qword [rsi + 8]
mov rax, qword [rsp + 0x58]
cmp byte [rax + 0x67], 0
je 0x1401db7a6
mov rdx, qword [rsi + 0x48]
lea rbx, [rsi + 0x58]
mov dword [rsp + 0x7c], 0
mov r14, qword [rsp + 0x80]
mov r13, qword [rsp + 0x220]
cmp rbx, rdx
je 0x1401db762
mov rdi, qword [rsp + 0x58]
mov rcx, rdi
call fcn.1401640a0
mov qword [rsi + 0x48], rbx
mov rdx, rsi
mov rcx, rdi
mov r9d, 3
mov word [rsi + 0x40], r9w
call fcn.1401641b0
mov r11d, dword [rsp + 0x7c]
xor r10d, r10d
mov dword [rsi + 0x38], 0
mov word [rsi + 0x3c], r10w
test r11d, r11d
jne 0x1401da6ba
xor edx, edx
mov rcx, r14
call fcn.140196d50
mov rdi, qword [rsp + 0x90]
cmp byte [rdi + 0x67], 0
jne 0x1401da6ba
cmp qword [r14 + 0x10], 0
je 0x1401dbb21
movzx eax, word [r14 + 0x48]
mov rcx, r14
lea edx, [rax + 1]
movsx edx, dx
call fcn.140196d50
cmp byte [rdi + 0x67], 0
jne 0x1401da6ba
mov rax, qword [r14 + 0x10]
test byte [r14 + 0x3d], 1
je 0x1401da94a
sub word [r14 + 0x48], 0x1e
test rax, rax
je 0x1401dbb2e
mov eax, dword [r13 + 0x30]
mov dword [rsp + 0x7c], eax
test eax, eax
jne 0x1401da6ba
movzx eax, byte [r14 + 0x40]
cmp al, 1
jbe 0x1401dd465
cmp qword [rsp + 0x240], 0
je 0x1401dd465
mov rax, qword [rsp + 0x90]
test word [rsp + 0x50], 0x400
mov qword [rsp + 0x80], 0xffffffffffffffff
mov eax, dword [rax + 0x60]
jne 0x1401da9a8
test ah, 1
je 0x1401de626
test eax, 0x80000
je 0x1401ddbfb
mov rax, qword [r14]
movzx edi, word [rsp + 0x50]
movzx edx, word [r14 + 0x48]
add word [rax + 0xe0], dx
mov eax, edi
mov dword [rsp + 0x104], edi
test al, 4
je 0x1401daa07
mov rcx, qword [r14 + 0x3c0]
mov eax, dword [rcx + 0x38]
test ah, 0x10
je 0x1401ddb98
mov rdi, qword [rsp + 0x228]
mov r8d, 1
mov rdx, qword [rdi + 0x28]
mov byte [r14 + 0x42], r8b
test byte [rdx + 0x30], 0x80
je 0x1401de595
mov eax, dword [rsp + 0xe8]
test eax, eax
jle 0x1401decfe
lea edx, [rax - 1]
mov rsi, qword [rsp + 0x88]
lea rax, [rdx*8]
sub rax, rdx
shl rax, 4
lea r15, [r14 + rax + 0x3d0]
movzx eax, word [rsp + 0x50]
mov qword [rsp + 0x40], r15
mov r15, qword [rsp + 0x228]
and eax, 0x20
mov word [rsp + 0x48], ax
nop word [rax + rax]
movzx ebx, byte [rsi + 0x40]
lea rax, [rbx + rbx*2]
mov r10, rbx
lea rax, [rbx + rax*4]
mov rdi, qword [r15 + rax*8 + 0x28]
mov rdx, qword [rdi + 0x60]
test rdx, rdx
je 0x1401def92
mov rax, qword [rsp + 0x90]
mov rax, qword [rax + 0x20]
cmp rdx, qword [rax + 0x18]
je 0x1401dd10e
add rax, 0x38
xor r12d, r12d
nop word cs:[rax + rax]
add rax, 0x20
add r12d, 1
cmp rdx, qword [rax - 0x20]
jne 0x1401daaa0
mov rbp, qword [rsi + 0x60]
mov edx, dword [rdi + 0x30]
mov eax, dword [rbp + 0x38]
test dh, 0x40
jne 0x1401dab98
movzx ecx, byte [rdi + 0x3f]
cmp cl, 2
je 0x1401dab98
test ah, 4
jne 0x1401dd123
cmp cl, 1
je 0x1401dab98
test al, 0x40
jne 0x1401daaec
cmp word [rsp + 0x48], 0
je 0x1401dab00
lea rcx, [rbx + rbx*2]
lea rcx, [rbx + rcx*4]
test byte [r15 + rcx*8 + 0x44], 0x50
je 0x1401dd83e
lea rax, [rbx + rbx*2]
cmp byte [r14 + 0x42], 0
lea rax, [rbx + rax*4]
mov edx, dword [r15 + rax*8 + 0x4c]
mov eax, 0x70
je 0x1401dab22
mov dword [r14 + 0x28], edx
mov eax, 0x71
mov dword [rsp + 0x20], eax
mov r9, rdi
mov r8d, r12d
mov rcx, r13
mov byte [rsp + 0x50], r10b
call fcn.14018d4e0
cmp byte [r14 + 0x42], 0
movzx r10d, byte [rsp + 0x50]
mov eax, dword [rbp + 0x38]
jne 0x1401dab69
cmp word [rdi + 0x36], 0x3f
jg 0x1401dab69
mov edx, dword [rdi + 0x30]
mov ecx, eax
and ecx, 0x404000
and edx, 0xe0
or edx, ecx
je 0x1401de649
mov rcx, qword [rsp + 0x98]
movsxd rdx, dword [rcx + 0x90]
test edx, edx
jle 0x1401dab98
mov r8, qword [rcx + 0x88]
lea rdx, [rdx + rdx*2]
movzx ecx, byte [rsp + 0x70]
lea rdx, [r8 + rdx*8]
mov word [rdx - 0x16], cx
nop dword [rax]
test ah, 2
je 0x1401dac3c
mov edx, dword [rdi + 0x30]
and edx, 0x80
mov r11, qword [rbp + 0x20]
je 0x1401dabc0
movzx eax, byte [r11 + 0x64]
and eax, 3
cmp al, 2
je 0x1401dd198
cmp byte [r14 + 0x42], 0
jne 0x1401dcf30
mov eax, dword [rsp + 0x258]
test eax, eax
je 0x1401dc723
cmp word [rsp + 0x48], 0
je 0x1401dc723
mov eax, dword [rsp + 0x258]
mov edx, 0x65
mov dword [rsi + 8], eax
mov r9d, dword [r11 + 0x58]
mov dword [rsp + 0x20], r12d
mov r8d, eax
mov rcx, qword [rsp + 0x98]
mov qword [rsp + 0x50], r11
call fcn.140182310
mov r11, qword [rsp + 0x50]
mov rcx, r13
mov rdx, r11
call fcn.14018d470
mov eax, dword [rbp + 0x38]
test al, 0xf
je 0x1401dac3c
test eax, 0x188002
jne 0x1401dac3c
test byte [r14 + 0x3c], 1
je 0x1401de42e
test r12d, r12d
js 0x1401dac77
mov r8, qword [r13 + 0xb0]
mov edx, 1
mov ecx, r12d
test r8, r8
cmove r8, r13
shl edx, cl
mov eax, dword [r8 + 0x84]
test eax, edx
jne 0x1401dac77
or eax, edx
mov dword [r8 + 0x84], eax
cmp r12d, 1
je 0x1401dd6ea
lea rax, [rbx + rbx*2]
lea rax, [rbx + rax*4]
test byte [r15 + rax*8 + 0x44], 0x10
jne 0x1401dc56a
add rsi, 0x70
cmp rsi, qword [rsp + 0x40]
jne 0x1401daa58
mov rax, qword [rsp + 0x98]
mov eax, dword [rax + 0x90]
mov dword [r14 + 0x4c], eax
mov rax, qword [rsp + 0x90]
cmp byte [rax + 0x67], 0
jne 0x1401da6ba
mov qword [rsp + 0x220], r13
mov rdi, qword [rsp + 0xa0]
mov rbp, qword [rsp + 0x98]
nop word cs:[rax + rax]
mov rax, qword [rsp + 0x220]
mov eax, dword [rax + 0x30]
mov dword [rsp + 0xa0], eax
test eax, eax
jne 0x1401da6b2
mov rax, qword [rdi + 0x60]
movzx ebx, byte [rdi + 0x40]
mov rcx, qword [rsp + 0x228]
mov esi, dword [rax + 0x38]
lea rax, [rbx + rbx*2]
lea rax, [rbx + rax*4]
lea rax, [rcx + rax*8]
movzx edx, byte [rax + 0x48]
test dl, 0x10
je 0x1401dad48
and edx, 8
je 0x1401dc782
mov dword [rsp + 0x20], 0
mov r9d, dword [rax + 0x38]
mov edx, 0xa
mov rcx, rbp
mov r8d, dword [rax + 0x3c]
call fcn.140182310
test esi, 0x404000
je 0x1401dad8b
and esi, 0x4000
je 0x1401dc54e
mov r8, qword [rsp + 0x80]
mov rdx, qword [rsp + 0x60]
mov r9, rdi
mov rcx, qword [rsp + 0x220]
call fcn.1401f1690
mov rax, qword [rsp + 0x90]
cmp byte [rax + 0x67], 0
jne 0x1401da6b2
mov rax, qword [rsp + 0x220]
mov rax, qword [rax + 0xb0]
test rax, rax
cmove rax, qword [rsp + 0x220]
cmp byte [rax + 0x133], 2
jne 0x1401dadd8
mov eax, dword [rsp + 0x104]
mov r9, qword [rdi + 0x60]
movzx r8d, byte [rdi + 0x40]
mov rdx, qword [rsp + 0x228]
mov dword [rsp + 0x20], eax
mov rcx, qword [rsp + 0x220]
call fcn.140184ad0
mov eax, dword [rbp + 0x90]
movzx esi, byte [rdi + 0x40]
mov rcx, qword [r14 + 8]
mov r15, qword [rdi + 0x60]
mov dword [rdi + 0x20], eax
mov rax, qword [rsp + 0x220]
mov r12, rsi
mov qword [rsp + 0x48], rcx
mov r13, qword [rax]
lea rax, [rsi + rsi*2]
mov qword [rsp + 0x40], rsi
lea rax, [rsi + rax*4]
mov r8d, dword [rcx + rax*8 + 0x4c]
mov rax, qword [rsp + 0x80]
mov dword [rsp + 0x88], r8d
and rax, 0xfffffffffffffffe
cmp r8d, dword [r14 + 0x260]
je 0x1401dae75
movsxd rdx, dword [r14 + 0x25c]
cmp edx, 1
jle 0x1401dc541
mov eax, 1
jmp 0x1401dae5d
add rax, 1
cmp rdx, rax
je 0x1401dc541
mov ecx, eax
cmp r8d, dword [r14 + rax*4 + 0x260]
jne 0x1401dae50
mov rax, qword [rsp + 0x80]
btr rax, rcx
mov qword [rdi + 0x68], rax
mov rax, qword [rsp + 0x220]
mov rcx, qword [rsp + 0x220]
mov rbx, qword [r14 + 0x68]
mov eax, dword [rax + 0x44]
lea esi, [rax - 1]
sub eax, 2
mov dword [rdi + 0x10], esi
mov dword [rdi + 0xc], esi
mov dword [rsp + 0x58], eax
mov dword [rcx + 0x44], eax
mov dword [rdi + 0x18], eax
test r12b, r12b
je 0x1401daec8
mov rcx, qword [rsp + 0x40]
lea rax, [rcx + rcx*2]
lea rax, [rcx + rax*4]
mov rcx, qword [rsp + 0x48]
test byte [rcx + rax*8 + 0x44], 8
jne 0x1401dcbaf
mov edx, dword [rsp + 0x7c]
test edx, edx
je 0x1401dda33
lea rax, [rdi - 0x360]
jmp 0x1401daef3
cmp qword [rax + 0x398], 0
jne 0x1401daefd
sub rax, 0x70
sub edx, 1
je 0x1401daefd
mov ecx, dword [rax + 0x360]
test ecx, ecx
je 0x1401daee0
mov rcx, qword [rsp + 0x40]
lea rax, [rcx + rcx*2]
lea rax, [rcx + rax*4]
mov rcx, qword [rsp + 0x48]
lea rax, [rcx + rax*8]
movzx r8d, byte [rax + 0x48]
mov ecx, r8d
and ecx, 0x20
mov byte [rsp + 0xa8], cl
jne 0x1401dc6a3
movzx ecx, byte [rsp + 0x7c]
shr rbx, cl
mov eax, ebx
and eax, 1
mov dword [rsp + 0x50], eax
mov eax, dword [r15 + 0x38]
test ah, 4
jne 0x1401dc8a9
test ah, 1
je 0x1401daf56
test al, 5
jne 0x1401dd489
movsxd rdx, edx
lea rcx, [rdx*8]
sub rcx, rdx
mov edx, eax
shl rcx, 4
and edx, 0x102
mov r9d, dword [r14 + rcx + 0x36c]
cmp edx, 0x102
je 0x1401dcc50
test ah, 2
je 0x1401dcdcc
movzx ecx, word [r15 + 0x1c]
movzx ebx, word [r15 + 0x18]
movzx r10d, word [r15 + 0x1a]
mov word [rsp + 0x100], cx
mov rcx, qword [r15 + 0x20]
mov word [rsp + 0xc0], bx
mov qword [rsp + 0x68], rcx
mov ecx, dword [rdi + 8]
mov word [rsp + 0xd0], r10w
mov dword [rsp + 0xb0], ecx
test al, 0x20
je 0x1401dd5b1
mov r8, qword [r15 + 0x48]
movzx ecx, bx
lea edx, [rbx + 1]
mov rsi, qword [r8 + rcx*8]
mov qword [rsp + 0xc8], rsi
movzx esi, r10w
test al, 0x10
je 0x1401dd5c9
mov rcx, qword [r15 + 0x48]
movsxd rdx, edx
mov rcx, qword [rcx + rdx*8]
movzx edx, word [rsp + 0x100]
cmp esi, edx
mov qword [rsp + 0xb8], rcx
cmovl esi, edx
test byte [rcx + 0x13], 1
jne 0x1401dec56
xor r10d, r10d
cmp qword [rsp + 0xc8], 0
je 0x1401dec18
and eax, 0x80030
xor r12d, r12d
cmp eax, 0x80000
je 0x1401dd7df
mov rcx, qword [rsp + 0x68]
movzx eax, word [rsp + 0xc0]
cmp ax, word [rcx + 0x60]
jae 0x1401db0b5
mov rdx, qword [rcx + 0x38]
cmp byte [rdx + rax], 0
sete al
movzx eax, al
cmp dword [rsp + 0x50], eax
jne 0x1401db0b5
mov rcx, qword [rsp + 0xb8]
mov edx, r10d
movzx eax, byte [rsp + 0xd0]
xor r10d, r10d
mov byte [rsp + 0xa8], dl
mov rdx, qword [rsp + 0xc8]
mov qword [rsp + 0xc8], rcx
movzx ecx, word [rsp + 0x100]
mov qword [rsp + 0xb8], rdx
mov word [rsp + 0xd0], cx
mov word [rsp + 0x100], ax
mov r8d, dword [rsp + 0x7c]
test r8d, r8d
je 0x1401db0ca
test byte [r15 + 0x3a], 0x10
jne 0x1401deafb
lea rax, [rsp + 0x160]
mov r8d, dword [rsp + 0x50]
mov r9d, esi
mov rdx, rdi
mov qword [rsp + 0x20], rax
mov rcx, qword [rsp + 0x220]
mov byte [rsp + 0xd8], r10b
call fcn.1401d9c00
cmp word [rsp + 0x100], 0
movzx r10d, byte [rsp + 0xd8]
mov dword [rsp + 0x70], eax
mov rax, qword [rsp + 0x160]
je 0x1401db120
test rax, rax
jne 0x1401de36b
mov qword [rsp + 0xf8], 0
test r12d, r12d
je 0x1401dd5dd
mov esi, dword [rdi + 0x28]
mov rcx, qword [rsp + 0xc8]
test rcx, rcx
setne byte [rsp + 0xe0]
movzx edx, byte [rsp + 0xe0]
cmp word [rsp + 0xc0], 0
setne al
test rcx, rcx
je 0x1401dd892
test byte [rcx + 0x14], 0x28
setne cl
movzx ecx, cl
mov dword [rsp + 0xec], ecx
mov rcx, qword [rsp + 0xb8]
test rcx, rcx
je 0x1401de3f9
test byte [rcx + 0x14], 0x28
setne cl
or eax, edx
movzx ecx, cl
movzx eax, al
mov dword [rsp + 0xf0], ecx
mov dword [rsp + 0xd8], eax
mov rax, qword [rsp + 0xc8]
mov ecx, dword [rsp + 0x70]
movzx r9d, word [rsp + 0xd0]
mov rax, qword [rax]
lea r8d, [rbx + rcx]
mov rcx, qword [rsp + 0x220]
mov dword [rsp + 0x108], r8d
mov r10, qword [rax + 0x18]
mov dword [rsp + 0xd0], r9d
mov rdx, r10
mov qword [rsp + 0xe0], r10
call fcn.1401e9540
mov rax, qword [rsp + 0xc8]
mov r10, qword [rsp + 0xe0]
mov r8d, dword [rsp + 0x108]
movzx edx, word [rax + 0x12]
test dh, 1
je 0x1401db23a
mov rax, qword [rbp]
mov ecx, dword [rdi + 0x2c]
lea r9, [0x1404f53c0]
cmp byte [rax + 0x67], 0
je 0x1401de5bf
mov eax, ecx
shr eax, 1
mov dword [r9 + 0xc], eax
mov eax, ecx
and eax, 1
mov word [r9 + 2], ax
and edx, 0x80
je 0x1401deaae
mov r8, qword [rsp + 0x160]
test r8, r8
je 0x1401db27d
movzx eax, word [rsp + 0xc0]
mov edx, dword [rsp + 0xd0]
mov rcx, r10
mov qword [rsp + 0xc0], r10
add r8, rax
call fcn.140164e10
mov r10, qword [rsp + 0xc0]
mov eax, dword [rsp + 0xd0]
add eax, ebx
mov dword [rsp + 0xc0], eax
movzx eax, byte [r10]
cmp al, 0xb0
jne 0x1401db29a
movzx eax, byte [r10 + 2]
cmp al, 0xb1
je 0x1401ded65
cmp al, 0x8a
je 0x1401ded27
mov rdx, qword [rsp + 0xc8]
mov rcx, rdi
call fcn.1401568c0
mov byte [rsp + 0xe0], 1
mov r8d, dword [rsp + 0xc0]
mov dword [rsp + 0xd0], 0
mov rax, qword [rsp + 0x220]
mov r9, qword [rsp + 0x160]
mov edx, dword [rsp + 0x70]
mov rcx, qword [rax + 0x10]
call fcn.140184740
movzx eax, word [r15 + 0x3e]
test ax, ax
je 0x1401db309
cmp dword [rsp + 0xc0], eax
je 0x1401dd929
mov r10d, dword [rsp + 0xd8]
shl r10d, 2
test r12d, r12d
jne 0x1401dda00
mov r8d, dword [rdi + 0x34]
test r8d, r8d
jne 0x1401dd939
mov eax, dword [rsp + 0xec]
lea rcx, [0x14044a110]
lea eax, [r10 + rax*2]
add eax, dword [rsp + 0x50]
cdqe
movzx r10d, byte [rcx + rax]
test byte [r15 + 0x3a], 0x10
je 0x1401db359
cmp r10d, 0x17
je 0x1401df0cc
mov eax, dword [rsp + 0xc0]
mov r9d, esi
mov edx, r10d
mov rcx, rbp
mov r8d, dword [rsp + 0xb0]
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x70]
mov dword [rsp + 0x20], eax
call fcn.140182e00
mov dword [rsp + 0xc8], 0
test r12d, r12d
jne 0x1401ddb25
mov rax, qword [rsp + 0xb8]
test rax, rax
je 0x1401dd687
mov rax, qword [rax]
mov ecx, dword [rsp + 0x70]
movzx r9d, word [rsp + 0x100]
mov r10, qword [rax + 0x18]
add ecx, ebx
mov dword [rsp + 0xc0], ecx
mov r8d, ecx
mov rcx, qword [rsp + 0x220]
mov rdx, r10
mov qword [rsp + 0xd8], r10
mov dword [rsp + 0xa8], r9d
call fcn.1401e9540
mov rax, qword [rsp + 0xb8]
mov r10, qword [rsp + 0xd8]
movzx ecx, word [rax + 0x12]
test ch, 1
je 0x1401db42a
mov rax, qword [rbp]
mov edx, dword [rdi + 0x2c]
lea r8, [0x1404f53c0]
cmp byte [rax + 0x67], 0
je 0x1401de5fa
mov eax, edx
shr eax, 1
mov dword [r8 + 0xc], eax
mov eax, edx
and eax, 1
mov word [r8 + 2], ax
and ecx, 0x80
je 0x1401dea37
mov rax, qword [rsp + 0xf8]
test rax, rax
je 0x1401db48d
mov edx, dword [rsp + 0xa8]
mov rcx, r10
mov r8, rax
mov qword [rsp + 0xd8], r10
call fcn.140164e10
mov rax, qword [rsp + 0x220]
mov r9, qword [rsp + 0xf8]
mov r8d, dword [rsp + 0xa8]
mov edx, dword [rsp + 0xc0]
mov rcx, qword [rax + 0x10]
call fcn.140184740
mov r10, qword [rsp + 0xd8]
mov eax, dword [rsp + 0xa8]
add eax, ebx
mov dword [rsp + 0xc0], eax
movzx eax, byte [r10]
cmp al, 0xb0
jne 0x1401db4aa
movzx eax, byte [r10 + 2]
cmp al, 0xb1
je 0x1401decf6
cmp al, 0x8a
je 0x1401decd3
mov rdx, qword [rsp + 0xb8]
mov rcx, rdi
call fcn.1401568c0
mov rdx, qword [rsp + 0x160]
test rdx, rdx
je 0x1401db4df
mov rcx, r13
call fcn.140164b10
mov rax, qword [rsp + 0xf8]
test rax, rax
je 0x1401db4f7
mov rdx, rax
mov rcx, r13
call fcn.140164b10
mov eax, dword [rbp + 0x90]
mov r10d, dword [rsp + 0xc0]
mov dword [rdi + 0x48], eax
test r10d, r10d
je 0x1401dbd72
mov ecx, dword [rsp + 0x50]
mov r11d, dword [rsp + 0xf0]
add ecx, ecx
mov dword [rsp + 0xa8], ecx
add r11d, ecx
test r12d, r12d
jne 0x1401deb9d
mov eax, dword [rsp + 0xc0]
movsxd r11, r11d
mov r9d, esi
mov rcx, rbp
lea r13, [0x14044a109]
mov r8d, dword [rsp + 0xb0]
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x70]
movzx edx, byte [r13 + r11]
mov dword [rsp + 0x20], eax
call fcn.140182e00
mov r9d, dword [rsp + 0xc8]
test r9d, r9d
jne 0x1401dbd54
mov eax, dword [r15 + 0x38]
test eax, 0x40000
jne 0x1401dd78b
test al, 0x40
je 0x1401dd1af
test word [r14 + 0x3c], 0x1020
jne 0x1401dd1af
mov ebx, 1
mov ecx, dword [rdi]
test ecx, ecx
jne 0x1401db5c7
mov rax, qword [rsp + 0x68]
mov rcx, qword [rax + 0x48]
test rcx, rcx
je 0x1401db5c7
mov r8, qword [rsp + 0x60]
mov edx, dword [rsp + 0x88]
call fcn.1401949d0
mov eax, dword [r15 + 0x38]
test ah, 0x10
je 0x1401dd650
mov byte [rdi + 0x41], 0xbb
mov edx, eax
mov esi, dword [rsp + 0xb0]
shr edx, 0x10
and edx, 1
mov dword [rdi + 0x44], esi
mov byte [rdi + 0x42], dl
test al, 0xf
jne 0x1401db5f5
mov byte [rdi + 0x43], 1
test ebx, ebx
mov eax, 0
cmove rax, qword [rsp + 0x68]
cmp ebx, 1
sbb r15d, r15d
mov qword [rsp + 0x68], rax
add r15d, 2
nop dword [rax]
mov rax, qword [rsp + 0x40]
lea rsi, [rax + rax*2]
lea rax, [rsi*4]
mov qword [rsp + 0x50], rax
mov eax, r15d
mov r15, rbp
mov ebp, eax
nop word cs:[rax + rax]
movsxd rax, dword [r14 + 0x84]
mov rbx, qword [r14 + 0x90]
test eax, eax
jle 0x1401dc048
lea rdx, [rax*8]
xor r13d, r13d
sub rdx, rax
mov eax, ebp
mov rbp, r15
lea rsi, [rbx + rdx*8]
mov r15d, eax
movzx edx, word [rbx + 0x12]
test dl, 6
jne 0x1401db720
mov r8, qword [rdi + 0x68]
mov rax, r8
and rax, qword [rbx + 0x30]
jne 0x1401dbe38
mov rcx, qword [rsp + 0x48]
mov rax, qword [rsp + 0x50]
add rax, qword [rsp + 0x40]
mov r12, qword [rbx]
movzx eax, byte [rcx + rax*8 + 0x44]
test al, 0x58
je 0x1401dbdf0
mov ecx, dword [r12 + 4]
test cl, 3
je 0x1401db720
test al, 8
je 0x1401db6c0
and ecx, 1
je 0x1401db720
mov r11d, dword [r12 + 0x34]
cmp r11d, dword [r14 + 0x260]
je 0x1401dc038
movsxd r9, dword [r14 + 0x25c]
cmp r9d, 1
jle 0x1401dbee0
mov eax, 1
jmp 0x1401db6fd
add rax, 1
cmp r9, rax
je 0x1401dbee0
mov ecx, eax
cmp r11d, dword [r14 + rax*4 + 0x260]
jne 0x1401db6f0
mov eax, 1
shl rax, cl
test r8, rax
je 0x1401dbee0
nop word [rax + rax]
add rbx, 0x38
cmp rbx, rsi
jne 0x1401db670
mov r15, rbp
test r13d, r13d
je 0x1401dc82c
mov ebp, r13d
jmp 0x1401db640
mov r14, qword [rsp + 0x80]
mov r13, qword [rsp + 0x220]
mov rdx, qword [rsi + 0x48]
lea rbx, [rsi + 0x58]
cmp rdx, rbx
jne 0x1401da8b1
mov rcx, qword [rsp + 0x58]
mov rdx, rsi
call fcn.1401641b0
xor eax, eax
mov dword [rsi + 0x38], 0
mov word [rsi + 0x3c], ax
jmp 0x1401da8f5
or r14, qword [rsi + 8]
cmp eax, 0x65
jne 0x1401df295
lea rdx, str.abbreviated_query_algorithm_search
mov ecx, 0x1c
call fcn.14019a9e0
add r13d, 1
cmp rdi, r12
jbe 0x1401db741
mov eax, dword [rsp + 0x154]
add r12, 0x68
jmp 0x1401da7b0
test al, 0x40
mov edx, 1
cmove edx, dword [rsp + 0x48]
shr al, 4
and eax, 1
or rbp, r14
mov dword [rsp + 0x40], eax
mov rax, qword [r12 - 0x48]
mov dword [rsp + 0x48], edx
cmp byte [rax + 0x3f], 1
jne 0x1401da84d
cmp rdi, r12
jbe 0x1401dd5e5
mov r10, r12
xor r8d, r8d
nop dword [rax + rax]
test r8, r8
je 0x1401db880
mov r9d, dword [r10 + 0x44]
cmp r11d, r9d
je 0x1401db896
movsxd rdx, dword [rbx + 0x25c]
cmp edx, 1
jle 0x1401db848
mov eax, 1
jmp 0x1401db831
add rax, 1
cmp rdx, rax
je 0x1401db848
mov ecx, eax
cmp r9d, dword [rbx + rax*4 + 0x260]
jne 0x1401db828
mov eax, 1
shl rax, cl
or r8, rax
add r10, 0x68
cmp rdi, r10
ja 0x1401db800
mov rdx, rbp
mov rcx, r15
mov qword [rsp + 0x68], r8
call fcn.1401d7630
mov r8, qword [rsp + 0x68]
jmp 0x1401da85b
xor eax, eax
jmp 0x1401da811
test byte [r10 + 0x3c], 0x22
jne 0x1401db805
add r10, 0x68
cmp rdi, r10
ja 0x1401db880
jmp 0x1401db851
or r8, 1
jmp 0x1401db848
mov rdx, rbp
mov rcx, r15
call fcn.1401d80f0
or r14, qword [rsi + 8]
test eax, eax
je 0x1401da879
jmp 0x1401db78c
mov rax, qword [rsp + 0x228]
mov dword [rsp + 0x40], 0
mov qword [rsp + 0x48], r14
lea rbx, [rax + 0x28]
nop dword [rax]
mov rsi, qword [rsp + 0x48]
mov edx, dword [rbx + 0x24]
mov rdi, qword [rsp + 0x228]
movsxd rax, dword [rsi + 0x25c]
lea ecx, [rax + 1]
mov dword [rsi + 0x25c], ecx
mov dword [rsi + rax*4 + 0x260], edx
movsxd rax, dword [rsp + 0x40]
lea rdx, [rax + rax*2]
lea rax, [rax + rdx*4]
test byte [rdi + rax*8 + 0x48], 4
je 0x1401dbaa0
mov r12, qword [rbx + 0x38]
test r12, r12
je 0x1401dbaa0
mov r14d, dword [r12]
test r14d, r14d
jle 0x1401dbaa0
mov rdi, qword [rbx]
xor esi, esi
xor ebp, ebp
nop dword [rax + rax]
movsx edx, word [rdi + 0x36]
mov r9d, esi
cmp ebp, edx
jge 0x1401dbad0
movsxd rax, ebp
mov r14d, ebp
lea rcx, [rax + rax*2]
mov rax, qword [rdi + 8]
lea rax, [rax + rcx*8 + 0x12]
jmp 0x1401db979
add r14d, 1
add rax, 0x18
cmp r14d, edx
je 0x1401dbad0
test byte [rax], 2
je 0x1401db968
mov rcx, qword [r13]
mov edx, 0x48
call fcn.140173f40
mov r15, rax
test rax, rax
je 0x1401dbaa0
mov qword [r15 + 0x28], 0
mov ebp, 0xffffffff
mov rdx, rdi
mov ecx, r14d
mov qword [r15 + 0x30], 0
mov qword [r15], 0
mov qword [r15 + 0x40], 0
mov qword [r15 + 8], 0
mov qword [r15 + 0x10], 0
mov qword [r15 + 0x18], 0
mov qword [r15 + 0x20], 0
mov qword [r15 + 0x38], 0
mov byte [r15], 0xa7
mov eax, dword [rbx + 0x24]
mov word [r15 + 0x32], bp
lea ebp, [r14 + 1]
mov dword [r15 + 0x28], 1
mov dword [r15 + 0x2c], eax
mov word [r15 + 0x30], r14w
mov qword [r15 + 0x40], rdi
call fcn.14015f340
or qword [rbx + 0x30], rax
mov rax, rsi
shl rax, 5
mov rdx, qword [r12 + rax + 8]
test rdx, rdx
je 0x1401dba3b
mov rcx, qword [r13]
xor r9d, r9d
xor r8d, r8d
call fcn.140177060
mov rdx, rax
xor r9d, r9d
mov r8, rdx
mov rcx, r13
mov edx, 0xae
call fcn.140189530
mov r8, r15
mov edx, 0x35
mov rcx, r13
mov r9, rax
call fcn.140189530
mov edx, dword [rbx + 0x24]
mov r9, rax
xor eax, eax
test byte [rbx + 0x1c], 0x18
sete al
mov rcx, r9
add rsi, 1
lea r8d, [rax + 1]
call fcn.140156600
mov rcx, qword [rsp + 0x60]
mov r8d, 1
mov rdx, r9
call fcn.140175000
cmp dword [r12], esi
jg 0x1401db940
nop dword [rax]
mov rdi, qword [rsp + 0x228]
add dword [rsp + 0x40], 1
add rbx, 0x68
mov eax, dword [rsp + 0x40]
cmp dword [rdi], eax
jg 0x1401db8d8
mov r14, qword [rsp + 0x48]
jmp 0x1401da4e9
mov r8, qword [rdi]
lea rdx, str.too_many_arguments_on__s_____max__d
mov rcx, r13
call fcn.140173d40
jmp 0x1401dbaa0
test r14, r14
je 0x1401da6d9
mov rcx, qword [rsp + 0x90]
mov rdx, r14
xor r14d, r14d
call fcn.1401640a0
jmp 0x1401da6d9
mov rax, qword [rsp + 0x90]
test byte [rax + 0x60], 0x10
jne 0x1401da4d8
mov byte [r14 + 0x43], 1
jmp 0x1401da4d8
test byte [r14 + 0x3d], 1
je 0x1401dbb2e
sub word [r14 + 0x48], 0x1e
mov rax, qword [rsp + 0x90]
test byte [rax + 0x31], 0x10
je 0x1401da953
mov rcx, r14
call fcn.140156c50
jmp 0x1401da953
mov rax, qword [rsp + 0x228]
cmp dword [rax], 1
jne 0x1401dbd2d
mov rax, qword [rsp + 0x228]
mov ebp, dword [rax + 0x4c]
mov r9, qword [rax + 0x28]
mov rax, qword [rsp + 0x240]
mov eax, dword [rax]
test eax, eax
jle 0x1401dbbd6
mov rdi, qword [rsp + 0x240]
sub eax, 1
shl rax, 5
lea rcx, [rdi + 8]
lea r8, [rdi + rax + 0x28]
mov rax, qword [rcx]
test rax, rax
jne 0x1401dbbad
jmp 0x1401dbbcd
mov rax, qword [rax + 0x20]
mov rax, qword [rax + 8]
test rax, rax
je 0x1401dbbcd
mov edx, dword [rax + 4]
test edx, 0x82000
je 0x1401de830
and edx, 0x80000
jne 0x1401dbba0
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x1401dbbad
add rcx, 0x20
cmp r8, rcx
jne 0x1401dbb93
mov r12, qword [r9 + 0x10]
test r12, r12
je 0x1401dbd2d
mov qword [rsp + 0x220], r13
mov rsi, qword [rsp + 0x240]
mov r13, r12
mov qword [rsp + 0x40], r14
mov r12, qword [rsp + 0x60]
jmp 0x1401dbc15
mov r13, qword [r13 + 0x28]
test r13, r13
je 0x1401dbd20
cmp byte [r13 + 0x62], 0
je 0x1401dbc08
cmp qword [r13 + 0x48], 0
jne 0x1401dbc08
cmp word [r13 + 0x5e], 0
je 0x1401dbd09
xor edi, edi
jmp 0x1401dbc4d
movzx eax, word [r13 + 0x5e]
add rdi, 1
lea r14d, [r15 + 1]
cmp eax, edi
jle 0x1401dbd00
mov qword [rsp + 0x28], r13
mov r8d, edi
mov edx, ebp
mov rcx, r12
mov dword [rsp + 0x20], 2
mov r9, 0xffffffffffffffff
mov r15d, edi
mov r14d, edi
call fcn.140195330
test rax, rax
jne 0x1401dbc38
mov rax, qword [r13 + 0x40]
mov r9d, dword [rsi]
mov r8, qword [rax + rdi*8]
test r9d, r9d
jle 0x1401dbcfb
lea r9, [rdi + rdi]
mov rcx, rdi
mov rax, r12
mov rdi, r8
mov r12d, r15d
xor ebx, ebx
mov r15, r9
mov r8, rcx
mov r9, rax
nop dword [rax]
mov rax, rbx
shl rax, 5
mov r10, qword [rsi + rax + 8]
mov rax, r10
test r10, r10
jne 0x1401dbccd
jmp 0x1401dbcf0
mov rax, qword [rax + 0x20]
mov rax, qword [rax + 8]
test rax, rax
je 0x1401dbcf0
mov edx, dword [rax + 4]
test edx, 0x82000
je 0x1401de770
and edx, 0x80000
jne 0x1401dbcc0
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x1401dbccd
nop dword [rax]
add rbx, 1
cmp dword [rsi], ebx
jg 0x1401dbca8
mov r12, r9
movzx eax, word [r13 + 0x5e]
cmp r14d, eax
jne 0x1401dbc08
mov r14, qword [rsp + 0x40]
mov r13, qword [rsp + 0x220]
mov byte [r14 + 0x43], 1
jmp 0x1401da71c
mov r14, qword [rsp + 0x40]
mov r13, qword [rsp + 0x220]
cmp qword [rsp + 0x238], 0
jne 0x1401da71c
mov rax, qword [rsp + 0x240]
or word [r14 + 0x3c], 0x80
mov qword [r14 + 0x10], rax
jmp 0x1401da71c
mov rcx, qword [rbp]
mov eax, dword [rbp + 0x90]
lea rdx, [0x1404f53c0]
cmp byte [rcx + 0x67], 0
je 0x1401de5de
mov dword [rdx + 8], eax
test r12d, r12d
je 0x1401db579
mov ecx, dword [rsp + 0x50]
lea r13, [0x14044a109]
add ecx, ecx
mov dword [rsp + 0xa8], ecx
mov r8d, r12d
mov rcx, rbp
lea r9d, [rax + 2]
mov edx, 0x10
mov dword [rsp + 0x20], 0
call fcn.140182310
mov ecx, dword [rsp + 0xd0]
mov eax, dword [rsp + 0xa8]
mov r9d, esi
mov r8d, dword [rsp + 0xb0]
add eax, ecx
cdqe
movzx edx, byte [r13 + rax]
mov eax, dword [rsp + 0xc0]
add eax, ecx
mov rcx, rbp
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x70]
mov dword [rsp + 0x20], eax
call fcn.140182e00
jmp 0x1401db579
cmp r15d, 1
je 0x1401dbe48
cmp r15d, 3
jne 0x1401dbec3
and dh, 2
je 0x1401dbe10
mov edx, dword [rdi + 0x2c]
test edx, edx
jne 0x1401dbf80
mov r8d, dword [rsp + 0x58]
mov rcx, qword [rsp + 0x220]
mov r9d, 0x10
mov rdx, r12
call fcn.1401e5a90
or word [rbx + 0x12], 4
jmp 0x1401db720
or byte [r14 + 0x44], 2
jmp 0x1401db720
mov eax, dword [rdi + 4]
lea rcx, [rsp + 0x160]
mov qword [rsp + 0x160], 0
mov qword [rsp + 0x170], 0
mov dword [rsp + 0x128], eax
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x178], 0
mov qword [rsp + 0x120], rax
lea rax, [0x14015d230]
mov qword [rsp + 0x168], rax
lea rax, [rsp + 0x120]
mov qword [rsp + 0x180], 0
mov qword [rsp + 0x188], rax
test r12, r12
jne 0x1401dbf58
movzx edx, word [rbx + 0x12]
test dh, 0x10
je 0x1401dbe00
test r13d, r13d
mov eax, 3
cmove r13d, eax
jmp 0x1401db720
cmp r15d, 1
jne 0x1401dbdf6
mov eax, dword [rdi + 4]
lea rcx, [rsp + 0x160]
mov qword [rsp + 0x160], 0
mov qword [rsp + 0x170], 0
mov dword [rsp + 0x128], eax
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x178], 0
mov qword [rsp + 0x120], rax
lea rax, [0x14015d230]
mov qword [rsp + 0x168], rax
lea rax, [rsp + 0x120]
mov qword [rsp + 0x180], 0
mov qword [rsp + 0x188], rax
mov rdx, r12
call fcn.14016f840
cmp word [rsp + 0x184], 0
je 0x1401dbebf
mov r13d, 2
jmp 0x1401db720
mov r8d, edx
and edx, 1
mov eax, dword [rbp + 0x90]
shr r8d, 1
add edx, 0x10
cmp eax, dword [rbp + 0x94]
jge 0x1401dc410
lea ecx, [rax + 1]
mov dword [rbp + 0x90], ecx
movsxd rcx, eax
lea r9, [rcx + rcx*2]
mov rcx, qword [rbp + 0x88]
lea rcx, [rcx + r9*8]
mov byte [rcx], dl
xor edx, edx
mov word [rcx + 2], dx
mov dword [rcx + 4], r8d
mov qword [rcx + 8], 0
mov qword [rcx + 0x10], 0
mov byte [rcx + 1], 0
mov r8d, dword [rsp + 0x58]
mov r9d, 0x10
mov rdx, r12
mov dword [rsp + 0x70], eax
mov rcx, qword [rsp + 0x220]
call fcn.1401e5a90
movsxd rax, dword [rsp + 0x70]
test eax, eax
je 0x1401dbe2b
mov r8, qword [rbp]
mov ecx, dword [rbp + 0x90]
lea rdx, [0x1404f53c0]
cmp byte [r8 + 0x67], 0
jne 0x1401dc02c
lea rdx, [rax + rax*2]
mov rax, qword [rbp + 0x88]
lea rdx, [rax + rdx*8]
mov dword [rdx + 8], ecx
jmp 0x1401dbe2b
mov eax, 1
jmp 0x1401db711
mov rbp, r15
movsxd rax, dword [r14 + 0x8c]
test eax, eax
jle 0x1401dc1a5
lea rdx, [rax*8]
mov esi, dword [rsp + 0x88]
sub rdx, rax
mov rax, qword [rsp + 0x40]
lea r15, [rbx + rdx*8]
lea r12, [rax + rax*2]
shl r12, 2
nop dword [rax]
test byte [rbx + 0x12], 6
jne 0x1401dc198
movzx eax, word [rbx + 0x14]
test al, 0x82
je 0x1401dc198
test ah, 8
je 0x1401dc198
cmp esi, dword [rbx + 0x1c]
jne 0x1401dc198
mov rax, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x48]
add rax, r12
test byte [rcx + rax*8 + 0x44], 0x58
jne 0x1401dc198
mov r13, qword [rbx]
mov r8d, dword [rbx + 0x20]
mov dword [rsp + 0x20], 0x83
mov edx, esi
mov qword [rsp + 0x28], 0
mov r9, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x60]
call fcn.140195330
test rax, rax
je 0x1401dc198
test byte [rax + 0x12], 4
jne 0x1401dc198
mov rdx, qword [rax]
test byte [rax + 0x14], 1
je 0x1401dc11b
test byte [rdx + 5], 0x10
je 0x1401dc11b
mov rcx, qword [rdx + 0x20]
mov rcx, qword [rcx + 0x20]
cmp dword [rcx], 1
jg 0x1401dc198
movdqu xmm0, xmmword [rdx]
mov r8d, dword [rsp + 0x58]
mov qword [rsp + 0x50], rax
mov r9d, 0x10
mov rcx, qword [rsp + 0x220]
movaps xmmword [rsp + 0x160], xmm0
movdqu xmm1, xmmword [rdx + 0x10]
movaps xmmword [rsp + 0x170], xmm1
movdqu xmm2, xmmword [rdx + 0x20]
movaps xmmword [rsp + 0x180], xmm2
movdqu xmm3, xmmword [rdx + 0x30]
movaps xmmword [rsp + 0x190], xmm3
mov rdx, qword [rdx + 0x40]
mov qword [rsp + 0x1a0], rdx
mov rdx, qword [r13 + 0x10]
mov qword [rsp + 0x170], rdx
lea rdx, [rsp + 0x160]
call fcn.1401e5a90
mov rax, qword [rsp + 0x50]
or word [rax + 0x12], 4
nop dword [rax]
add rbx, 0x38
cmp rbx, r15
jne 0x1401dc080
mov rax, qword [rdi + 0x38]
mov qword [rsp + 0x50], rax
test rax, rax
je 0x1401dc428
movzx eax, byte [rdi + 0x40]
mov rsi, qword [r14 + 8]
lea rdx, [rax + rax*2]
lea rax, [rax + rdx*4]
lea rax, [rsi + rax*8]
mov r15, qword [rax + 0x28]
test byte [r15 + 0x30], 0x80
je 0x1401dc838
mov r13, qword [r15 + 0x10]
test r13, r13
jne 0x1401dc1fd
jmp 0x1401df42c
mov r13, qword [r13 + 0x28]
test r13, r13
je 0x140253f5d
movzx eax, byte [r13 + 0x64]
and eax, 3
cmp al, 2
jne 0x1401dc1f0
movzx ebx, word [r13 + 0x5e]
mov rcx, qword [rsp + 0x220]
lea eax, [rbx + 1]
mov edx, eax
mov dword [rsp + 0x70], eax
call fcn.14015d1c0
mov dword [rsp + 0x80], eax
test ebx, ebx
je 0x1401ddbe8
lea esi, [rax + 1]
mov qword [rsp + 0xa8], rdi
mov rdi, r13
xor r12d, r12d
mov dword [rsp + 0x68], esi
mov r13d, esi
mov esi, dword [rsp + 0x88]
nop word [rax + rax]
mov rax, qword [rdi + 8]
mov r8d, esi
mov rdx, r15
mov rcx, rbp
movsx r9d, word [rax + r12*2]
lea eax, [r13 + r12]
add r12, 1
mov dword [rsp + 0x20], eax
call fcn.1401e85d0
cmp ebx, r12d
jg 0x1401dc258
mov rdi, qword [rsp + 0xa8]
mov rax, qword [rsp + 0x50]
movsxd rsi, dword [rbp + 0x90]
mov r8d, dword [rax]
cmp esi, dword [rbp + 0x94]
jge 0x1401dcc2c
lea eax, [rsi + 1]
mov ecx, dword [rsp + 0x68]
mov dword [rbp + 0x90], eax
movsxd rax, esi
lea rdx, [rax + rax*2]
mov rax, qword [rbp + 0x88]
lea rax, [rax + rdx*8]
mov dword [rax + 4], r8d
mov dword [rax + 8], 0
mov dword [rax + 0xc], ecx
mov dword [rax + 0x10], ebx
mov dword [rax], 0xfd1d
mov r15d, dword [rsp + 0x68]
mov r9d, ebx
mov edx, 0x61
mov rcx, rbp
mov r13d, dword [rsp + 0x80]
mov r8d, r15d
mov dword [rsp + 0x20], r13d
call fcn.140182310
mov r9d, r13d
mov r13, qword [rsp + 0x50]
mov rcx, rbp
mov dword [rsp + 0x28], ebx
mov edx, 0x8a
mov dword [rsp + 0x20], r15d
mov r8d, dword [r13]
call fcn.140182e00
mov r8d, dword [r13 + 4]
mov dword [rsp + 0x28], ebx
xor r9d, r9d
mov dword [rsp + 0x20], r15d
mov edx, 0xb7
mov rcx, rbp
call fcn.140182e00
mov eax, dword [rbp + 0x90]
test eax, eax
jle 0x1401dc363
mov r11, qword [rbp + 0x88]
movsxd rdx, eax
mov ebx, 0x10
lea rdx, [rdx + rdx*2]
lea rdx, [r11 + rdx*8]
mov word [rdx - 0x16], bx
mov rcx, qword [rbp]
lea rdx, [0x1404f53c0]
cmp byte [rcx + 0x67], 0
jne 0x1401dc383
mov rdx, qword [rbp + 0x88]
lea rcx, [rsi + rsi*2]
lea rdx, [rdx + rcx*8]
cmp dword [rsp + 0x70], 1
mov dword [rdx + 8], eax
je 0x1401dcbee
mov rcx, qword [rsp + 0x220]
mov esi, dword [rsp + 0x70]
cmp esi, dword [rcx + 0x28]
jle 0x1401dc3b2
mov dword [rcx + 0x28], esi
mov rsi, rcx
mov ecx, dword [rsp + 0x80]
mov dword [rsi + 0x2c], ecx
mov r9d, dword [rdi]
test r9d, r9d
jne 0x1401dc436
mov rbx, qword [rdi + 0x38]
test rbx, rbx
jne 0x1401dc45d
mov rax, qword [rdi + 0x68]
mov qword [rsp + 0x80], rax
mov eax, dword [rdi + 0x18]
add dword [rsp + 0x7c], 1
add rdi, 0x70
mov dword [r14 + 0x30], eax
mov eax, dword [rsp + 0x7c]
cmp eax, dword [rsp + 0xe8]
jne 0x1401dace0
mov rax, qword [rsp + 0x98]
mov eax, dword [rax + 0x90]
mov dword [r14 + 0x50], eax
jmp 0x1401da6d9
mov dword [rsp + 0x20], 0
xor r9d, r9d
mov rcx, rbp
call fcn.140182280
jmp 0x1401dbfd9
mov r9d, dword [rdi]
test r9d, r9d
je 0x1401dc3c7
mov eax, dword [rbp + 0x90]
mov dword [rdi + 0x1c], eax
mov r8d, 1
mov edx, 0x47
mov rcx, rbp
mov dword [rsp + 0x20], 0
call fcn.140182310
mov rbx, qword [rdi + 0x38]
test rbx, rbx
je 0x1401dc48e
mov r9d, dword [rbx + 8]
xor r8d, r8d
mov edx, 0x4a
mov rcx, rbp
mov dword [rsp + 0x20], 0
call fcn.140182310
mov eax, dword [rbp + 0x90]
mov dword [rbx + 0xc], eax
mov rax, qword [rsp + 0x220]
add byte [rax + 0x26], 1
mov rdx, qword [rdi + 0x68]
mov r10d, dword [r14 + 0x8c]
mov rbx, qword [r14 + 0x90]
mov qword [rsp + 0x80], rdx
test r10d, r10d
jle 0x1401dc3d3
mov r15, qword [rsp + 0x40]
mov r13, qword [rsp + 0x48]
mov qword [rsp + 0x40], rbp
mov r12d, dword [rsp + 0xa0]
lea rsi, [r15 + r15*2]
shl rsi, 2
mov rbp, rsi
mov esi, dword [rsp + 0x58]
nop word [rax + rax]
test byte [rbx + 0x12], 6
jne 0x1401dc51e
mov rax, rdx
and rax, qword [rbx + 0x30]
jne 0x1401dc51e
lea rax, [rbp + r15]
test byte [r13 + rax*8 + 0x44], 0x40
jne 0x1401dc51e
mov rdx, qword [rbx]
mov rcx, qword [rsp + 0x220]
mov r9d, 0x10
mov r8d, esi
call fcn.1401e5a90
or word [rbx + 0x12], 4
mov rdx, qword [rdi + 0x68]
add r12d, 1
add rbx, 0x38
cmp r12d, dword [r14 + 0x8c]
jl 0x1401dc4e0
mov qword [rsp + 0x80], rdx
mov rbp, qword [rsp + 0x40]
jmp 0x1401dc3d3
mov rax, qword [rsp + 0x80]
jmp 0x1401dae75
mov r9, qword [rsp + 0x80]
mov edx, dword [rsp + 0x7c]
mov r8, rdi
mov rcx, r14
call fcn.1401efca0
jmp 0x1401dad79
mov rax, qword [r14]
mov edx, 0x24
mov rcx, qword [rax]
call fcn.140173f40
mov rbx, rax
test rax, rax
je 0x1401dd116
mov rax, qword [r14 + 0x60]
mov qword [rbx + 8], 0x14
mov r8d, 0x10000
mov r12, qword [rsp + 0x98]
mov qword [rbx], rax
lea rax, [rbx + 0x10]
mov qword [r14 + 0x60], rbx
mov rcx, r12
mov qword [rsi + 0x38], rax
mov eax, dword [r13 + 0x34]
lea edx, [rax + 1]
mov dword [r13 + 0x34], edx
mov edx, 0x4d
mov dword [rbx + 0x10], eax
mov eax, dword [r13 + 0x38]
lea r9d, [rax + 1]
mov dword [r13 + 0x38], r9d
mov dword [rbx + 0x14], r9d
mov dword [rsp + 0x20], 0
call fcn.140182310
mov eax, dword [r13 + 0x38]
xor r8d, r8d
mov rcx, r12
mov edx, 0x4b
lea r9d, [rax + 1]
mov dword [r13 + 0x38], r9d
mov dword [rbx + 0x18], r9d
mov dword [rsp + 0x20], 0
call fcn.140182310
test byte [rdi + 0x30], 0x80
jne 0x1401dd52c
mov r8d, dword [rbx + 0x10]
mov dword [rsp + 0x20], 0
mov r9d, 1
mov rcx, r12
mov edx, 0x76
call fcn.140182310
mov rcx, qword [r13]
mov edx, 1
xor r8d, r8d
call fcn.140174eb0
mov rdx, rax
test rax, rax
je 0x1401dc690
mov qword [rax + 0x20], 0
mov rax, qword [rax + 0x18]
mov byte [rax], 0
mov rax, qword [r12]
cmp byte [rax + 0x67], 0
jne 0x1401ded6d
mov rdi, qword [rsp + 0x98]
movsxd rax, dword [rdi + 0x90]
lea rcx, [rax + rax*2]
mov rax, qword [rdi + 0x88]
lea rax, [rax + rcx*8 - 0x18]
mov byte [rax + 1], 0xf8
mov qword [rax + 0x10], rdx
and dword [rbp + 0x38], 0xffffffbf
mov byte [r14 + 0x41], 0
mov byte [r14 + 0x43], 3
jmp 0x1401dac8b
mov ebx, dword [rax + 0x3c]
mov eax, dword [rax + 0x38]
xor r9d, r9d
mov edx, 0xb
mov rcx, rbp
mov dword [rsp + 0x20], eax
mov r8d, ebx
call fcn.140182310
mov eax, dword [rbp + 0x90]
cmp eax, dword [rbp + 0x94]
jge 0x1401dd630
lea edx, [rax + 1]
mov dword [rbp + 0x90], edx
movsxd rdx, eax
lea rcx, [rdx + rdx*2]
mov rdx, qword [rbp + 0x88]
lea rdx, [rdx + rcx*8]
mov dword [rdx + 4], ebx
mov dword [rdx + 8], esi
mov dword [rdx + 0xc], 0
mov qword [rdx + 0x10], 0
mov dword [rdx], 0xc
mov dword [rdi + 0x48], eax
mov r15d, 2
mov byte [rdi + 0x41], 9
mov qword [rsp + 0x68], 0
jmp 0x1401db618
movzx r10d, r10b
lea rax, [r10 + r10*2]
lea rax, [r10 + rax*4]
lea r9, [r15 + rax*8 + 8]
mov eax, dword [r13 + 0x34]
lea edx, [rax + 1]
mov dword [r13 + 0x34], edx
test byte [r11 + 0x65], 0x10
je 0x1401dc758
mov rcx, qword [rsp + 0x90]
test byte [rcx + 0x63], 1
je 0x1401dd7b0
mov r8, qword [r11 + 0x48]
test r8, r8
je 0x1401dc775
lea rdx, [rbx + rbx*2]
lea rdx, [rbx + rdx*4]
test byte [r15 + rdx*8 + 0x44], 0x10
je 0x1401dd6b4
mov dword [rsi + 8], eax
mov edx, 0x70
jmp 0x1401dabf5
mov r12d, dword [rbp + 0x90]
cmp r12d, dword [rbp + 0x94]
jge 0x1401dd708
lea eax, [r12 + 1]
mov dword [rbp + 0x90], eax
movsxd rax, r12d
lea rdx, [rax + rax*2]
mov rax, qword [rbp + 0x88]
lea rax, [rax + rdx*8]
mov qword [rax], 0xf
mov qword [rax + 8], 0
mov qword [rax + 0x10], 0
mov rcx, qword [rsp + 0x228]
lea rax, [rbx + rbx*2]
mov edx, 0xa
mov dword [rsp + 0x20], 0
lea rax, [rbx + rax*4]
lea rax, [rcx + rax*8]
mov rcx, rbp
mov r9d, dword [rax + 0x38]
mov r8d, dword [rax + 0x3c]
call fcn.140182310
mov rcx, qword [rbp]
mov edx, dword [rbp + 0x90]
lea rax, [0x1404f53c0]
cmp byte [rcx + 0x67], 0
jne 0x1401dc824
movsxd rax, r12d
lea rcx, [rax + rax*2]
mov rax, qword [rbp + 0x88]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
jmp 0x1401dad48
mov rbx, qword [r14 + 0x90]
jmp 0x1401dc04b
mov rax, qword [rsp + 0x220]
mov eax, dword [rax + 0x28]
cmp eax, 1
jle 0x1401dd0e2
mov rsi, qword [rsp + 0x220]
mov rcx, qword [rsp + 0x220]
sub eax, 2
mov esi, dword [rsi + 0x2c]
mov dword [rcx + 0x28], eax
lea edx, [rsi + 2]
lea eax, [rsi + 1]
mov dword [rsp + 0x80], esi
mov dword [rcx + 0x2c], edx
mov dword [rsp + 0x68], eax
mov r8d, dword [rdi + 4]
mov r9d, dword [rsp + 0x68]
mov edx, 0x87
mov rcx, rbp
mov dword [rsp + 0x20], 0
mov ebx, 1
call fcn.140182310
mov dword [rsp + 0x70], 2
jmp 0x1401dc289
movzx esi, word [r15 + 0x3c]
mov rcx, qword [rsp + 0x220]
lea edx, [rsi + 2]
mov dword [rsp + 0xb8], esi
call fcn.14015d1c0
mov ecx, dword [rdi + 0xc]
mov dword [rsp + 0xc0], eax
mov dword [rsp + 0xb0], ecx
mov ecx, esi
test esi, esi
je 0x1401dc9cf
lea ebx, [rax + 2]
mov qword [rsp + 0xd0], r13
xor esi, esi
mov r13, rbp
mov qword [rsp + 0xc8], r14
mov rbp, rdi
mov r14, qword [rsp + 0x220]
mov edi, ebx
mov ebx, ecx
jmp 0x1401dc946
cmp rsi, 0x1f
jbe 0x1401dcb3c
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x50]
mov r8, rbp
mov rdx, r12
mov rcx, r14
mov dword [rsp + 0x20], eax
call fcn.1401d91b0
mov eax, dword [rbp + 0x10]
mov dword [rsp + 0xb0], eax
add rsi, 1
cmp ebx, esi
jle 0x1401dc9b9
mov rdx, qword [r15 + 0x48]
mov r9d, esi
lea eax, [rdi + rsi]
mov r12, qword [rdx + rsi*8]
test r12, r12
je 0x1401dc93e
test byte [r12 + 0x14], 1
jne 0x1401dc910
mov rdx, qword [r12]
mov r9d, 1
mov r8d, eax
mov rcx, r14
mov rdx, qword [rdx + 0x18]
call fcn.1401e9540
cmp byte [r12 + 0x17], 0x4a
jne 0x1401dc93e
test byte [r15 + 0x1c], 2
je 0x1401dc93e
xor r8d, r8d
mov edx, 0x47
mov rcx, r13
add rsi, 1
mov rax, qword [rsp + 0xc8]
mov rax, qword [rax + 0x20]
mov r9d, dword [rax + 0xc]
mov dword [rsp + 0x20], 0
call fcn.140182310
cmp ebx, esi
jg 0x1401dc946
mov rdi, rbp
mov r14, qword [rsp + 0xc8]
mov rbp, r13
mov r13, qword [rsp + 0xd0]
mov esi, dword [rsp + 0xc0]
mov r8d, dword [r15 + 0x18]
mov edx, 0x47
mov rcx, rbp
mov dword [rsp + 0x20], 0
mov r9d, esi
call fcn.140182310
mov dword [rsp + 0x20], 0
lea r9d, [rsi + 1]
mov rcx, rbp
mov r8d, dword [rsp + 0xb8]
mov edx, 0x47
call fcn.140182310
movzx eax, byte [r15 + 0x1c]
mov edx, 6
mov rcx, rbp
mov r9d, dword [rsp + 0xb0]
mov r8d, dword [rsp + 0x88]
and eax, 1
cmp al, 1
sbb eax, eax
or eax, 0xfffffffa
mov dword [rsp + 0x30], eax
mov rax, qword [r15 + 0x28]
mov dword [rsp + 0x20], esi
mov qword [rsp + 0x28], rax
call fcn.140182c30
and byte [r15 + 0x1c], 0xfe
cmp byte [r13 + 0x67], 0
je 0x1401dca64
mov qword [r15 + 0x28], 0
mov eax, dword [rsp + 0x88]
mov esi, dword [rsp + 0xc0]
mov dword [rdi + 0x44], eax
cmp byte [r14 + 0x42], 1
sbb eax, eax
add esi, 2
xor ebx, ebx
and eax, 0xffffff84
sub eax, 0x45
mov byte [rdi + 0x41], al
mov eax, dword [rbp + 0x90]
mov dword [rdi + 0x48], eax
lea rax, [rsp + 0x160]
mov qword [rsp + 0x68], rax
mov eax, dword [rsp + 0xb8]
test eax, eax
je 0x1401dcb28
mov qword [rsp + 0x50], r14
mov r14, r13
mov r13d, dword [rsp + 0xb8]
jmp 0x1401dcae4
test byte [r12 + 0x14], 1
je 0x1401dcad8
cmp ebx, 0x1f
jle 0x1401dcb0a
cmp byte [r14 + 0x67], 0
je 0x1401dcf8a
add rbx, 1
add esi, 1
cmp r13d, ebx
jle 0x1401dcb23
mov rax, qword [r15 + 0x48]
mov ecx, ebx
mov r12, qword [rax + rbx*8]
cmp rbx, 0xf
ja 0x1401dcac0
movzx eax, word [r15 + 0x22]
bt eax, ebx
jb 0x1401dcf7a
test byte [r12 + 0x14], 1
je 0x1401dcad8
mov eax, 1
shl eax, cl
and eax, dword [r15 + 0x30]
je 0x1401dcacd
add rbx, 1
add esi, 1
cmp r13d, ebx
jg 0x1401dcae4
mov r14, qword [rsp + 0x50]
mov qword [rsp + 0x68], 0
mov r15d, 2
jmp 0x1401db618
mov edx, 1
mov ecx, esi
shl edx, cl
and edx, dword [r15 + 0x30]
je 0x1401dc91a
mov r8d, dword [r14 + 0x34]
mov dword [rsp + 0xa8], eax
mov rcx, r14
mov eax, dword [r14 + 0x38]
lea edx, [r8 + 1]
mov dword [rsp + 0x68], r8d
lea r9d, [rax + 1]
mov dword [r14 + 0x34], edx
mov rdx, qword [r12]
mov dword [r14 + 0x38], r9d
mov dword [rsp + 0x70], r9d
call fcn.1401f2470
mov r9d, dword [rsp + 0x70]
mov r8d, dword [rsp + 0x68]
mov rcx, r13
mov eax, dword [rsp + 0xa8]
mov edx, 0xaf
mov dword [rsp + 0x20], r9d
mov r9d, eax
call fcn.140182310
jmp 0x1401dc93e
mov rax, qword [rsp + 0x220]
xor r8d, r8d
mov edx, 0x47
mov rcx, rbp
mov eax, dword [rax + 0x38]
lea r9d, [rax + 1]
mov dword [rsp + 0x50], eax
mov rax, qword [rsp + 0x220]
mov dword [rax + 0x38], r9d
mov dword [rdi], r9d
mov dword [rsp + 0x20], 0
call fcn.140182310
jmp 0x1401daec8
mov esi, dword [rsp + 0x80]
test esi, esi
je 0x1401dc3b2
mov rcx, qword [rsp + 0x220]
movzx edx, byte [rcx + 0x1f]
cmp dl, 7
ja 0x1401dc3b2
mov rbx, qword [rsp + 0x220]
lea ecx, [rdx + 1]
mov byte [rbx + 0x1f], cl
mov dword [rbx + rdx*4 + 0xe8], esi
jmp 0x1401dc3b2
mov eax, dword [rsp + 0x68]
mov dword [rsp + 0x28], ebx
xor r9d, r9d
mov edx, 0x1d
mov rcx, rbp
mov dword [rsp + 0x20], eax
call fcn.140182d50
movsxd rsi, eax
jmp 0x1401dc2da
test al, 0x20
je 0x1401dd626
mov rdx, qword [r15 + 0x48]
mov r12, qword [rdx]
mov edx, 1
test al, 0x10
jne 0x1401dd5ed
mov r15d, dword [rsp + 0x50]
test r15d, r15d
jne 0x1401ddafe
mov qword [rsp + 0x68], 0
test r12, r12
je 0x1401df0bd
mov dword [rsp + 0x160], 0x17151618
mov rbx, qword [r12]
mov rdx, qword [rbx + 0x18]
movzx eax, byte [rdx]
cmp al, 0xb0
jne 0x1401dccaa
movzx eax, byte [rdx + 2]
cmp al, 0xb1
je 0x1401deb92
cmp al, 0x8a
je 0x1401de9c0
mov rcx, qword [rsp + 0x220]
lea r8, [rsp + 0x120]
call fcn.1401e9840
mov rdx, r12
mov rcx, rdi
mov r13d, eax
call fcn.1401568c0
movzx eax, byte [rbx]
sub eax, 0x36
cdqe
movzx edx, byte [rsp + rax + 0x160]
mov dword [rsp + 0x20], r13d
mov r8d, dword [rsp + 0x88]
mov r9d, esi
mov rcx, rbp
call fcn.140182310
mov edx, dword [rsp + 0x120]
test edx, edx
je 0x1401dcd24
mov rax, qword [rsp + 0x220]
movzx eax, byte [rax + 0x1f]
cmp al, 7
jbe 0x1401de414
mov eax, 0x27
sub eax, dword [rsp + 0x50]
cmp qword [rsp + 0x68], 0
mov r13d, eax
je 0x1401dd665
mov rax, qword [rsp + 0x68]
mov r9d, 1
mov r12, qword [rax]
mov rax, qword [rsp + 0x220]
mov eax, dword [rax + 0x38]
mov rdx, qword [r12 + 0x18]
lea ebx, [rax + 1]
mov dword [rsp + 0x70], eax
mov rax, qword [rsp + 0x220]
mov r8d, ebx
mov dword [rax + 0x38], ebx
mov rcx, rax
call fcn.1401e9540
mov rax, qword [r12 + 0x18]
movzx edx, byte [rax]
cmp dl, 0xb0
jne 0x1401dcd88
movzx edx, byte [rax + 2]
cmp dl, 0xb1
je 0x1401dda3e
cmp dl, 0x8a
je 0x1401dda3a
movzx eax, byte [r12]
sub eax, 0x36
cmp dword [rsp + 0x50], 1
sbb r12d, r12d
test al, 0xfd
je 0x1401de619
and r12d, 0xfffffffe
add r12d, 0x38
mov rdx, qword [rsp + 0x68]
mov rcx, rdi
call fcn.1401568c0
jmp 0x1401dda5d
test ah, 0x20
je 0x1401dd58f
mov rax, qword [rsp + 0x220]
mov rsi, qword [rsp + 0x220]
mov rcx, qword [rsp + 0x220]
mov eax, dword [rax + 0x34]
mov dword [rsp + 0xe0], eax
add eax, 1
mov dword [rsi + 0x34], eax
mov eax, dword [rsi + 0x38]
lea esi, [rax + 1]
mov rax, qword [rsp + 0x220]
mov dword [rsp + 0xc8], esi
mov dword [rax + 0x38], esi
mov eax, dword [rax + 0x44]
mov dword [rsp + 0x10c], eax
sub eax, 1
mov dword [rcx + 0x44], eax
mov rcx, qword [rsp + 0x40]
mov dword [rsp + 0x100], eax
lea rax, [rcx + rcx*2]
lea rax, [rcx + rax*4]
mov rcx, qword [rsp + 0x48]
mov rax, qword [rcx + rax*8 + 0x28]
mov qword [rsp + 0xa8], rax
mov rax, qword [r15 + 0x48]
mov rax, qword [rax]
mov qword [rsp + 0xf8], rax
mov rax, qword [rax + 0x20]
mov byte [rdi + 0x41], 0x43
mov qword [rsp + 0x50], rax
mov dword [rdi + 0x44], esi
movzx eax, byte [r14 + 0x40]
cmp al, 1
ja 0x1401de239
mov rax, qword [r14 + 8]
mov qword [rsp + 0xb8], rax
test byte [r14 + 0x3c], 0x10
jne 0x1401ddc08
mov rax, qword [rsp + 0xa8]
test byte [rax + 0x30], 0x80
je 0x1401de695
mov rax, qword [rsp + 0xa8]
mov r12, qword [rax + 0x10]
test r12, r12
jne 0x1401dcece
jmp 0x1401df41a
mov r12, qword [r12 + 0x28]
test r12, r12
je 0x1401df408
movzx eax, byte [r12 + 0x64]
and eax, 3
cmp al, 2
jne 0x1401dcec0
mov rax, qword [rsp + 0x220]
mov rsi, qword [rsp + 0x220]
mov rcx, rbp
mov edx, 0x76
movzx r9d, word [r12 + 0x5e]
mov r8d, dword [rax + 0x34]
lea eax, [r8 + 1]
mov dword [rsp + 0x70], r8d
mov dword [rsi + 0x34], eax
mov dword [rsp + 0x20], 0
call fcn.140182310
mov rcx, qword [rsp + 0x220]
mov rdx, r12
call fcn.14018d470
jmp 0x1401de6d1
lea rax, [rbx + rbx*2]
lea rax, [rbx + rax*4]
mov rax, qword [r15 + rax*8 + 0x28]
mov rdx, qword [rax + 0x10]
mov eax, dword [rsp + 0x258]
cmp r11, rdx
je 0x1401dcf69
test rdx, rdx
je 0x1401dcf69
nop word [rax + rax]
mov rdx, qword [rdx + 0x28]
add eax, 1
test rdx, rdx
je 0x1401dcf69
cmp r11, rdx
jne 0x1401dcf58
mov dword [r14 + 0x2c], eax
mov edx, 0x71
mov dword [rsi + 8], eax
jmp 0x1401dabf5
mov rdx, r12
mov rcx, rdi
call fcn.1401568c0
jmp 0x1401dcad8
mov ecx, dword [rdi + 0x50]
test ecx, ecx
jle 0x1401dd01d
mov rdx, qword [rdi + 0x58]
mov rax, qword [rbp]
sub ecx, 1
lea rcx, [rcx + rcx*4]
movzx r11d, byte [rax + 0x67]
lea r8, [rdx + rcx*4 + 0x18]
lea rax, [rdx + 4]
jmp 0x1401dcfd3
cmp cl, 0x87
jne 0x1401dcfca
mov r9d, dword [rdx + 8]
cmp r9d, esi
je 0x1401deaa0
add rax, 0x14
cmp r8, rax
je 0x1401dd01d
lea rdx, [0x1404f53c0]
test r11b, r11b
jne 0x1401dcff1
movsxd rdx, dword [rax]
lea rcx, [rdx + rdx*2]
mov rdx, qword [rbp + 0x88]
lea rdx, [rdx + rcx*8]
movzx ecx, byte [rdx]
cmp cl, 0x5e
jne 0x1401dcfb8
mov ecx, dword [rdx + 0xc]
cmp ecx, esi
jne 0x1401dcfca
mov r9d, dword [rdx + 8]
mov r11d, 0x5e
mov r8d, dword [rdx + 4]
mov dword [rsp + 0x20], ecx
mov edx, r11d
mov rcx, rbp
call fcn.140182310
mov rcx, qword [rsp + 0x220]
xor r9d, r9d
xor r8d, r8d
mov edx, 0x35
call fcn.140189530
cmp byte [r14 + 0x67], 0
mov r11, rax
jne 0x1401dd6f7
mov rdx, qword [r12]
mov eax, dword [r12 + 0x24]
mov rdx, qword [rdx + 0x10]
test eax, eax
jle 0x1401dd065
sub eax, 1
cdqe
shl rax, 5
add rax, qword [rdx + 0x20]
mov rdx, qword [rax + 8]
mov qword [r11 + 0x10], rdx
mov r8, qword [rsp + 0x68]
xor r9d, r9d
mov rcx, r14
mov edx, 0xb0
mov qword [rsp + 0x70], r11
mov qword [rsp + 0x160], 0
mov dword [rsp + 0x168], 0
call fcn.140174980
mov r11, qword [rsp + 0x70]
mov qword [r11 + 0x18], rax
test rax, rax
je 0x1401dd0ca
mov dword [rax + 0x2c], esi
mov r8d, dword [rdi + 0x18]
mov rdx, r11
mov r9d, 0x10
mov rcx, qword [rsp + 0x220]
call fcn.1401e5a90
mov r11, qword [rsp + 0x70]
mov qword [r11 + 0x10], 0
mov rdx, r11
mov rcx, r14
call fcn.1401690e0
jmp 0x1401dcad8
mov rax, qword [rsp + 0x220]
mov eax, dword [rax + 0x38]
lea esi, [rax + 1]
add eax, 2
mov dword [rsp + 0x80], esi
mov rsi, qword [rsp + 0x220]
mov dword [rsp + 0x68], eax
mov dword [rsi + 0x38], eax
jmp 0x1401dc879
xor r12d, r12d
jmp 0x1401daaae
mov qword [rsi + 0x38], 0
jmp 0x1401dac8b
mov rax, qword [rdi + 0x50]
mov rdx, qword [rsp + 0x90]
test rax, rax
jne 0x1401dd149
jmp 0x1401dd14e
mov rax, qword [rax + 0x28]
test rax, rax
je 0x1401dd14e
cmp rdx, qword [rax]
jne 0x1401dd140
lea rdx, [rbx + rbx*2]
mov qword [rsp + 0x28], rax
mov rcx, qword [rsp + 0x98]
xor r9d, r9d
mov dword [rsp + 0x30], 0xfffffff5
lea rdx, [rbx + rdx*4]
mov dword [rsp + 0x20], 0
mov r8d, dword [r15 + rdx*8 + 0x4c]
mov edx, 0xad
mov byte [rsp + 0x50], r10b
call fcn.140182c30
mov eax, dword [rbp + 0x38]
movzx r10d, byte [rsp + 0x50]
jmp 0x1401dab98
cmp word [rsp + 0x48], 0
je 0x1401dabc0
mov eax, dword [rsi + 4]
mov dword [rsi + 8], eax
jmp 0x1401dac3c
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x18]
test byte [rax + 0x30], 0x80
je 0x1401dd72b
mov ecx, dword [rsp + 0xb0]
cmp dword [rsp + 0x88], ecx
je 0x1401dd767
mov rbx, qword [rax + 0x10]
test rbx, rbx
jne 0x1401dd1f5
jmp 0x1401df427
mov rbx, qword [rbx + 0x28]
test rbx, rbx
je 0x140253f53
movzx eax, byte [rbx + 0x64]
and eax, 3
cmp al, 2
jne 0x1401dd1e8
movzx edx, word [rbx + 0x5e]
mov rcx, qword [rsp + 0x220]
call fcn.14015d1c0
cmp word [rbx + 0x5e], 0
mov r12d, eax
je 0x1401df2e0
mov qword [rsp + 0x70], rdi
mov r13, qword [rsp + 0x68]
mov rdi, rbp
mov rbp, rbx
mov ebx, dword [rsp + 0xb0]
xor esi, esi
mov rax, qword [rbp + 8]
movzx edx, word [r13 + 0x60]
movzx r8d, word [rax + rsi*2]
test edx, edx
je 0x1401de860
mov r9, qword [r13 + 8]
xor eax, eax
jmp 0x1401dd26c
add rax, 1
cmp edx, eax
jle 0x1401de860
cmp r8w, word [r9 + rax*2]
jne 0x1401dd260
movsx r9d, ax
lea eax, [r12 + rsi]
mov r8d, ebx
mov edx, 0x5e
mov rcx, rdi
mov dword [rsp + 0x20], eax
add rsi, 1
call fcn.140182310
movzx eax, word [rbp + 0x5e]
cmp eax, esi
jg 0x1401dd238
mov rbp, rdi
mov rdi, qword [rsp + 0x70]
mov dword [rsp + 0x28], eax
mov r9d, dword [rsp + 0x58]
mov edx, 0x1c
xor ebx, ebx
mov dword [rsp + 0x20], r12d
mov r8d, dword [rsp + 0x88]
mov rcx, rbp
call fcn.140182e00
jmp 0x1401db5a2
mov edx, 0x440
mov ebx, 0x3d0
jmp 0x1401da311
test byte [rbx + 0x3c], 0x20
jne 0x1401da736
mov rsi, qword [r15 + 0x28]
cmp byte [rsi + 0x3f], 1
je 0x1401da736
test byte [r15 + 0x48], 3
jne 0x1401da736
mov edi, dword [r15 + 0x4c]
xor r11d, r11d
lea rax, [rbx + 0x70]
mov ebp, 0xffffffff
mov r12, qword [rsp + 0x140]
mov qword [rsp + 0x68], rax
mov dword [rsp + 0x58], edi
mov dword [r12 + 0x38], 0
mov word [r12 + 0x3e], r11w
mov dword [rsp + 0x18c], edi
mov edi, 0x100
mov word [rsp + 0x188], di
lea rdi, [rsp + 0x160]
mov qword [rsp + 0x160], rax
mov rcx, rdi
mov qword [rsp + 0x168], rax
movabs rax, 0x8200000000
mov qword [rsp + 0x170], 0
mov qword [rsp + 0x178], 0
mov qword [rsp + 0x180], rax
mov byte [rsp + 0x18a], 1
mov word [rsp + 0x1b8], bp
call fcn.140194e00
test rax, rax
jne 0x1401dd3c1
jmp 0x1401dee4f
mov rcx, rdi
call fcn.140194e00
test rax, rax
je 0x1401dee4f
cmp qword [rax + 0x28], 0
jne 0x1401dd3b0
mov rdx, qword [r12 + 0x48]
mov ecx, 1
mov dword [r12 + 0x38], 0x1101
mov r8d, 0x21
mov qword [rdx], rax
mov edx, 1
mov eax, 0x1101
mov word [r12 + 0x3c], dx
mov word [r12 + 0x18], cx
mov word [r12 + 0x14], r8w
mov edi, dword [rsp + 0x58]
mov rdx, qword [rbx + 0x10]
mov ecx, 1
mov r8d, 1
mov word [r12 + 0x16], cx
mov qword [rbx + 0x3c0], r12
mov qword [r12 + 8], 1
mov dword [rbx + 0x364], edi
mov word [rbx + 0x48], r8w
test rdx, rdx
je 0x1401dd43e
mov edx, dword [rdx]
mov byte [rbx + 0x41], dl
test byte [rbx + 0x3d], 1
je 0x1401dd448
mov byte [rbx + 0x43], 1
cmp byte [rsp + 0x189], 1
jbe 0x1401dd45c
or eax, 0x200000
mov dword [r12 + 0x38], eax
mov rax, qword [r14 + 0x10]
jmp 0x1401da94a
mov qword [rsp + 0x80], 0xffffffffffffffff
cmp al, 1
jbe 0x1401da9b3
mov rax, qword [rsp + 0x90]
mov eax, dword [rax + 0x60]
jmp 0x1401da9a8
mov rax, qword [r15 + 0x48]
mov rcx, qword [rsp + 0x220]
xor r9d, r9d
mov r8, rdi
mov rdx, qword [rax]
mov rax, qword [rsp + 0x220]
mov eax, dword [rax + 0x38]
lea ebx, [rax + 1]
mov dword [rsp + 0x68], eax
mov rax, qword [rsp + 0x220]
mov dword [rax + 0x38], ebx
mov eax, dword [rsp + 0x50]
mov dword [rsp + 0x28], ebx
mov dword [rsp + 0x20], eax
call fcn.1401d91b0
mov esi, eax
test ebx, ebx
je 0x1401dd4ea
cmp ebx, eax
je 0x1401dd4ea
mov rax, qword [rsp + 0x220]
movzx eax, byte [rax + 0x1f]
cmp al, 7
jbe 0x1401de750
mov eax, dword [rdi + 0x34]
mov ebx, dword [rdi + 0x10]
test eax, eax
jne 0x1401de394
mov dword [rsp + 0x20], esi
mov r9d, ebx
mov edx, 0x1e
mov rcx, rbp
mov r8d, dword [rsp + 0x88]
mov r15d, 2
call fcn.140182310
mov byte [rdi + 0x41], 0xbb
mov qword [rsp + 0x68], 0
jmp 0x1401db618
mov r12, qword [rdi + 0x10]
test r12, r12
jne 0x1401dd54e
jmp 0x1401df403
mov r12, qword [r12 + 0x28]
test r12, r12
je 0x140253f30
movzx eax, byte [r12 + 0x64]
and eax, 3
cmp al, 2
jne 0x1401dd540
movzx r9d, word [r12 + 0x5e]
mov r8d, dword [rbx + 0x10]
mov edx, 0x76
mov dword [rsp + 0x20], 0
mov rcx, qword [rsp + 0x98]
call fcn.140182310
mov rdx, r12
mov rcx, r13
call fcn.14018d470
jmp 0x1401dc690
and r8d, 0x40
je 0x1401dedb8
mov byte [rdi + 0x41], 0xbb
mov r15d, 2
mov qword [rsp + 0x68], 0
jmp 0x1401db618
mov qword [rsp + 0xc8], 0
xor esi, esi
mov edx, ebx
test al, 0x10
jne 0x1401daff2
mov qword [rsp + 0xb8], 0
xor r10d, r10d
jmp 0x1401db02e
mov esi, dword [rdi + 0x10]
jmp 0x1401db138
xor r8d, r8d
jmp 0x1401db851
mov rax, qword [r15 + 0x48]
mov r13d, dword [rsp + 0x50]
mov rax, qword [rax + rdx*8]
mov qword [rsp + 0x68], rax
test r13d, r13d
je 0x1401dcc83
cmp qword [rsp + 0x68], 0
je 0x1401ddafe
mov rax, r12
mov r12, qword [rsp + 0x68]
mov qword [rsp + 0x68], rax
jmp 0x1401dcc8c
xor edx, edx
xor r12d, r12d
jmp 0x1401dcc64
mov r9d, esi
mov r8d, ebx
mov edx, 0xc
mov rcx, rbp
mov dword [rsp + 0x20], 0
call fcn.140182280
jmp 0x1401dc708
cmp dword [rsp + 0x50], 1
mov edx, 0x26
adc dl, 0
mov byte [rdi + 0x41], dl
jmp 0x1401db5d8
mov eax, dword [rbp + 0x90]
mov r15d, 2
mov byte [rdi + 0x41], r13b
mov esi, dword [rsp + 0x88]
mov dword [rdi + 0x48], eax
mov dword [rdi + 0x44], esi
jmp 0x1401db618
cmp byte [rsp + 0xa8], 0
mov dword [rsp + 0xc0], ebx
je 0x1401db4ca
test r12d, r12d
je 0x1401de720
lea eax, [rbx + 1]
mov dword [rsp + 0xc0], eax
jmp 0x1401db4ca
mov qword [rsp + 0x28], r9
mov rdx, r11
xor r9d, r9d
mov rcx, r13
mov dword [rsp + 0x20], eax
mov dword [rsp + 0x58], eax
mov qword [rsp + 0x50], r11
call fcn.14018f7c0
mov eax, dword [rsp + 0x58]
mov r11, qword [rsp + 0x50]
mov edx, 0x70
mov dword [rsi + 8], eax
jmp 0x1401dabf5
mov rcx, r8
call fcn.1401d6980
jmp 0x1401dac77
test rax, rax
je 0x1401dcad8
jmp 0x1401dd0d2
xor r9d, r9d
xor r8d, r8d
mov edx, 0xf
mov rcx, rbp
mov dword [rsp + 0x20], 0
call fcn.140182280
mov r12d, eax
jmp 0x1401dc7ca
mov rbx, qword [r14]
mov eax, dword [rsp + 0x88]
xor r9d, r9d
mov edx, 0x8d
mov r8d, dword [rsp + 0xb0]
mov r12, qword [rbx + 0x10]
or byte [r14 + 0x44], 1
mov dword [rsp + 0x20], eax
mov rcx, r12
call fcn.140182310
test word [r14 + 0x3c], 0x1020
jne 0x1401de492
xor ebx, ebx
jmp 0x1401db5a2
mov r8d, 0x40
lea rdx, str.at_most__d_tables_in_a_join
mov rcx, r13
xor r14d, r14d
call fcn.140173d40
jmp 0x1401da6d9
mov dword [rsp + 0x20], ebx
mov r9d, ebx
mov edx, 0x7d
mov rcx, rbp
mov r8d, dword [rsp + 0xb0]
call fcn.140182310
mov eax, dword [r15 + 0x38]
jmp 0x1401db588
mov r8d, eax
mov rdx, r11
mov rcx, r13
mov qword [rsp + 0x68], r9
mov dword [rsp + 0x58], eax
mov qword [rsp + 0x50], r11
call fcn.140188d40
mov r9, qword [rsp + 0x68]
mov eax, dword [rsp + 0x58]
mov r11, qword [rsp + 0x50]
jmp 0x1401dc758
mov rax, qword [rsp + 0x220]
mov r9d, dword [rdi]
mov eax, dword [rax + 0x38]
lea r12d, [rax + 1]
mov dword [rsp + 0x70], eax
mov rax, qword [rsp + 0x220]
mov dword [rax + 0x38], r12d
mov dword [rdi + 0x24], r12d
test r9d, r9d
jne 0x1401ded98
mov rax, qword [rsp + 0x220]
mov rsi, qword [rsp + 0x220]
mov r10d, 1
mov eax, dword [rax + 0x44]
mov dword [rsp + 0x70], eax
sub eax, 1
mov dword [rsi + 0x44], eax
mov esi, 1
mov dword [rdi + 0x28], eax
jmp 0x1401db041
cmp r12d, 1
je 0x1401df0af
mov rcx, qword [r13]
movsxd rdx, r12d
shl rdx, 5
add rdx, qword [rcx + 0x20]
mov rdx, qword [rdx + 8]
cmp byte [rdx + 0x11], 0
je 0x1401dab98
mov rax, qword [rdi]
mov r8d, dword [rdi + 0x28]
xor r9d, r9d
mov edx, r12d
mov rcx, r13
mov byte [rsp + 0x50], r10b
mov qword [rsp + 0x20], rax
call fcn.140185790
mov eax, dword [rbp + 0x38]
movzx r10d, byte [rsp + 0x50]
jmp 0x1401dab98
cmp qword [rsp + 0xb8], 0
je 0x1401def9d
mov rcx, qword [rsp + 0xb8]
mov dword [rsp + 0xec], 1
test byte [rcx + 0x14], 0x28
setne cl
or al, byte [rsp + 0xe0]
movzx ecx, cl
movzx eax, al
mov dword [rsp + 0xf0], ecx
mov dword [rsp + 0xd8], eax
test r10b, r10b
jne 0x1401deb3f
test r12d, r12d
jne 0x1401dd98f
mov rax, qword [rsp + 0x220]
mov r9, qword [rsp + 0x160]
mov r8d, ebx
mov edx, dword [rsp + 0x70]
mov rcx, qword [rax + 0x10]
call fcn.140184740
movzx eax, word [r15 + 0x3e]
test ax, ax
je 0x1401de46f
cmp ebx, eax
jne 0x1401de46f
mov dword [rsp + 0xd0], 0
mov dword [rsp + 0xc8], 0
jmp 0x1401db396
mov eax, dword [rsp + 0x70]
mov dword [rsp + 0x28], ebx
mov r9d, esi
mov edx, 0x40
mov rcx, rbp
mov dword [rsp + 0xc8], r10d
mov dword [rsp + 0x20], eax
call fcn.140182e00
mov r8d, dword [rsp + 0x7c]
mov r9d, esi
mov rdx, r14
mov rax, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x220]
mov qword [rsp + 0x20], rax
call fcn.1401da080
mov r10d, dword [rsp + 0xc8]
jmp 0x1401db32b
mov eax, dword [rsp + 0x70]
xor r8d, r8d
mov edx, 0x4b
mov rcx, rbp
mov dword [rsp + 0x20], 0
lea r9d, [rbx + rax]
call fcn.140182310
mov edx, dword [rsp + 0x70]
lea r8d, [rbx + 1]
mov rcx, qword [rsp + 0x220]
mov r9, qword [rsp + 0x160]
mov dword [rsp + 0xc0], r8d
mov rcx, qword [rcx + 0x10]
call fcn.140184740
movzx eax, word [r15 + 0x3e]
test ax, ax
je 0x1401dd9ef
cmp eax, dword [rsp + 0xc0]
je 0x1401dd91e
mov dword [rsp + 0xd0], 0
mov r10d, 4
mov dword [rsp + 0x20], 0
mov r9d, r12d
mov edx, 0x47
mov rcx, rbp
mov r8d, 1
mov dword [rsp + 0xc8], r10d
call fcn.140182310
mov r10d, dword [rsp + 0xc8]
jmp 0x1401db31e
xor edx, edx
jmp 0x1401daefd
mov rax, qword [rax + 0x20]
mov rax, qword [rax + 0x20]
mov eax, dword [rax]
cmp eax, 1
jle 0x1401dcd9a
cmp dword [rsp + 0x50], 1
sbb r12d, r12d
and r12d, 0xfffffffe
add r12d, 0x38
mov eax, dword [rbp + 0x90]
mov byte [rdi + 0x41], r13b
mov edx, 0x87
mov rcx, rbp
mov r8d, dword [rsp + 0x88]
mov dword [rdi + 0x48], eax
mov rax, qword [rsp + 0x220]
mov dword [rdi + 0x44], r8d
mov eax, dword [rax + 0x38]
lea r13d, [rax + 1]
mov dword [rsp + 0x50], eax
mov rax, qword [rsp + 0x220]
mov r9d, r13d
mov dword [rax + 0x38], r13d
mov dword [rsp + 0x20], 0
call fcn.140182310
mov dword [rsp + 0x20], r13d
mov r9d, esi
mov r8d, ebx
mov edx, r12d
mov rcx, rbp
call fcn.140182310
movsxd rax, dword [rbp + 0x90]
test eax, eax
jle 0x1401dcb28
mov r11, qword [rbp + 0x88]
lea rax, [rax + rax*2]
mov ebx, 0x53
mov qword [rsp + 0x68], 0
mov r15d, 2
lea rax, [r11 + rax*8]
mov word [rax - 0x16], bx
jmp 0x1401db618
mov edx, 0x20
mov dword [rsp + 0x20], 0
mov r8d, dword [rsp + 0x88]
mov rcx, rbp
call fcn.140182310
mov qword [rsp + 0x68], r12
jmp 0x1401dcd24
mov eax, dword [rbp + 0x90]
xor r8d, r8d
mov rcx, rbp
mov edx, 9
mov dword [rsp + 0x20], 0
lea r9d, [rax + 2]
call fcn.140182310
mov edx, dword [rsp + 0x50]
xor eax, eax
mov r9d, esi
mov ecx, dword [rsp + 0xc0]
mov r8d, dword [rsp + 0xb0]
cmp ecx, 1
setg al
lea eax, [rdx + rax*4 + 2]
lea rdx, [0x14044a110]
cdqe
movzx edx, byte [rdx + rax]
mov eax, ecx
sub eax, dword [rsp + 0xec]
mov rcx, rbp
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x70]
mov dword [rsp + 0x20], eax
call fcn.140182e00
jmp 0x1401db396
movzx edi, word [rsp + 0x50]
test dil, 8
je 0x1401daa07
mov rsi, qword [rsp + 0x228]
mov rdx, qword [rsi + 0x28]
cmp byte [rdx + 0x3f], 1
je 0x1401daa07
test ah, 0x20
je 0x1401ddbcb
and edi, 0x10
je 0x1401daa07
mov rdi, qword [rsp + 0x90]
test byte [rdi + 0x63], 8
jne 0x1401daa07
mov r8d, 2
jmp 0x1401da9f9
mov eax, dword [rsp + 0x80]
add eax, 1
mov dword [rsp + 0x68], eax
jmp 0x1401dc289
mov rcx, r14
call fcn.140156bb0
jmp 0x1401da9b3
mov dword [rsp + 0x68], 0
mov dword [rsp + 0x70], 0
mov eax, dword [rbp + 0x90]
mov dword [rsp + 0xec], eax
cmp eax, dword [rbp + 0x94]
jge 0x1401df1af
mov esi, dword [rsp + 0xec]
lea eax, [rsi + 1]
mov dword [rbp + 0x90], eax
movsxd rax, esi
mov esi, dword [rsp + 0xc8]
lea rdx, [rax + rax*2]
mov rax, qword [rbp + 0x88]
lea rax, [rax + rdx*8]
mov dword [rax + 8], esi
mov dword [rax + 0xc], 0
mov qword [rax + 0x10], 0
mov qword [rax], 0x47
cmp dword [r14 + 0x84], 1
jle 0x1401ddd13
mov r15, qword [rsp + 0xf8]
xor ebx, ebx
xor esi, esi
xor r12d, r12d
mov rax, qword [r14 + 0x90]
add rax, rsi
cmp r15, rax
je 0x1401ddcdc
test word [rax + 0x12], 0x8006
jne 0x1401ddcdc
test word [rax + 0x14], 0x3fff
je 0x1401ddcdc
mov rdx, qword [rax]
test byte [rdx + 6], 0x40
jne 0x1401ddcdc
xor r9d, r9d
xor r8d, r8d
mov rcx, r13
call fcn.140177060
mov rcx, qword [rsp + 0x220]
mov rdx, r12
mov r8, rax
call fcn.140189750
mov r12, rax
add ebx, 1
add rsi, 0x38
cmp ebx, dword [r14 + 0x84]
jl 0x1401ddc90
test r12, r12
je 0x1401ddd13
mov rcx, qword [rsp + 0x220]
mov r9, r12
xor r8d, r8d
mov edx, 0x1002c
call fcn.140189530
mov qword [rsp + 0xd0], rax
jmp 0x1401ddd1f
mov qword [rsp + 0xd0], 0
mov rcx, qword [rsp + 0x220]
mov edx, 1
lea r8, str.MULTI_INDEX_OR
call fcn.140199bf0
mov rax, qword [rsp + 0x50]
mov edx, dword [rax + 0x14]
test edx, edx
jle 0x1401df1fe
mov dword [rsp + 0xc0], 0
mov rbx, qword [rsp + 0x220]
xor r15d, r15d
mov qword [rsp + 0xb0], 0
mov qword [rsp + 0x110], rdi
mov qword [rsp + 0xf0], r14
mov r14, rax
mov rdx, qword [r14 + 0x20]
mov dword [rsp + 0x50], r15d
lea esi, [r15 + 1]
lea rax, [r15*8]
sub rax, r15
mov edi, dword [rsp + 0x88]
lea rax, [rdx + rax*8]
cmp edi, dword [rax + 0x1c]
je 0x1401dddaf
test byte [rax + 0x15], 4
je 0x1401ddf8e
mov r12, qword [rax]
test r12, r12
je 0x1401de125
xor r9d, r9d
xor r8d, r8d
mov rdx, r12
mov rcx, r13
call fcn.140177060
cmp byte [r13 + 0x67], 0
mov r12, rax
jne 0x1401ddf7e
mov rax, qword [rsp + 0xd0]
mov rdi, r12
test rax, rax
je 0x1401dddf1
mov qword [rax + 0x10], r12
mov rdi, rax
mov r9d, esi
lea r8, str.INDEX__d
mov edx, 1
mov rcx, rbx
call fcn.140199bf0
xor r9d, r9d
mov r8, rdi
mov rcx, rbx
mov eax, dword [rsp + 0xe0]
mov dword [rsp + 0x30], 0x20
mov qword [rsp + 0x28], 0
mov rdx, qword [rsp + 0xb8]
mov dword [rsp + 0x38], eax
mov qword [rsp + 0x20], 0
call fcn.1401da240
mov qword [rsp + 0xd8], rax
test rax, rax
je 0x1401ddf7e
mov rax, qword [rbx + 0xb0]
test rax, rax
cmove rax, rbx
cmp byte [rax + 0x133], 2
jne 0x1401dde9a
mov rax, qword [rsp + 0xd8]
mov rdx, qword [rsp + 0xb8]
mov rcx, rbx
mov r9, qword [rax + 0x3c0]
movzx r8d, byte [rax + 0x3a0]
mov dword [rsp + 0x20], 0
call fcn.140184ad0
mov rax, qword [rsp + 0xf0]
test byte [rax + 0x3c], 0x10
je 0x1401de135
mov dword [rsp + 0x20], 0
mov r9d, dword [rsp + 0x100]
mov edx, 0xa
mov rcx, rbp
mov r8d, dword [rsp + 0xc8]
call fcn.140182310
mov rdi, qword [rsp + 0xd8]
mov eax, 1
movzx edx, byte [rdi + 0x44]
test dl, 2
cmove eax, dword [rsp + 0xc0]
mov dword [rsp + 0xc0], eax
mov rax, qword [rdi + 0x3c0]
test byte [rax + 0x39], 2
je 0x1401ddf1c
mov rax, qword [rax + 0x20]
test r15, r15
je 0x1401de0e9
cmp qword [rsp + 0xb0], rax
je 0x1401de0e9
mov qword [rsp + 0xb0], 0
and edx, 1
je 0x1401ddf39
mov rax, qword [rsp + 0xf0]
or byte [rax + 0x44], 1
mov rcx, qword [rsp + 0xd8]
call fcn.1401df920
movsxd rax, dword [rbx + 0x140]
test eax, eax
je 0x1401ddf78
mov rcx, qword [rbx + 0x10]
lea rdx, [0x1404f53c0]
mov r8, qword [rcx]
cmp byte [r8 + 0x67], 0
jne 0x1401ddf75
lea rdx, [rax + rax*2]
mov rax, qword [rcx + 0x88]
lea rdx, [rax + rdx*8]
mov eax, dword [rdx + 8]
mov dword [rbx + 0x140], eax
test r12, r12
je 0x1401ddf8e
mov rdx, r12
mov rcx, r13
call fcn.1401690e0
add r15, 1
cmp dword [r14 + 0x14], r15d
jg 0x1401ddd7d
mov rax, qword [rsp + 0x220]
mov rdi, qword [rsp + 0x110]
mov r14, qword [rsp + 0xf0]
movsxd rax, dword [rax + 0x140]
test eax, eax
je 0x1401ddfe3
mov rsi, qword [rsp + 0x220]
mov rdx, qword [rsi + 0x10]
mov r8, qword [rdx]
lea rcx, [0x1404f53c0]
cmp byte [r8 + 0x67], 0
je 0x1401de581
mov eax, dword [rcx + 8]
mov rsi, qword [rsp + 0x220]
mov dword [rsi + 0x140], eax
mov rax, qword [rsp + 0xb0]
mov qword [rdi + 0x50], rax
test rax, rax
je 0x1401de00c
mov eax, dword [rsp + 0xe0]
mov dword [rdi + 8], eax
mov rax, qword [rsp + 0xd0]
test rax, rax
je 0x1401de02c
mov qword [rax + 0x10], 0
mov rdx, rax
mov rcx, r13
call fcn.1401690e0
mov rcx, qword [rbp]
mov edx, dword [rbp + 0x90]
lea rax, [0x1404f53c0]
cmp byte [rcx + 0x67], 0
jne 0x1401de05a
movsxd rax, dword [rsp + 0xec]
lea rcx, [rax + rax*2]
mov rax, qword [rbp + 0x88]
lea rax, [rax + rcx*8]
mov dword [rax + 4], edx
mov edx, dword [rdi + 0xc]
mov rcx, rbp
call fcn.140182bc0
mov rcx, qword [rbp + 0x18]
mov r8d, dword [rsp + 0x10c]
mov eax, dword [rcx + 0x44]
neg r8d
add eax, dword [rcx + 0x48]
js 0x1401dee42
mov edx, dword [rbp + 0x90]
mov rax, qword [rcx + 0x50]
movsxd r8, r8d
mov dword [rax + r8*4], edx
mov eax, dword [rbp + 0x90]
mov dword [rdi + 0x48], eax
cmp byte [r14 + 0x40], 1
jbe 0x1401de0b4
mov rdx, qword [rsp + 0xb8]
mov rcx, r13
call fcn.1401640a0
mov r8d, dword [rsp + 0xc0]
test r8d, r8d
jne 0x1401dcb28
mov rdx, qword [rsp + 0xf8]
mov rcx, rdi
mov r15d, 2
call fcn.1401568c0
mov qword [rsp + 0x68], 0
jmp 0x1401db618
mov rsi, qword [rsp + 0xa8]
mov qword [rsp + 0xb0], rax
mov rdi, rax
test byte [rsi + 0x30], 0x80
je 0x1401ddf28
movzx eax, byte [rax + 0x64]
and eax, 3
cmp al, 2
mov eax, 0
cmovne rax, rdi
mov qword [rsp + 0xb0], rax
jmp 0x1401ddf28
cmp byte [r13 + 0x67], 0
je 0x1401dddda
jmp 0x1401ddf8e
mov eax, dword [r14 + 0x14]
sub eax, 1
cmp eax, r15d
mov eax, 0xffffffff
cmovne eax, dword [rsp + 0x50]
mov dword [rsp + 0x50], eax
mov rax, qword [rsp + 0xa8]
test byte [rax + 0x30], 0x80
jne 0x1401de890
mov dword [rsp + 0x20], 0
mov r9d, dword [rsp + 0x68]
mov edx, 0x87
mov rcx, rbp
mov r8d, dword [rsp + 0x88]
call fcn.140182310
mov r10d, dword [rbp + 0x90]
cmp r10d, dword [rbp + 0x94]
jge 0x1401de6f3
lea eax, [r10 + 1]
mov edi, dword [rsp + 0x70]
mov dword [rbp + 0x90], eax
movsxd rax, r10d
lea rdx, [rax + rax*2]
mov rax, qword [rbp + 0x88]
lea rax, [rax + rdx*8]
mov dword [rax + 4], edi
mov edi, dword [rsp + 0x68]
mov dword [rax + 8], 0
mov dword [rax + 0xc], edi
mov edi, dword [rsp + 0x50]
mov dword [rax], 0xfd2f
mov dword [rax + 0x10], edi
mov dword [rsp + 0x20], 0
mov r9d, dword [rsp + 0x100]
mov edx, 0xa
mov rcx, rbp
mov r8d, dword [rsp + 0xc8]
mov dword [rsp + 0x50], r10d
call fcn.140182310
movsxd r10, dword [rsp + 0x50]
test r10d, r10d
je 0x1401dded1
mov rcx, qword [rbp]
mov edx, dword [rbp + 0x90]
lea rax, [0x1404f53c0]
cmp byte [rcx + 0x67], 0
jne 0x1401de231
mov rax, qword [rbp + 0x88]
lea rcx, [r10 + r10*2]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
jmp 0x1401dded1
sub eax, dword [rsp + 0x7c]
mov rcx, r13
lea esi, [rax - 1]
mov ebx, eax
movsxd rax, esi
lea rdx, [rax + rax*2]
lea rax, [rax + rdx*4]
lea rdx, [rax*8 + 0x70]
call fcn.140173f40
mov qword [rsp + 0xb8], rax
mov r10, rax
test rax, rax
je 0x1401dc3d3
lea eax, [rsi + 1]
movzx ecx, r12b
movzx eax, al
mov dword [r10 + 4], eax
mov dword [r10], eax
lea rax, [rcx + rcx*2]
lea rax, [rcx + rax*4]
mov rcx, qword [rsp + 0x48]
lea rax, [rcx + rax*8 + 8]
movdqu xmm4, xmmword [rax]
movups xmmword [r10 + 8], xmm4
movdqu xmm5, xmmword [rax + 0x10]
movups xmmword [r10 + 0x18], xmm5
movdqu xmm4, xmmword [rax + 0x20]
movups xmmword [r10 + 0x28], xmm4
movdqu xmm5, xmmword [rax + 0x30]
movups xmmword [r10 + 0x38], xmm5
movdqu xmm4, xmmword [rax + 0x40]
movups xmmword [r10 + 0x48], xmm4
movdqu xmm5, xmmword [rax + 0x50]
movups xmmword [r10 + 0x58], xmm5
mov rax, qword [rax + 0x60]
mov qword [r10 + 0x68], rax
mov rax, qword [r14 + 8]
lea rcx, [rax + 8]
test esi, esi
jle 0x1401dce83
lea r8d, [rbx - 2]
lea rax, [r10 + 0x70]
lea r9, [r8 + r8*2]
lea rdx, [rdi + 0xb0]
lea r8, [r8 + r9*4]
lea r10, [r10 + r8*8 + 0xd8]
movzx r8d, byte [rdx]
add rax, 0x68
add rdx, 0x70
lea r9, [r8 + r8*2]
lea r8, [r8 + r9*4]
lea r8, [rcx + r8*8]
movdqu xmm0, xmmword [r8]
movups xmmword [rax - 0x68], xmm0
movdqu xmm1, xmmword [r8 + 0x10]
movups xmmword [rax - 0x58], xmm1
movdqu xmm2, xmmword [r8 + 0x20]
movups xmmword [rax - 0x48], xmm2
movdqu xmm3, xmmword [r8 + 0x30]
movups xmmword [rax - 0x38], xmm3
movdqu xmm4, xmmword [r8 + 0x40]
movups xmmword [rax - 0x28], xmm4
movdqu xmm5, xmmword [r8 + 0x50]
movups xmmword [rax - 0x18], xmm5
mov r8, qword [r8 + 0x60]
mov qword [rax - 8], r8
cmp r10, rax
jne 0x1401de306
jmp 0x1401dce83
movzx edx, word [rsp + 0xc0]
mov rcx, r13
add rdx, rax
call fcn.140175970
movzx r10d, byte [rsp + 0xd8]
mov qword [rsp + 0xf8], rax
jmp 0x1401db12c
mov r9d, ebx
mov r8d, esi
mov rcx, rbp
mov edx, 0xd
mov dword [rsp + 0x20], 0
call fcn.140182310
mov r8d, dword [rdi + 0x34]
mov dword [rsp + 0x20], esi
mov r9d, ebx
mov dword [rsp + 0x28], 1
mov rcx, rbp
mov edx, 0x40
call fcn.140182e00
mov r8d, dword [rsp + 0x7c]
mov r9d, ebx
mov rdx, r14
mov rax, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x220]
mov qword [rsp + 0x20], rax
call fcn.1401da080
jmp 0x1401dd4f8
mov dword [rsp + 0xf0], 1
mov dword [rsp + 0xd8], 1
jmp 0x1401db1a7
mov rbx, qword [rsp + 0x220]
lea ecx, [rax + 1]
mov byte [rbx + 0x1f], cl
mov dword [rbx + rax*4 + 0xe8], edx
jmp 0x1401dcd24
cmp byte [r14 + 0x43], 2
je 0x1401dac3c
mov rcx, qword [rsp + 0x98]
movsxd rax, dword [rcx + 0x90]
test eax, eax
jle 0x1401dac3c
mov r8, qword [rcx + 0x88]
lea rax, [rax + rax*2]
mov r9d, 2
lea rax, [r8 + rax*8]
mov word [rax - 0x16], r9w
jmp 0x1401dac3c
mov r10d, dword [rsp + 0xd8]
mov dword [rsp + 0xc0], ebx
mov dword [rsp + 0xd0], 0
shl r10d, 2
jmp 0x1401db31e
mov rax, qword [rbx + 0xb0]
test rax, rax
cmove rax, rbx
mov r8d, dword [rax + 0x80]
test r8d, r8d
jne 0x1401dd767
mov rax, qword [rsp + 0x68]
mov rcx, qword [rbx]
mov rsi, qword [rax + 0x18]
movsx r8d, word [rsi + 0x36]
add r8d, 1
movsxd r8, r8d
lea r13, [r8*4]
test rcx, rcx
je 0x1401df370
mov rdx, r13
call fcn.140173f40
mov rbx, rax
test rbx, rbx
je 0x1401dd767
mov r8, r13
xor edx, edx
mov rcx, rbx
call sub.msvcrt.dll_memset
movsx eax, word [rsi + 0x36]
mov dword [rbx], eax
mov rax, qword [rsp + 0x68]
movzx eax, word [rax + 0x60]
cmp ax, 1
jbe 0x1401df353
mov rcx, qword [rsp + 0x68]
sub eax, 2
mov r13d, 1
add rax, 2
mov r9, qword [rcx + 8]
mov qword [rsp + 0x70], rax
mov rcx, rsi
mov rsi, rbx
mov rbx, r9
jmp 0x1401de56e
test ax, ax
js 0x1401de55f
movsx edx, ax
mov qword [rsp + 0xa8], rcx
call fcn.14015d2a0
mov rcx, qword [rsp + 0xa8]
movsx rax, ax
mov dword [rsi + rax*4 + 4], r13d
add r13, 1
cmp qword [rsp + 0x70], r13
je 0x1401df350
movzx eax, word [rbx + r13*2 - 2]
test byte [rcx + 0x30], 0x20
jne 0x1401de539
test ax, ax
js 0x1401de55f
jmp 0x1401de556
lea rcx, [rax + rax*2]
mov rax, qword [rdx + 0x88]
lea rcx, [rax + rcx*8]
jmp 0x1401ddfe0
test al, 0x40
je 0x1401daa07
movzx edi, byte [rsp + 0x70]
test byte [rsp + 0x50], 8
mov edx, 8
cmovne edi, edx
and eax, 0xffffffbf
mov dword [rcx + 0x38], eax
mov byte [rsp + 0x70], dil
jmp 0x1401daa07
mov eax, dword [rbp + 0x90]
sub eax, 1
cdqe
lea r9, [rax + rax*2]
mov rax, qword [rbp + 0x88]
lea r9, [rax + r9*8]
jmp 0x1401db228
movsxd rdx, dword [rsp + 0xc8]
lea rcx, [rdx + rdx*2]
mov rdx, qword [rbp + 0x88]
lea rdx, [rdx + rcx*8]
jmp 0x1401dbd6f
mov eax, dword [rbp + 0x90]
sub eax, 1
cdqe
lea r8, [rax + rax*2]
mov rax, qword [rbp + 0x88]
lea r8, [rax + r8*8]
jmp 0x1401db418
and r12d, 2
add r12d, 0x37
jmp 0x1401dcdba
mov rcx, r14
call fcn.14016e0a0
movzx edi, byte [r14 + 0x40]
mov qword [rsp + 0x80], rax
mov dword [rsp + 0xe8], edi
mov eax, edi
jmp 0x1401dd471
lea rax, [rbx + rbx*2]
xor r8d, r8d
lea rax, [rbx + rax*4]
mov rax, qword [r15 + rax*8 + 0x58]
test rax, rax
je 0x1401de667
add r8d, 1
shr rax, 1
jne 0x1401de65e
mov rcx, qword [rsp + 0x98]
mov r9d, 0xfffffffd
movsxd r8, r8d
mov edx, 0xffffffff
mov byte [rsp + 0x50], r10b
call fcn.140175fe0
mov eax, dword [rbp + 0x38]
movzx r10d, byte [rsp + 0x50]
jmp 0x1401dab69
mov rax, qword [rsp + 0x220]
xor r8d, r8d
mov edx, 0x4b
mov rcx, rbp
mov rsi, qword [rsp + 0x220]
mov eax, dword [rax + 0x38]
mov dword [rsp + 0x68], eax
add eax, 1
mov dword [rsi + 0x38], eax
mov r9d, eax
mov dword [rsp + 0x20], 0
mov dword [rsp + 0x70], eax
call fcn.140182310
mov rax, qword [rsp + 0x220]
mov rsi, qword [rsp + 0x220]
mov eax, dword [rax + 0x38]
add eax, 1
mov dword [rsp + 0x68], eax
mov dword [rsi + 0x38], eax
jmp 0x1401ddc18
mov eax, dword [rsp + 0x50]
mov r8d, dword [rsp + 0x70]
xor r9d, r9d
mov rcx, rbp
mov edx, 0x2f
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x68]
mov dword [rsp + 0x20], eax
call fcn.140182d50
mov r10d, eax
jmp 0x1401de1d3
mov eax, dword [rsp + 0x70]
xor r8d, r8d
mov edx, 0x4b
mov rcx, rbp
mov dword [rsp + 0x20], 0
lea r9d, [rbx + rax]
call fcn.140182310
mov dword [rsp + 0xf0], 0
jmp 0x1401dd6a5
mov rcx, qword [rsp + 0x220]
lea edx, [rax + 1]
mov byte [rcx + 0x1f], dl
mov dword [rcx + rax*4 + 0xe8], ebx
jmp 0x1401dd4ea
movzx ecx, byte [rax]
lea edx, [rcx + 0x59]
and edx, 0xfd
jne 0x1401dbcf0
mov rdx, qword [r13 + 8]
movzx ecx, word [rdx + r15]
cmp word [rax + 0x30], cx
jne 0x1401dbcf0
cmp ebp, dword [rax + 0x2c]
jne 0x1401dbcf0
mov rcx, qword [rsp + 0x220]
mov rdx, r10
mov qword [rsp + 0x58], r9
mov qword [rsp + 0x48], r8
call fcn.14018f070
mov r8, qword [rsp + 0x48]
mov r9, qword [rsp + 0x58]
test rax, rax
je 0x1401deb2b
mov r10, qword [rax]
xor edx, edx
jmp 0x1401de7f2
lea r11, [0x140450f00]
movzx ecx, byte [r11 + rcx]
cmp byte [r11 + rax], cl
jne 0x1401dbcf0
add rdx, 1
movzx eax, byte [r10 + rdx]
movzx ecx, byte [rdi + rdx]
cmp eax, ecx
jne 0x1401de7d8
test eax, eax
jne 0x1401de7ee
mov rax, r9
mov r9, r15
mov r15d, r12d
mov rdi, r8
mov r12, rax
mov rax, qword [r13 + 8]
movsx rax, word [rax + r9]
movsx edx, ax
test edx, edx
jns 0x1401de86b
cmp edx, 0xffffffff
jne 0x1401dbcfb
jmp 0x1401dbc38
movzx edi, byte [rax]
lea edx, [rdi + 0x59]
and edx, 0xfd
jne 0x1401dbbcd
cmp ebp, dword [rax + 0x2c]
jne 0x1401dbbcd
cmp word [rax + 0x30], 0
jns 0x1401dbbcd
jmp 0x1401dbd16
mov r9d, 0xffffffff
jmp 0x1401dd277
mov rdx, qword [r13 + 0x18]
lea rax, [rax + rax*2]
mov rcx, qword [rdx + 8]
lea rax, [rcx + rax*8]
test byte [rax + 8], 0xf
jne 0x1401dbc38
jmp 0x1401dbcfb
mov rax, qword [rsp + 0xa8]
mov r10, qword [rax + 0x10]
test r10, r10
jne 0x1401de8bd
jmp 0x1401df415
mov r10, qword [r10 + 0x28]
test r10, r10
je 0x140253f49
movzx eax, byte [r10 + 0x64]
and eax, 3
cmp al, 2
jne 0x1401de8b0
movzx edi, word [r10 + 0x5e]
mov rcx, rbx
xor r11d, r11d
mov edx, edi
call fcn.14015d1c0
lea ecx, [rdi + rax]
mov esi, eax
mov dword [rsp + 0x108], ecx
test edi, edi
je 0x1401de95a
mov dword [rsp + 0x11c], eax
mov rsi, r10
mov dword [rsp + 0x118], edi
mov edi, eax
mov qword [rsp + 0x220], rbx
mov rbx, rbp
mov rbp, r11
mov rdx, qword [rsi + 8]
mov r8d, dword [rsp + 0x88]
mov rcx, rbx
movsx r9d, word [rdx + rbp]
mov dword [rsp + 0x20], edi
add rbp, 2
add edi, 1
mov rdx, qword [rsp + 0xa8]
call fcn.1401e85d0
cmp dword [rsp + 0x108], edi
jne 0x1401de90c
mov rbp, rbx
mov edi, dword [rsp + 0x118]
mov esi, dword [rsp + 0x11c]
mov rbx, qword [rsp + 0x220]
mov eax, dword [rsp + 0x50]
test eax, eax
jne 0x1401defe8
mov eax, dword [rsp + 0x68]
mov r9d, edi
mov r8d, esi
mov edx, 0x61
mov rcx, rbp
mov dword [rsp + 0x20], eax
call fcn.140182310
mov dword [rsp + 0x28], edi
mov r9d, dword [rsp + 0x68]
mov rcx, rbp
mov dword [rsp + 0x20], esi
mov r8d, dword [rsp + 0x70]
mov edx, 0x8a
call fcn.140182e00
xor r10d, r10d
cmp edi, 1
je 0x1401defc2
cmp edi, dword [rbx + 0x28]
jle 0x1401de1d3
mov dword [rbx + 0x28], edi
mov dword [rbx + 0x2c], esi
jmp 0x1401de1d3
mov rax, qword [rdx + 0x20]
mov rax, qword [rax + 0x20]
mov eax, dword [rax]
cmp eax, 1
jle 0x1401dccba
mov rax, qword [rsp + 0x220]
movzx eax, byte [rax + 0x1f]
test al, al
je 0x1401dea7c
mov rcx, qword [rsp + 0x220]
sub eax, 1
mov byte [rcx + 0x1f], al
movzx eax, al
mov r13d, dword [rcx + rax*4 + 0xe8]
mov rcx, qword [rsp + 0x220]
mov r9d, 1
mov r8d, r13d
mov dword [rsp + 0x120], r13d
call fcn.1401e9540
movzx eax, byte [rbx]
sub eax, 0x37
and eax, 2
or eax, 1
movzx edx, byte [rsp + rax + 0x160]
jmp 0x1401dcced
mov rcx, r10
call fcn.140155c90
test eax, eax
je 0x1401db436
mov dword [rsp + 0x20], 0
mov r9d, esi
mov edx, 0x32
mov rcx, rbp
mov r8d, dword [rsp + 0xc0]
mov qword [rsp + 0xd8], r10
call fcn.140182310
mov r10, qword [rsp + 0xd8]
jmp 0x1401db436
mov rax, qword [rsp + 0x220]
mov eax, dword [rax + 0x38]
lea r13d, [rax + 1]
mov dword [rsp + 0x70], eax
mov rax, qword [rsp + 0x220]
mov dword [rax + 0x38], r13d
jmp 0x1401dea00
mov ecx, dword [rdx + 0xc]
mov r11d, 0x87
jmp 0x1401dd00a
mov rcx, r10
mov dword [rsp + 0xe0], r8d
call fcn.140155c90
mov r8d, dword [rsp + 0xe0]
test eax, eax
je 0x1401db246
mov dword [rsp + 0x20], 0
mov r9d, esi
mov edx, 0x32
mov rcx, rbp
mov qword [rsp + 0xe0], r10
call fcn.140182310
mov r10, qword [rsp + 0xe0]
jmp 0x1401db246
xor r9d, r9d
mov edx, 0x88
mov rcx, rbp
mov byte [rsp + 0x70], r10b
mov dword [rsp + 0x20], 0
mov r8d, dword [rsp + 0xb0]
call fcn.140182310
movzx r10d, byte [rsp + 0x70]
jmp 0x1401db0ca
mov rax, qword [rsp + 0x220]
mov rax, qword [rax]
mov rax, qword [rax + 0x10]
jmp 0x1401de7cb
mov eax, dword [rsp + 0x70]
xor r8d, r8d
mov edx, 0x4b
mov rcx, rbp
mov dword [rsp + 0x20], 0
lea r9d, [rbx + rax]
call fcn.140182310
lea eax, [rbx + 1]
mov r8d, ebx
mov dword [rsp + 0xec], 0
mov dword [rsp + 0xc0], eax
mov dword [rsp + 0xd0], 1
mov dword [rsp + 0xd8], 1
jmp 0x1401db2d5
mov rax, qword [rdx + 0x20]
mov eax, dword [rax]
jmp 0x1401de9ca
lea r9d, [rax + 3]
mov r8d, r12d
mov edx, 0x11
mov rcx, rbp
mov dword [rsp + 0x20], 0
lea r13, [0x14044a109]
mov dword [rsp + 0xb8], r11d
call fcn.140182310
mov eax, dword [rsp + 0xc0]
mov r9d, esi
mov rcx, rbp
movsxd r11, dword [rsp + 0xb8]
mov r8d, dword [rsp + 0xb0]
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x70]
movzx edx, byte [r13 + r11]
mov dword [rsp + 0x20], eax
call fcn.140182e00
mov r9d, dword [rsp + 0xc8]
test r9d, r9d
jne 0x1401dbd54
mov eax, dword [rbp + 0x90]
jmp 0x1401dbd8f
mov r10, qword [rsp + 0x68]
movzx edx, word [rsp + 0xc0]
mov rcx, qword [r10 + 8]
movsx rcx, word [rcx + rdx*2]
mov rdx, rcx
test ecx, ecx
js 0x1401def86
mov rcx, qword [r10 + 0x18]
lea rdx, [rdx + rdx*2]
mov r10, qword [rcx + 8]
lea rdx, [r10 + rdx*8]
test byte [rdx + 8], 0xf
sete r10b
jmp 0x1401db02e
mov rax, qword [rsp + 0x220]
mov edx, 0x47
mov rcx, rbp
mov r8d, 1
mov eax, dword [rax + 0x38]
lea r9d, [rax + 1]
mov dword [rsp + 0x70], eax
mov rax, qword [rsp + 0x220]
mov dword [rax + 0x38], r9d
mov dword [rdi + 0x2c], r9d
mov dword [rsp + 0x20], 0
call fcn.140182310
mov eax, dword [rbp + 0x90]
mov rcx, qword [rsp + 0x68]
mov dword [rdi + 0x30], eax
mov eax, dword [rdi + 0x2c]
mov rcx, qword [rcx + 0x38]
lea edx, [rax + rax]
movzx eax, word [rsp + 0xc0]
mov dword [rdi + 0x2c], edx
cmp byte [rcx + rax], 1
sete al
movzx eax, al
xor eax, dword [rsp + 0x50]
or eax, edx
mov dword [rdi + 0x2c], eax
mov eax, dword [r15 + 0x38]
jmp 0x1401db01c
mov rax, qword [r10 + 0x20]
mov rax, qword [rax + 0x20]
mov eax, dword [rax]
cmp eax, 1
jle 0x1401db4ba
mov dword [rsp + 0xf0], 1
jmp 0x1401db4ca
mov rax, qword [r10 + 0x20]
mov eax, dword [rax]
jmp 0x1401decdd
mov rax, qword [rsp + 0x98]
mov rdi, qword [rsp + 0x90]
mov eax, dword [rax + 0x90]
mov dword [r14 + 0x4c], eax
cmp byte [rdi + 0x67], 0
jne 0x1401da6ba
jmp 0x1401dc402
mov rax, qword [r10 + 0x20]
mov rax, qword [rax + 0x20]
mov eax, dword [rax]
cmp eax, 1
jle 0x1401db2aa
mov byte [rsp + 0xe0], 1
mov r8d, dword [rsp + 0xc0]
mov dword [rsp + 0xd0], 0
mov dword [rsp + 0xec], 1
jmp 0x1401db2d5
mov rax, qword [r10 + 0x20]
mov eax, dword [rax]
jmp 0x1401ded31
cmp qword [rax + 0x2f8], 0
jne 0x1401dc690
sub dword [rdx], 1
jne 0x1401dc690
mov rcx, qword [rdx + 0x10]
call fcn.140164b10
jmp 0x1401dc690
mov r9d, r12d
xor r8d, r8d
mov edx, 0x47
mov rcx, rbp
mov dword [rsp + 0x20], 0
call fcn.140182310
jmp 0x1401dd80e
movsxd r13, dword [rsp + 0x50]
lea rax, [0x14044a107]
movzx eax, byte [rax + r13]
mov byte [rdi + 0x41], al
mov eax, dword [rsp + 0x88]
mov dword [rdi + 0x44], eax
lea rax, str._____
movzx ecx, byte [rax + r13]
movsxd rax, dword [rbp + 0x90]
cmp eax, dword [rbp + 0x94]
jge 0x1401df1db
lea edx, [rax + 1]
lea r8, [rax + rax*2]
mov rax, qword [rbp + 0x88]
mov esi, dword [rsp + 0x88]
mov dword [rbp + 0x90], edx
lea rax, [rax + r8*8]
mov byte [rax], cl
xor ecx, ecx
mov word [rax + 2], cx
mov dword [rax + 4], esi
mov dword [rax + 8], r9d
mov dword [rax + 0xc], 0
mov qword [rax + 0x10], 0
mov byte [rax + 1], 0
mov dword [rdi + 0x48], edx
mov byte [rdi + 0x43], 1
jmp 0x1401dcb28
mov rdx, rbp
call fcn.140185120
jmp 0x1401de094
mov rbp, qword [rsi + 0x10]
test rbp, rbp
je 0x1401df302
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], r14
jmp 0x1401dee75
mov rbp, qword [rbp + 0x28]
test rbp, rbp
je 0x1401df2f8
cmp byte [rbp + 0x62], 0
je 0x1401dee68
cmp qword [rbp + 0x48], 0
jne 0x1401dee68
movzx edx, word [rbp + 0x5e]
cmp dx, 3
ja 0x1401dee68
movzx eax, byte [rbp + 0x64]
mov ecx, eax
and ecx, 8
cmp cl, 1
sbb r14d, r14d
and r14d, 0xffffff80
add r14d, 0x82
test dx, dx
je 0x1401df2e7
xor ebx, ebx
mov qword [rsp + 0x28], rbp
mov r8d, dword [rsp + 0x58]
mov r9d, ebx
mov rcx, rdi
mov dword [rsp + 0x20], r14d
mov rdx, qword [rsp + 0x68]
mov esi, ebx
mov dword [rsp + 0x80], ebx
call fcn.140195240
test rax, rax
jne 0x1401deef9
jmp 0x1401def80
mov rcx, rdi
call fcn.140194e00
test rax, rax
je 0x1401def80
cmp qword [rax + 0x28], 0
jne 0x1401deee8
mov rdx, qword [r12 + 0x48]
mov esi, dword [rsp + 0x80]
mov qword [rdx + rbx*8], rax
movzx eax, word [rbp + 0x5e]
add rbx, 1
add esi, 1
cmp eax, ebx
jg 0x1401deeb1
cmp esi, eax
jne 0x1401dee68
mov rbx, qword [rsp + 0x40]
mov r14, qword [rsp + 0x48]
movzx eax, byte [rbp + 0x64]
mov dword [r12 + 0x38], 0x1201
test al, 0x20
jne 0x1401df320
mov rax, qword [r15 + 0x58]
and rax, qword [rbp + 0x68]
je 0x1401df320
mov r9d, 0x27
mov word [r12 + 0x3c], si
mov eax, 0x1201
mov word [r12 + 0x18], si
mov qword [r12 + 0x20], rbp
mov word [r12 + 0x14], r9w
jmp 0x1401dd400
movzx eax, word [rbp + 0x5e]
jmp 0x1401def1f
cmp ecx, 0xfffffffe
sete r10b
jmp 0x1401db02e
mov r12d, 0xffff8000
jmp 0x1401daaae
mov dword [rsp + 0xf0], 1
movzx eax, al
mov dword [rsp + 0xd8], eax
mov dword [rsp + 0xec], 1
jmp 0x1401dd8d6
test esi, esi
je 0x1401de1d3
movzx eax, byte [rbx + 0x1f]
cmp al, 7
ja 0x1401de1d3
lea edx, [rax + 1]
mov byte [rbx + 0x1f], dl
mov dword [rbx + rax*4 + 0xe8], esi
jmp 0x1401de1d3
mov r10d, dword [rbp + 0x90]
cmp r10d, dword [rbp + 0x94]
jge 0x1401df380
lea eax, [r10 + 1]
mov ecx, dword [rsp + 0x70]
mov dword [rbp + 0x90], eax
movsxd rax, r10d
lea rdx, [rax + rax*2]
mov rax, qword [rbp + 0x88]
lea rax, [rax + rdx*8]
mov dword [rax + 4], ecx
mov dword [rax + 8], 0
mov dword [rax + 0xc], esi
mov dword [rax + 0x10], edi
mov dword [rax], 0xfd1d
cmp dword [rsp + 0x50], 0xffffffff
je 0x1401de9a3
mov eax, dword [rsp + 0x68]
mov r9d, edi
mov r8d, esi
mov edx, 0x61
mov rcx, rbp
mov dword [rsp + 0x50], r10d
mov dword [rsp + 0x20], eax
call fcn.140182310
mov dword [rsp + 0x28], edi
mov r9d, dword [rsp + 0x68]
mov rcx, rbp
mov dword [rsp + 0x20], esi
mov r8d, dword [rsp + 0x70]
mov edx, 0x8a
call fcn.140182e00
movsxd rax, dword [rbp + 0x90]
mov r10d, dword [rsp + 0x50]
test eax, eax
jle 0x1401de9a3
mov r9, qword [rbp + 0x88]
lea rax, [rax + rax*2]
mov r11d, 0x10
lea rax, [r9 + rax*8]
mov word [rax - 0x16], r11w
jmp 0x1401de9a3
test ah, 2
jne 0x1401daba4
jmp 0x1401dac41
mov r12, qword [rsp + 0x68]
mov edx, 0x24
jmp 0x1401ddb03
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x10]
movsx eax, word [rax]
add eax, 9
movsxd r8, eax
sar eax, 0x1f
imul r8, r8, 0x66666667
sar r8, 0x22
sub r8d, eax
mov eax, dword [rbp + 0x90]
mov dword [rsp + 0xc8], eax
cmp eax, dword [rbp + 0x94]
jge 0x1401df3a5
mov ecx, dword [rsp + 0xc8]
lea eax, [rcx + 1]
mov dword [rbp + 0x90], eax
movsxd rax, ecx
lea rdx, [rax + rax*2]
mov rax, qword [rbp + 0x88]
lea rax, [rax + rdx*8]
mov dword [rax + 4], r8d
mov qword [rax + 8], 0
mov qword [rax + 0x10], 0
mov dword [rax], 0x7c
cmp qword [rsp + 0xb8], 0
jne 0x1401df23d
cmp byte [rsp + 0xe0], 0
jne 0x1401df23d
mov eax, dword [rsp + 0xc0]
mov r9d, esi
mov edx, 0x17
mov rcx, rbp
mov r8d, dword [rsp + 0xb0]
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x70]
mov dword [rsp + 0x20], eax
call fcn.140182e00
test r12d, r12d
jne 0x1401ddb25
cmp byte [rsp + 0xa8], 0
jne 0x1401de720
mov dword [rsp + 0xc0], ebx
jmp 0x1401db4ca
mov dword [rsp + 0x20], 0
xor r8d, r8d
mov edx, 0x47
mov rcx, rbp
mov r9d, dword [rsp + 0xc8]
call fcn.140182280
mov dword [rsp + 0xec], eax
jmp 0x1401ddc73
mov dword [rsp + 0x20], 0
mov r8d, dword [rsp + 0x88]
movzx edx, cl
mov rcx, rbp
call fcn.140182280
lea edx, [rax + 1]
jmp 0x1401dee36
mov rax, qword [rsp + 0x220]
movsxd rax, dword [rax + 0x140]
test eax, eax
je 0x1401df3d9
mov rsi, qword [rsp + 0x220]
mov dword [rsp + 0xc0], 0
mov qword [rsp + 0xb0], 0
mov rdx, qword [rsi + 0x10]
jmp 0x1401ddfcb
mov edx, dword [rbp + 0x90]
test edx, edx
jle 0x1401df262
mov r11, qword [rbp + 0x88]
movsxd rax, edx
mov ecx, 1
lea rax, [rax + rax*2]
lea rax, [r11 + rax*8]
mov word [rax - 0x16], cx
mov rcx, qword [rbp]
add edx, 1
lea rax, [0x1404f53c0]
cmp byte [rcx + 0x67], 0
jne 0x1401df28d
movsxd rax, dword [rsp + 0xc8]
lea rcx, [rax + rax*2]
mov rax, qword [rbp + 0x88]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
jmp 0x1401db359
mov rdx, qword [rsi + 0x48]
lea rbx, [rsi + 0x58]
mov dword [rsp + 0x7c], eax
mov r14, qword [rsp + 0x80]
mov r13, qword [rsp + 0x220]
cmp rdx, rbx
jne 0x1401da8b1
mov rcx, qword [rsp + 0x58]
mov rdx, rsi
call fcn.1401641b0
mov word [rsi + 0x3c], 0
mov dword [rsi + 0x38], 0
jmp 0x1401da6ba
xor eax, eax
jmp 0x1401dd2a3
mov rbx, qword [rsp + 0x40]
mov r14, qword [rsp + 0x48]
xor esi, esi
jmp 0x1401def35
mov rbx, qword [rsp + 0x40]
mov r14, qword [rsp + 0x48]
mov eax, dword [r12 + 0x38]
test eax, eax
jne 0x1401dd400
mov rbx, qword [rsp + 0x130]
mov r15, qword [rbx + 8]
jmp 0x1401da736
mov r10d, 0x27
mov qword [r12 + 0x20], rbp
mov eax, 0x1241
mov dword [r12 + 0x38], 0x1241
mov word [r12 + 0x3c], si
mov word [r12 + 0x18], si
mov word [r12 + 0x14], r10w
jmp 0x1401dd400
mov rbx, rsi
mov r8, rbx
mov r9d, 0xfffffff2
mov edx, 0xffffffff
xor ebx, ebx
mov rcx, r12
call fcn.140175fe0
jmp 0x1401db5a2
mov rcx, r13
call fcn.14015e070
mov rbx, rax
jmp 0x1401de4e4
mov dword [rsp + 0x28], edi
mov r8d, dword [rsp + 0x70]
xor r9d, r9d
mov rcx, rbp
mov dword [rsp + 0x20], esi
mov edx, 0x1d
call fcn.140182d50
mov r10d, eax
jmp 0x1401df032
mov dword [rsp + 0x20], 0
xor r9d, r9d
mov edx, 0x7c
mov rcx, rbp
mov dword [rsp + 0xd8], r10d
call fcn.140182280
mov r10d, dword [rsp + 0xd8]
mov dword [rsp + 0xc8], eax
jmp 0x1401df144
mov rax, qword [rsp + 0x220]
mov dword [rsp + 0xc0], 0
mov dword [rax + 0x140], 0
mov qword [rdi + 0x50], 0
jmp 0x1401de00c
jmp 0x140253f30
mov r13, qword [rsp + 0x220]
jmp 0x140253f3a
jmp 0x140253f49
mov r13, qword [rsp + 0x220]
jmp 0x140253f3a
jmp 0x140253f53
jmp 0x140253f5d
movzx eax, word [0x5e]
ud2
add dword [r13 + 0x34], 1
movzx eax, word [0x5e]
ud2
movzx eax, word [0x5e]
ud2
movzx eax, word [0x5e]
ud2
movzx eax, word [0x5e]
ud2