Function at 0x140344c70
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, 0x228
movaps xmmword [rsp + 0x1e0], xmm6
movaps xmmword [rsp + 0x1f0], xmm7
movaps xmmword [rsp + 0x200], xmm8
movaps xmmword [rsp + 0x210], xmm9
mov rax, qword [rcx + 0x10]
mov r12d, dword [rsp + 0x2a0]
mov r13, qword [rsp + 0x298]
mov qword [rsp + 0xa8], rax
mov rax, qword [rcx]
mov rbx, r8
mov r14, r9
lea rdi, [rsp + 0x130]
mov qword [rsp + 0x270], rcx
mov ecx, 7
mov qword [rsp + 0x68], rdi
mov qword [rsp + 0x278], rdx
mov qword [rsp + 0x98], rax
xor eax, eax
test r9, r9
rep stosq qword [rdi], rax
mov word [rsp + 0xb2], r12w
je 0x140344d0f
cmp dword [r9], 0x40
cmovge r14, rax
mov rax, qword [rsp + 0x278]
mov eax, dword [rax]
cmp eax, 0x40
mov dword [rsp + 0xa4], eax
jg 0x140348453
test r12b, 0x20
je 0x140345192
mov edx, 0x440
mov esi, 0x3d0
mov dword [rsp + 0xa4], 1
mov rdi, qword [rsp + 0x98]
mov rcx, rdi
call fcn.1402e35d0
mov qword [rsp + 0x70], rax
movzx eax, byte [rdi + 0x67]
test al, al
mov byte [rsp + 0x78], al
jne 0x140345f1a
mov r10, qword [rsp + 0x70]
mov ecx, 5
movq xmm0, qword [rsp + 0x270]
mov r11d, dword [rsp + 0xa4]
mov rax, qword [rsp + 0x270]
movhps xmm0, qword [rsp + 0x278]
movups xmmword [r10], xmm0
movq xmm0, r14
mov rdx, qword [rsp + 0x270]
movhps xmm0, qword [rsp + 0x290]
mov qword [r10 + 0x28], 0xffffffffffffffff
movups xmmword [r10 + 0x10], xmm0
lea r8d, [r11 + 1]
mov byte [r10 + 0x40], r11b
mov eax, dword [rax + 0x44]
movsxd r8, r8d
imul r8, r8, 0x70
mov dword [rsp + 0x48], eax
sub eax, 1
mov dword [rdx + 0x44], eax
movd xmm4, eax
movzx eax, word [rsp + 0x2a8]
pshufd xmm0, xmm4, 0xe0
movq qword [r10 + 0x30], xmm0
mov word [r10 + 0x3c], r12w
mov word [r10 + 0x3e], ax
mov eax, dword [rdx + 0xd0]
lea rdx, [r10 + 0x41]
mov rdi, rdx
mov qword [r10 + 0x20], r13
xor edx, edx
mov dword [r10 + 0x38], eax
xor eax, eax
rep stosq qword [rdi], rax
lea rcx, [r10 + 0x360]
xor eax, eax
mov qword [rsp + 0x80], rcx
mov dword [rdi], 0
mov word [rdi + 4], ax
mov byte [rdi + 6], 0
mov rdi, r10
call sub.msvcrt.dll_memset
add rsi, rdi
xor edx, edx
movq xmm0, rdi
mov rax, qword [0x140475a90]
mov ecx, 3
test rbx, rbx
mov qword [rsp + 0x140], rsi
mov qword [rdi + 0x25c], rax
lea rax, [rdi + 0x70]
mov qword [rsp + 0x60], rax
lea rax, [rsi + 0x58]
mov qword [rsi + 0x48], rax
mov rax, qword [0x140475a88]
movhps xmm0, qword [rsp + 0x60]
mov word [rsi + 0x3c], dx
mov word [rsi + 0x40], cx
mov dword [rsi + 0x38], 0
mov rsi, rbx
mov qword [rdi + 0x84], rax
lea rax, [rdi + 0x98]
movaps xmmword [rsp + 0x130], xmm0
mov qword [rdi + 0x70], rdi
mov byte [rdi + 0x81], 0
mov qword [rdi + 0x78], 0
mov dword [rdi + 0x8c], 0
mov qword [rdi + 0x90], rax
je 0x140344efe
nop dword [rax]
mov eax, dword [rsi + 4]
test eax, 0x82000
je 0x1403451cb
test eax, 0x80000
je 0x1403451b0
mov rax, qword [rsi + 0x20]
mov rsi, qword [rax + 8]
test rsi, rsi
jne 0x140344ed8
mov rax, qword [rsp + 0x70]
mov byte [rax + 0x80], 0x2c
mov eax, dword [rsp + 0xa4]
test eax, eax
je 0x1403451ff
mov rax, qword [rsp + 0x278]
mov dword [rsp + 0xa0], r12d
xor r15d, r15d
mov r12, qword [rsp + 0x270]
mov dword [rsp + 0x58], r15d
mov qword [rsp + 0x288], r14
mov qword [rsp + 0x298], r13
lea rbx, [rax + 0x28]
nop dword [rax]
mov rsi, qword [rsp + 0x70]
mov edx, dword [rbx + 0x24]
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 + 0x58]
mov rsi, qword [rsp + 0x278]
imul rax, rax, 0x68
test byte [rsi + rax + 0x48], 4
je 0x140345158
mov r14, qword [rbx + 0x38]
mov rsi, qword [rbx]
test r14, r14
je 0x140345158
mov eax, dword [r14]
xor ebp, ebp
xor edi, edi
test eax, eax
jle 0x140345158
nop word [rax + rax]
movsx edx, word [rsi + 0x36]
cmp edx, edi
jle 0x140345f00
movsxd rax, edi
mov r13d, edi
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 8]
lea rax, [rax + rcx*8 + 0x12]
jmp 0x140344fe9
add r13d, 1
add rax, 0x18
cmp edx, r13d
je 0x140345f00
test byte [rax], 2
je 0x140344fd8
mov rcx, qword [r12]
mov edx, 0x48
call fcn.1402e35d0
test rax, rax
mov r15, rax
je 0x140345158
lea rdx, [rax + 1]
mov ecx, 8
xor eax, eax
mov rdi, rdx
rep stosq qword [rdi], rax
xor eax, eax
movsx ecx, r13w
mov word [rdi + 4], ax
mov eax, 0xffffffff
mov dword [rdi], 0
mov byte [rdi + 6], 0
lea edi, [r13 + 1]
mov byte [r15], 0xa7
test byte [rsi + 0x30], 0x60
mov word [r15 + 0x32], ax
mov eax, dword [rbx + 0x24]
mov dword [r15 + 0x28], 1
mov word [r15 + 0x30], r13w
mov qword [r15 + 0x40], rsi
mov dword [r15 + 0x2c], eax
je 0x140345ee0
movsx r13, r13w
lea rax, [r13 + r13*2]
mov r13, qword [rsi + 8]
lea rax, [r13 + rax*8]
test byte [rax + 0x12], 0x60
je 0x140345ee0
movzx ecx, word [rsi + 0x36]
mov eax, 1
mov rdx, 0xffffffffffffffff
shl rax, cl
sub rax, 1
cmp cx, 0x40
cmovge rax, rdx
or qword [rbx + 0x30], rax
mov rax, rbp
shl rax, 5
mov r8, qword [r14 + rax + 8]
test r8, r8
je 0x1403450c0
mov rcx, qword [r12]
mov rdx, r8
call fcn.140249650
mov r8, rax
xor r9d, r9d
mov edx, 0xae
mov rcx, r12
call fcn.140313fb0
mov r8, r15
mov edx, 0x35
mov rcx, r12
mov r9, rax
xor r15d, r15d
call fcn.140313fb0
test byte [rbx + 0x1c], 0x58
mov rdx, rax
sete r15b
add r15d, 1
test rax, rax
je 0x140345136
mov r11d, dword [rbx + 0x24]
mov qword [rsp + 0x48], rax
mov r13, rax
or dword [r13 + 4], r15d
mov dword [r13 + 0x34], r11d
cmp byte [r13], 0xac
je 0x140345e98
mov rcx, qword [r13 + 0x10]
mov r8d, r15d
mov edx, r11d
call fcn.140327a40
mov r13, qword [r13 + 0x18]
test r13, r13
jne 0x140345106
mov rdx, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x60]
mov r8d, 1
add rbp, 1
call fcn.14037c6a0
cmp dword [r14], ebp
jg 0x140344fb0
nop dword [rax + rax]
mov rsi, qword [rsp + 0x278]
add rbx, 0x68
add dword [rsp + 0x58], 1
mov eax, dword [rsp + 0x58]
cmp dword [rsi], eax
jg 0x140344f50
mov r14, qword [rsp + 0x288]
mov r13, qword [rsp + 0x298]
mov r12d, dword [rsp + 0xa0]
jmp 0x140345232
sub eax, 1
imul eax, eax, 0x70
add eax, 0x3d0
movsxd rsi, eax
lea rdx, [rsi + 0x70]
jmp 0x140344d48
mov rsi, qword [rsi + 0x10]
test rsi, rsi
je 0x140344efe
mov eax, dword [rsi + 4]
test eax, 0x82000
jne 0x140344ee6
mov rax, qword [rsp + 0x70]
mov byte [rax + 0x80], 0x2c
cmp byte [rsi], 0x2c
je 0x140347d48
mov rcx, qword [rsp + 0x60]
xor r8d, r8d
mov rdx, rbx
call fcn.14037c6a0
mov eax, dword [rsp + 0xa4]
test eax, eax
jne 0x140344f19
test r14, r14
je 0x14034520f
mov eax, dword [r14]
mov rsi, qword [rsp + 0x70]
mov byte [rsi + 0x41], al
test r12d, 0x100
jne 0x140345f53
mov rcx, qword [rsp + 0x270]
lea r8, str.SCAN_CONSTANT_ROW
xor edx, edx
call fcn.14033d7b0
mov rax, qword [rsp + 0x70]
mov eax, dword [rax + 0x84]
mov ebx, eax
mov dword [rsp + 0x48], eax
sub ebx, 1
js 0x14034526b
mov rsi, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x278]
nop dword [rax]
mov r8d, ebx
mov rdx, rsi
mov rcx, rdi
call fcn.140246000
sub ebx, 1
jae 0x140345258
test r13, r13
je 0x140345284
cmp qword [r13 + 0x60], 0
je 0x140345284
mov rcx, qword [rsp + 0x60]
mov rdx, r13
call fcn.140344b60
mov rax, qword [rsp + 0x270]
mov ebx, dword [rax + 0x30]
test ebx, ebx
jne 0x140345e07
mov rax, qword [rsp + 0x138]
mov edx, dword [rax + 0x1c]
test edx, edx
jle 0x140345368
mov r11d, dword [rsp + 0xa4]
test r11d, r11d
je 0x140345bd9
mov r15, qword [rsp + 0x70]
lea rsi, [0x14024a4c0]
xor ebp, ebp
lea rcx, [0x140327a20]
movq xmm6, rsi
xor esi, esi
lea r13, [rsp + 0x170]
movq xmm5, rcx
punpcklqdq xmm6, xmm5
nop dword [rax + rax]
imul rbx, rsi, 0x38
add rbx, qword [rax + 0x20]
test byte [rbx + 0x12], 2
jne 0x140345bbf
cmp qword [rbx + 0x30], 0
jne 0x140345bbf
mov rdx, qword [rbx]
mov ecx, 6
mov rdi, r13
mov rax, rbp
rep stosq qword [rdi], rax
mov r10d, 1
movups xmmword [rsp + 0x178], xmm6
mov word [rsp + 0x194], r10w
test rdx, rdx
je 0x140345b95
mov rcx, r13
call fcn.14037ba20
cmp word [rsp + 0x194], 0
jne 0x140345b95
mov rax, qword [rsp + 0x138]
add rsi, 1
mov edx, dword [rax + 0x1c]
cmp edx, esi
jg 0x1403452f0
test r12d, 0x100
jne 0x140345c34
cmp dword [rsp + 0xa4], 1
je 0x140345c6d
mov rcx, qword [rsp + 0x68]
call fcn.14037d690
test eax, eax
jne 0x140345e07
test byte [rsp + 0x15d], 4
je 0x1403454aa
mov rax, qword [rsp + 0x70]
mov rbx, qword [rax + 0x58]
test rbx, rbx
je 0x140345498
mov rsi, qword [rsp + 0x98]
mov rbp, rax
mov rdx, qword [rbx + 0x48]
lea rdi, [rbx + 0x58]
mov rax, qword [rbx + 0x50]
cmp rdx, rdi
mov qword [rbp + 0x58], rax
je 0x1403453ea
mov rcx, rsi
call fcn.1402e3440
mov qword [rbx + 0x48], rdi
mov edi, 3
mov word [rbx + 0x40], di
mov eax, dword [rbx + 0x38]
test ah, 0x44
je 0x140345440
test ah, 4
je 0x140345401
test byte [rbx + 0x1c], 1
jne 0x140347f25
test ah, 0x40
je 0x140345440
mov rdx, qword [rbx + 0x20]
test rdx, rdx
je 0x140345440
mov rax, qword [rdx + 0x20]
test rax, rax
je 0x140345427
mov rdx, rax
mov rcx, rsi
call fcn.1402e3440
mov rdx, qword [rbx + 0x20]
mov rcx, rsi
call fcn.1402e3440
mov qword [rbx + 0x20], 0
nop word [rax + rax]
xor r11d, r11d
cmp rbx, qword [rsi + 0x1f0]
mov dword [rbx + 0x38], 0
mov word [rbx + 0x3c], r11w
jae 0x140345472
cmp rbx, qword [rsi + 0x1e0]
jae 0x140345e7b
cmp rbx, qword [rsi + 0x1e8]
jae 0x140345f3d
cmp qword [rsi + 0x308], 0
je 0x140345e6e
mov rdx, rbx
mov rcx, rsi
call fcn.1402a55a0
mov rbx, qword [rbp + 0x58]
test rbx, rbx
jne 0x1403453c0
mov rcx, qword [rsp + 0x68]
call fcn.14037d690
test eax, eax
jne 0x140345e07
mov rcx, qword [rsp + 0x70]
xor edx, edx
call fcn.140383c70
mov rax, qword [rsp + 0x98]
cmp byte [rax + 0x67], 0
jne 0x140345e07
mov rax, qword [rsp + 0x70]
cmp qword [rax + 0x10], 0
je 0x140345f73
mov rcx, rax
movzx eax, word [rax + 0x48]
lea edx, [rax + 1]
mov word [rsp + 0x48], ax
movsx edx, dx
call fcn.140383c70
mov rax, qword [rsp + 0x98]
cmp byte [rax + 0x67], 0
jne 0x140345e07
mov rax, qword [rsp + 0x70]
cmp qword [rax + 0x10], 0
je 0x140345f73
mov rax, qword [rsp + 0x270]
mov eax, dword [rax + 0x30]
test eax, eax
mov dword [rsp + 0xa0], eax
jne 0x140345e07
mov rax, qword [rsp + 0x70]
cmp qword [rsp + 0x290], 0
movzx eax, byte [rax + 0x40]
je 0x140348063
cmp al, 1
jbe 0x140348063
mov rax, qword [rsp + 0x98]
mov r15, 0xffffffffffffffff
test word [rsp + 0xb2], 0x400
mov eax, dword [rax + 0x60]
jne 0x140345572
test ah, 1
je 0x1403492c0
test eax, 0x80000
je 0x140348839
mov rsi, qword [rsp + 0x70]
mov rax, qword [rsi]
movsx edx, word [rsi + 0x48]
add dword [rax + 0xd0], edx
test byte [rsp + 0xb2], 4
je 0x1403455d1
mov rcx, qword [rsi + 0x3c0]
mov eax, dword [rcx + 0x38]
test ah, 0x10
je 0x1403487f8
mov rsi, qword [rsp + 0x278]
mov r8d, 1
mov rdx, qword [rsi + 0x28]
mov rsi, qword [rsp + 0x70]
mov byte [rsi + 0x42], r8b
test byte [rdx + 0x30], 0x80
je 0x1403491fc
movsxd rax, dword [rsp + 0xa4]
test eax, eax
jle 0x140345ddf
movzx esi, word [rsp + 0xb2]
imul rax, rax, 0x70
mov qword [rsp + 0x88], r15
mov r13, qword [rsp + 0x80]
mov rbp, qword [rsp + 0x270]
and esi, 0x20
mov word [rsp + 0x50], si
mov rsi, qword [rsp + 0x70]
lea r14, [rsi + rax + 0x360]
mov r15, rsi
mov qword [rsp + 0x48], r14
mov r14, qword [rsp + 0x278]
nop word [rax + rax]
movzx esi, byte [r13 + 0x40]
imul rax, rsi, 0x68
mov r11, rsi
mov rdi, qword [r14 + rax + 0x28]
mov rdx, qword [rdi + 0x60]
test rdx, rdx
je 0x140349ba1
mov rax, qword [rsp + 0x98]
mov rax, qword [rax + 0x20]
cmp rdx, qword [rax + 0x18]
je 0x140347ba8
add rax, 0x38
xor ebx, ebx
nop word [rax + rax]
add rax, 0x20
add ebx, 1
cmp rdx, qword [rax - 0x20]
jne 0x140345670
mov r12, qword [r13 + 0x60]
test byte [rdi + 0x31], 0x40
mov eax, dword [r12 + 0x38]
jne 0x140345760
movzx edx, byte [rdi + 0x3f]
cmp dl, 2
je 0x140345760
test ah, 4
jne 0x140347bb7
cmp dl, 1
je 0x140345760
test al, 0x40
jne 0x1403456bb
cmp word [rsp + 0x50], 0
je 0x1403456cb
imul rax, rsi, 0x68
test byte [r14 + rax + 0x44], 0x50
je 0x140348472
imul rax, rsi, 0x68
cmp byte [r15 + 0x42], 0
mov edx, dword [r14 + rax + 0x4c]
mov eax, 0x70
je 0x1403456e9
mov dword [r15 + 0x28], edx
mov eax, 0x71
mov dword [rsp + 0x20], eax
mov r9, rdi
mov r8d, ebx
mov rcx, rbp
mov byte [rsp + 0x58], r11b
call fcn.140313690
cmp byte [r15 + 0x42], 0
movzx r11d, byte [rsp + 0x58]
mov eax, dword [r12 + 0x38]
jne 0x140345732
cmp word [rdi + 0x36], 0x3f
jg 0x140345732
mov edx, dword [rdi + 0x30]
mov ecx, eax
and ecx, 0x404000
and edx, 0xe0
or edx, ecx
je 0x14034924f
mov rcx, qword [rsp + 0xa8]
movsxd rdx, dword [rcx + 0x90]
test edx, edx
jle 0x140345760
mov r10, qword [rcx + 0x88]
lea rdx, [rdx + rdx*2]
movzx ecx, byte [rsp + 0x78]
lea rdx, [r10 + rdx*8]
mov word [rdx - 0x16], cx
nop dword [rax]
test ah, 2
je 0x140345841
test byte [rdi + 0x30], 0x80
mov r10, qword [r12 + 0x20]
je 0x140345784
movzx eax, byte [r10 + 0x64]
and eax, 3
cmp al, 2
je 0x140347c30
cmp byte [r15 + 0x42], 0
jne 0x140347a23
mov r9d, dword [rsp + 0x2a8]
test r9d, r9d
je 0x140346cea
cmp word [rsp + 0x50], 0
mov edx, 0x65
mov r8d, dword [rsp + 0x2a8]
je 0x140346cea
mov dword [r13 + 8], r8d
mov rcx, qword [rsp + 0xa8]
mov r9d, dword [r10 + 0x58]
mov dword [rsp + 0x20], ebx
mov qword [rsp + 0x58], r10
call fcn.140330de0
mov r8, qword [rbp + 0x10]
mov rcx, rbp
mov rdx, qword [rsp + 0x58]
mov qword [rsp + 0x68], r8
call fcn.140311450
test rax, rax
mov rdx, rax
je 0x140345826
mov r8, qword [rsp + 0x68]
mov rax, qword [r8]
cmp byte [rax + 0x67], 0
jne 0x1403486c8
movsxd rax, dword [r8 + 0x90]
lea rcx, [rax + rax*2]
mov rax, qword [r8 + 0x88]
lea rax, [rax + rcx*8 - 0x18]
mov byte [rax + 1], 0xf8
mov qword [rax + 0x10], rdx
mov eax, dword [r12 + 0x38]
test al, 0xf
je 0x140345841
test eax, 0x188002
jne 0x140345841
test byte [r15 + 0x3c], 1
je 0x140349054
test ebx, ebx
jns 0x140346110
imul rsi, rsi, 0x68
test byte [r14 + rsi + 0x44], 0x10
jne 0x14034617d
mov rax, qword [rsp + 0x48]
add r13, 0x70
cmp r13, rax
jne 0x140345630
mov rsi, qword [rsp + 0xa8]
mov rbx, qword [rsp + 0x70]
mov r15, qword [rsp + 0x88]
mov eax, dword [rsi + 0x90]
mov dword [rbx + 0x4c], eax
mov rax, qword [rsp + 0x98]
cmp byte [rax + 0x67], 0
jne 0x140345e07
mov r13, qword [rsp + 0x80]
mov qword [rsp + 0x90], r15
movddup xmm7, qword [rsp + 0x60]
movq xmm9, qword [0x140475a98]
nop word [rax + rax]
mov rax, qword [rsp + 0x270]
mov eax, dword [rax + 0x30]
test eax, eax
mov dword [rsp + 0xb4], eax
jne 0x140345e07
movzx edi, byte [r13 + 0x40]
mov rax, qword [r13 + 0x60]
imul rdi, rdi, 0x68
add rdi, qword [rsp + 0x278]
mov ebp, dword [rax + 0x38]
movzx eax, byte [rdi + 0x48]
test al, 0x10
je 0x140345917
test al, 8
je 0x140346d0a
mov r9d, dword [rdi + 0x38]
mov edx, 0xa
mov rcx, rsi
mov r8d, dword [rdi + 0x3c]
call fcn.140330e60
test ebp, 0x404000
je 0x140345972
and ebp, 0x4000
je 0x14034615e
movzx eax, byte [r13 + 0x40]
mov qword [rsp + 0x20], r13
mov rdi, qword [rsp + 0x278]
mov r9, qword [rsp + 0x90]
mov rdx, qword [rsp + 0x60]
imul rax, rax, 0x68
mov rcx, qword [rsp + 0x270]
lea r8, [rdi + rax + 8]
call fcn.140240c50
mov rax, qword [rsp + 0x98]
cmp byte [rax + 0x67], 0
jne 0x140345e07
mov rdx, qword [rsp + 0x278]
mov r8, r13
movzx r9d, word [rsp + 0xb2]
mov rcx, qword [rsp + 0x270]
call fcn.14034b0f0
mov eax, dword [rsi + 0x90]
mov rdx, qword [rbx + 8]
mov rbp, qword [r13 + 0x60]
mov dword [r13 + 0x20], eax
mov rax, qword [rsp + 0x270]
mov qword [rsp + 0x80], rdx
mov rax, qword [rax]
mov qword [rsp + 0x48], rax
movzx eax, byte [r13 + 0x40]
mov rdi, rax
mov qword [rsp + 0x88], rax
imul rax, rax, 0x68
mov eax, dword [rdx + rax + 0x4c]
mov rdx, qword [rsp + 0x90]
mov dword [rsp + 0x68], eax
and rdx, 0xfffffffffffffffe
cmp eax, dword [rbx + 0x260]
je 0x140345a2a
mov edx, dword [rbx + 0x25c]
cmp edx, 1
jle 0x140346151
mov ecx, eax
mov eax, 1
jmp 0x140345a15
add rax, 1
cmp rdx, rax
je 0x140346151
cmp ecx, dword [rbx + rax*4 + 0x260]
jne 0x140345a08
mov rdx, qword [rsp + 0x90]
btr rdx, rax
mov rax, qword [rsp + 0x270]
mov qword [r13 + 0x68], rdx
mov rdx, qword [rsp + 0x270]
mov r14, qword [rbx + 0x68]
mov eax, dword [rax + 0x44]
lea r12d, [rax - 1]
sub eax, 2
test dil, dil
movd xmm2, r12d
mov dword [rsp + 0x50], eax
pshufd xmm0, xmm2, 0xe0
movq qword [r13 + 0xc], xmm0
mov dword [rdx + 0x44], eax
mov dword [r13 + 0x18], eax
je 0x140345a88
imul rax, qword [rsp + 0x88], 0x68
mov rdx, qword [rsp + 0x80]
test byte [rdx + rax + 0x44], 8
jne 0x140347837
mov edx, dword [rsp + 0xa0]
test edx, edx
je 0x1403484e1
lea rax, [r13 - 0x360]
jmp 0x140345ab3
cmp qword [rax + 0x398], 0
jne 0x140345abf
sub rax, 0x70
sub edx, 1
je 0x140345abf
mov r15d, dword [rax + 0x360]
test r15d, r15d
je 0x140345aa0
movsxd rax, edx
mov rdx, qword [rsp + 0x80]
imul rax, rax, 0x70
mov r9d, dword [rbx + rax + 0x36c]
imul rax, qword [rsp + 0x88], 0x68
add rax, rdx
movzx edx, byte [rax + 0x48]
mov ecx, edx
and ecx, 0x20
mov byte [rsp + 0xb8], cl
jne 0x14034627d
movzx ecx, byte [rsp + 0xa0]
shr r14, cl
mov eax, r14d
and eax, 1
mov dword [rsp + 0x58], eax
mov eax, dword [rbp + 0x38]
test ah, 4
jne 0x1403473be
test ah, 1
je 0x140346d62
test al, 5
jne 0x140347fd3
mov ecx, eax
not ecx
and ecx, 0x102
jne 0x140346d62
mov edx, eax
and edx, 0x10
test al, 0x20
jne 0x140348092
test edx, edx
jne 0x140348697
mov r10d, dword [rsp + 0x58]
mov r8d, dword [rsp + 0x68]
test r10d, r10d
je 0x1403491e5
mov edx, 0x20
mov rcx, rsi
call fcn.140330e60
mov eax, 0x26
movd xmm1, dword [rsi + 0x90]
mov byte [r13 + 0x41], al
movd xmm0, dword [rsp + 0x68]
punpckldq xmm0, xmm1
movq qword [r13 + 0x44], xmm0
jmp 0x1403462b6
mov rdx, qword [rbx]
mov r9d, 0x10
mov r8d, dword [r15 + 0x34]
mov rcx, qword [rsp + 0x270]
call fcn.1402eea60
mov rax, qword [rsp + 0x138]
or word [rbx + 0x12], 4
mov edx, dword [rax + 0x1c]
add rsi, 1
cmp edx, esi
jg 0x1403452f0
test r12d, 0x100
jne 0x140345c34
jmp 0x140345375
mov rdi, qword [rsp + 0x70]
xor esi, esi
imul rbx, rsi, 0x38
add rbx, qword [rax + 0x20]
test byte [rbx + 0x12], 2
jne 0x140345c1f
cmp qword [rbx + 0x30], 0
jne 0x140345c1f
mov rdx, qword [rbx]
mov r9d, 0x10
mov r8d, dword [rdi + 0x34]
mov rcx, qword [rsp + 0x270]
call fcn.1402eea60
mov rax, qword [rsp + 0x138]
or word [rbx + 0x12], 4
mov edx, dword [rax + 0x1c]
add rsi, 1
cmp edx, esi
jg 0x140345be0
test r12d, 0x100
je 0x140345383
mov rax, qword [rsp + 0x98]
test byte [rax + 0x60], 0x10
je 0x140345f97
mov eax, r12d
and ah, 0xfe
mov word [rsp + 0xb2], ax
mov rax, qword [rsp + 0x70]
and word [rax + 0x3c], 0xfeff
cmp dword [rsp + 0xa4], 1
jne 0x140345383
mov r15, qword [rsp + 0x130]
test byte [r15 + 0x3c], 0x20
jne 0x140345383
mov rbp, qword [r15 + 8]
mov rbx, qword [rbp + 0x28]
cmp byte [rbx + 0x3f], 1
je 0x140345383
test byte [rbp + 0x48], 3
jne 0x140345383
mov r14d, dword [rbp + 0x4c]
lea rax, [r15 + 0x70]
xor edx, edx
mov ecx, 0x100
movq xmm5, rax
mov qword [rsp + 0x50], rax
mov rsi, qword [rsp + 0x140]
movabs rax, 0x8200000000
lea r13, [rsp + 0x170]
mov r8d, 0xffffffff
movddup xmm0, xmm5
mov dword [rsi + 0x38], 0
mov word [rsi + 0x3e], dx
mov word [rsp + 0x198], cx
mov rcx, r13
movaps xmmword [rsp + 0x170], xmm0
pxor xmm0, xmm0
mov dword [rsp + 0x19c], r14d
movaps xmmword [rsp + 0x180], xmm0
mov qword [rsp + 0x190], rax
mov byte [rsp + 0x19a], 1
mov word [rsp + 0x1c8], r8w
call fcn.140384d30
test rax, rax
jne 0x140345d49
jmp 0x140349bb3
mov rcx, r13
call fcn.140384d30
test rax, rax
je 0x140349bb3
cmp qword [rax + 0x28], 0
jne 0x140345d38
mov rdx, qword [rsi + 0x48]
mov dword [rsi + 0x38], 0x1101
mov ecx, 0x21
mov qword [rdx], rax
mov edx, 1
mov eax, 1
mov word [rsi + 0x18], dx
mov edx, 0x1101
mov word [rsi + 0x3c], ax
mov word [rsi + 0x14], cx
mov rax, qword [r15 + 0x10]
mov ebp, 1
mov r12d, 1
mov word [rsi + 0x16], bp
mov qword [r15 + 0x3c0], rsi
mov qword [rsi + 8], 1
test rax, rax
mov dword [r15 + 0x364], r14d
mov word [r15 + 0x48], r12w
je 0x140345db7
mov eax, dword [rax]
mov byte [r15 + 0x41], al
test byte [r15 + 0x3d], 1
je 0x140345dc3
mov byte [r15 + 0x43], 1
cmp byte [rsp + 0x199], 1
jbe 0x140345501
or edx, 0x200000
mov dword [rsi + 0x38], edx
jmp 0x140345501
mov rax, qword [rsp + 0xa8]
mov rsi, qword [rsp + 0x70]
mov eax, dword [rax + 0x90]
mov dword [rsi + 0x4c], eax
mov rsi, qword [rsp + 0x98]
cmp byte [rsi + 0x67], 0
je 0x140346a7c
mov rdx, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x270]
mov rcx, qword [rsp + 0x98]
mov eax, dword [rdx + 0x38]
mov dword [rsi + 0xd0], eax
call fcn.14037cc60
mov qword [rsp + 0x70], 0
mov rax, qword [rsp + 0x70]
movaps xmm6, xmmword [rsp + 0x1e0]
movaps xmm7, xmmword [rsp + 0x1f0]
movaps xmm8, xmmword [rsp + 0x200]
movaps xmm9, xmmword [rsp + 0x210]
add rsp, 0x228
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov rcx, rbx
call fcn.14035ad80
jmp 0x14034548b
mov rax, qword [rsi + 0x1d8]
mov qword [rbx], rax
mov qword [rsi + 0x1d8], rbx
jmp 0x14034548b
mov r9, qword [r13 + 0x20]
test r9, r9
je 0x140345119
movsxd rdx, dword [r9]
test edx, edx
jle 0x140345119
shl rdx, 5
mov r10, r9
lea rax, [r9 + rdx]
mov qword [rsp + 0x50], rax
mov rcx, qword [r10 + 8]
mov r8d, r15d
mov edx, r11d
add r10, 0x20
call fcn.140327a40
cmp qword [rsp + 0x50], r10
jne 0x140345ec0
jmp 0x140345119
mov eax, 0x3f
cmp ecx, eax
cmovg ecx, eax
mov eax, 1
shl rax, cl
jmp 0x14034509c
mov r8, qword [rsi]
lea rdx, str.too_many_arguments_on__s_____max__d
mov r9d, ebp
mov rcx, r12
call fcn.1402e8400
jmp 0x140345158
mov rax, qword [rsp + 0x70]
test rax, rax
je 0x140345e2a
mov rcx, qword [rsp + 0x98]
mov rdx, rax
call fcn.1402e3440
jmp 0x140345e2a
mov rax, qword [rsi + 0x1c8]
mov qword [rbx], rax
mov qword [rsi + 0x1c8], rbx
jmp 0x14034548b
mov rax, qword [rsp + 0x98]
test byte [rax + 0x60], 0x10
jne 0x14034521c
mov rax, qword [rsp + 0x70]
mov byte [rax + 0x43], 1
jmp 0x14034521c
mov rax, qword [rsp + 0x98]
test byte [rax + 0x31], 0x10
je 0x140345511
mov rax, qword [rsp + 0x70]
mov qword [rax + 0x68], 0xffffffffffffffff
jmp 0x140345511
mov rax, qword [rsp + 0x278]
cmp dword [rax], 1
jne 0x1403460e4
mov r15d, dword [rax + 0x4c]
mov rdx, qword [rax + 0x28]
mov rax, qword [rsp + 0x290]
mov eax, dword [rax]
test eax, eax
jle 0x140346014
mov rcx, qword [rsp + 0x290]
movsxd r8, eax
shl r8, 5
add r8, rcx
mov rax, qword [rcx + 8]
test rax, rax
je 0x14034600b
nop dword [rax]
mov r9d, dword [rax + 4]
test r9d, 0x82000
je 0x14034935e
and r9d, 0x80000
je 0x140349340
mov rax, qword [rax + 0x20]
mov rax, qword [rax + 8]
test rax, rax
jne 0x140345fe0
add rcx, 0x20
cmp r8, rcx
jne 0x140345fd0
mov r12, qword [rdx + 0x10]
test r12, r12
je 0x1403460e4
mov rdi, qword [rsp + 0x290]
lea r13, [rsp + 0x170]
mov rbx, r14
jmp 0x14034604e
mov r12, qword [r12 + 0x28]
test r12, r12
je 0x1403460e1
cmp byte [r12 + 0x62], 0
je 0x140346040
cmp qword [r12 + 0x48], 0
jne 0x140346040
cmp word [r12 + 0x5e], 0
je 0x140349387
xor esi, esi
mov rdx, qword [rsp + 0x60]
mov qword [rsp + 0x28], r12
mov r9d, esi
mov r8d, r15d
mov dword [rsp + 0x20], 2
mov rcx, r13
mov ebp, esi
call fcn.140384c10
test rax, rax
je 0x1403493a0
xor r14d, r14d
nop dword [rax + rax]
cmp qword [rax + 0x28], 0
jne 0x1403460b4
test byte [rax + 0x14], 2
jne 0x1403460ca
test r14, r14
cmove r14, rax
mov rcx, r13
call fcn.140384d30
test rax, rax
jne 0x1403460a0
test r14, r14
je 0x1403493a0
movzx eax, word [r12 + 0x5e]
lea rdx, [rsi + 1]
cmp eax, edx
jle 0x1403499d4
mov rsi, rdx
jmp 0x14034606d
mov r14, rbx
test r14, r14
jne 0x140345375
mov rax, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x290]
or word [rax + 0x3c], 0x80
mov qword [rax + 0x10], rsi
jmp 0x140345375
mov rax, qword [rbp + 0xa8]
mov edx, 1
mov ecx, ebx
test rax, rax
cmove rax, rbp
shl edx, cl
mov r8d, dword [rax + 0x7c]
test r8d, edx
jne 0x140345849
or r8d, edx
cmp ebx, 1
mov dword [rax + 0x7c], r8d
jne 0x140345849
mov rcx, rax
call fcn.140313e40
jmp 0x140345849
mov rdx, qword [rsp + 0x90]
jmp 0x140345a2a
mov r9, qword [rsp + 0x90]
mov r8, r13
mov rcx, rbx
mov edx, dword [rsp + 0xa0]
call fcn.1402e0270
jmp 0x140345960
mov rax, qword [r15]
mov edx, 0x24
mov rcx, qword [rax]
call fcn.1402e35d0
test rax, rax
mov rbx, rax
je 0x1403482f8
mov rax, qword [r15 + 0x60]
mov qword [rbx + 8], 0x14
mov r8d, 0x10000
mov rsi, qword [rsp + 0xa8]
mov qword [rbx], rax
lea rax, [rbx + 0x10]
mov qword [r15 + 0x60], rbx
mov rcx, rsi
mov qword [r13 + 0x38], rax
mov eax, dword [rbp + 0x34]
lea edx, [rax + 1]
mov dword [rbp + 0x34], edx
mov edx, 0x4d
mov dword [rbx + 0x10], eax
mov eax, dword [rbp + 0x38]
lea r9d, [rax + 1]
mov dword [rbp + 0x38], r9d
mov dword [rbx + 0x14], r9d
call fcn.140330e60
mov eax, dword [rbp + 0x38]
xor r8d, r8d
mov edx, 0x4b
mov rcx, rsi
lea r9d, [rax + 1]
mov dword [rbp + 0x38], r9d
mov dword [rbx + 0x18], r9d
call fcn.140330e60
test byte [rdi + 0x30], 0x80
jne 0x140347d76
mov r8d, dword [rbx + 0x10]
mov r9d, 1
mov edx, 0x76
mov rsi, qword [rsp + 0xa8]
mov rcx, rsi
call fcn.140330e60
mov rcx, qword [rbp]
xor r8d, r8d
mov edx, 1
call fcn.140311180
test rax, rax
mov rdx, rax
je 0x140346268
mov qword [rax + 0x20], 0
mov rax, qword [rax + 0x18]
mov r8d, 0xfffffff8
mov rcx, rsi
mov byte [rax], 0
call fcn.140331b30
and dword [r12 + 0x38], 0xffffffbf
mov byte [r15 + 0x41], 0
mov byte [r15 + 0x43], 3
jmp 0x140345859
mov edi, dword [rax + 0x3c]
xor r9d, r9d
mov edx, 0xb
mov rcx, rsi
mov eax, dword [rax + 0x38]
mov r8d, edi
mov dword [rsp + 0x20], eax
call fcn.140330de0
mov r9d, r12d
mov r8d, edi
mov edx, 0xc
mov rcx, rsi
call fcn.140330e60
mov byte [r13 + 0x41], 9
mov dword [r13 + 0x48], eax
mov qword [rsp + 0x78], 0
mov ebp, 2
imul r12, qword [rsp + 0x88], 0x68
mov rax, qword [rsp + 0x80]
add r12, rax
nop dword [rax + rax]
mov r14d, dword [rbx + 0x84]
mov rdi, qword [rbx + 0x90]
test r14d, r14d
jle 0x140346660
imul r14, r14, 0x38
mov rax, r12
xor r11d, r11d
mov r12, rsi
mov dword [rsp + 0x48], r11d
mov rsi, rax
add r14, rdi
nop
movzx eax, word [rdi + 0x12]
test al, 6
jne 0x1403463b0
mov rdx, qword [r13 + 0x68]
mov rcx, rdx
and rcx, qword [rdi + 0x30]
jne 0x1403464d0
movzx ecx, byte [rsi + 0x44]
mov r15, qword [rdi]
test cl, 0x58
je 0x1403463e0
mov r8d, dword [r15 + 4]
test r8b, 3
je 0x1403463b0
and ecx, 8
je 0x140346352
and r8d, 1
je 0x1403463b0
mov r9d, dword [r15 + 0x34]
cmp r9d, dword [rbx + 0x260]
je 0x140346630
mov r8d, dword [rbx + 0x25c]
cmp r8d, 1
jle 0x140346590
mov ecx, 1
jmp 0x14034638d
add rcx, 1
cmp rcx, r8
je 0x140346590
cmp r9d, dword [rbx + rcx*4 + 0x260]
jne 0x140346380
mov r8d, 1
shl r8, cl
and rdx, r8
test rdx, rdx
je 0x140346590
nop dword [rax]
add rdi, 0x38
cmp rdi, r14
jne 0x140346310
mov r11d, dword [rsp + 0x48]
mov rax, rsi
mov rsi, r12
mov r12, rax
test r11d, r11d
jle 0x140346652
mov ebp, r11d
jmp 0x1403462e0
cmp ebp, 1
je 0x140346500
cmp ebp, 2
je 0x14034656c
test ah, 2
je 0x1403464e0
mov eax, dword [r13 + 0x2c]
test eax, eax
je 0x1403464e0
mov r8d, eax
and eax, 1
lea edx, [rax + 0x10]
shr r8d, 1
mov eax, dword [r12 + 0x90]
cmp eax, dword [r12 + 0x94]
jge 0x140346a90
lea ecx, [rax + 1]
mov dword [r12 + 0x90], ecx
movsxd rcx, eax
lea r9, [rcx + rcx*2]
mov rcx, qword [r12 + 0x88]
lea rcx, [rcx + r9*8]
xor r9d, r9d
mov byte [rcx], dl
mov word [rcx + 2], r9w
mov dword [rcx + 4], r8d
mov qword [rcx + 8], 0
mov qword [rcx + 0x10], 0
mov byte [rcx + 1], 0
mov r8d, dword [rsp + 0x50]
mov r9d, 0x10
mov rdx, r15
mov dword [rsp + 0x58], eax
mov rcx, qword [rsp + 0x270]
call fcn.1402eea60
movsxd rax, dword [rsp + 0x58]
test eax, eax
je 0x1403464be
mov r8, qword [r12]
lea rdx, [0x140397be0]
mov ecx, dword [r12 + 0x90]
cmp byte [r8 + 0x67], 0
jne 0x1403464bb
lea rdx, [rax + rax*2]
mov rax, qword [r12 + 0x88]
lea rdx, [rax + rdx*8]
mov dword [rdx + 8], ecx
or word [rdi + 0x12], 4
jmp 0x1403463b0
or byte [rbx + 0x44], 2
jmp 0x1403463b0
mov r8d, dword [rsp + 0x50]
mov r9d, 0x10
mov rdx, r15
mov rcx, qword [rsp + 0x270]
call fcn.1402eea60
jmp 0x1403464be
mov eax, dword [r13 + 4]
lea rcx, [rsp + 0x170]
test r15, r15
mov qword [rsp + 0x170], 0
mov qword [rsp + 0x180], 0
mov qword [rsp + 0x188], 0
mov qword [rsp + 0x190], 0
mov dword [rsp + 0x128], eax
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x120], rax
lea rax, [0x140249b70]
mov qword [rsp + 0x178], rax
jne 0x140346640
movzx eax, word [rdi + 0x12]
test ah, 0x10
je 0x1403463f2
mov edx, dword [rsp + 0x48]
mov eax, 3
test edx, edx
cmovne eax, edx
mov dword [rsp + 0x48], eax
jmp 0x1403463b0
cmp ebp, 1
jne 0x1403463e9
mov eax, dword [r13 + 4]
lea rcx, [rsp + 0x170]
mov qword [rsp + 0x170], 0
mov qword [rsp + 0x180], 0
mov qword [rsp + 0x188], 0
mov qword [rsp + 0x190], 0
mov dword [rsp + 0x128], eax
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x120], rax
lea rax, [0x140249b70]
mov qword [rsp + 0x178], rax
lea rax, [rsp + 0x120]
mov qword [rsp + 0x198], rax
mov rdx, r15
call fcn.14037ba20
cmp word [rsp + 0x194], 0
je 0x140346568
mov dword [rsp + 0x48], 2
jmp 0x1403463b0
and edx, 1
jmp 0x1403463a3
lea rax, [rsp + 0x120]
mov qword [rsp + 0x198], rax
jmp 0x140346608
mov rdi, qword [rbx + 0x90]
nop dword [rax]
mov eax, dword [rbx + 0x8c]
test eax, eax
jle 0x14034686a
mov r14d, eax
mov rdx, qword [rsp + 0x80]
mov qword [rsp + 0x48], rbx
imul r14, r14, 0x38
mov r15, qword [rsp + 0x90]
imul rax, qword [rsp + 0x88], 0x68
add r14, rdi
lea r12, [rdx + rax]
nop word [rax + rax]
test byte [rdi + 0x12], 6
jne 0x140346858
movzx eax, word [rdi + 0x14]
test al, 0x82
je 0x140346858
test ah, 8
je 0x140346858
mov ebx, dword [rsp + 0x68]
cmp ebx, dword [rdi + 0x1c]
jne 0x140346858
test byte [r12 + 0x44], 0x58
jne 0x140346858
mov rax, qword [rdi]
mov edx, 0x100
pxor xmm0, xmm0
mov qword [rsp + 0x58], rax
mov eax, dword [rdi + 0x20]
mov dword [rsp + 0x19c], ebx
movabs rbx, 0x8300000000
movaps xmmword [rsp + 0x170], xmm7
movaps xmmword [rsp + 0x180], xmm0
cmp eax, 0xfffffffe
mov qword [rsp + 0x190], rbx
mov word [rsp + 0x198], dx
mov byte [rsp + 0x19a], 1
je 0x140346858
lea rbp, [rsp + 0x170]
mov word [rsp + 0x1c8], ax
mov rcx, rbp
call fcn.140384d30
test rax, rax
je 0x140346858
xor ebx, ebx
nop dword [rax]
mov rdx, qword [rax + 0x28]
test r15, rdx
jne 0x140346777
test rdx, rdx
jne 0x140346770
test byte [rax + 0x14], 0x82
jne 0x140347baf
test rbx, rbx
cmove rbx, rax
mov rcx, rbp
call fcn.140384d30
test rax, rax
jne 0x140346758
test rbx, rbx
je 0x140346858
test byte [rbx + 0x12], 4
jne 0x140346858
test byte [rbx + 0x14], 1
mov rdx, qword [rbx]
je 0x1403467b7
test byte [rdx + 5], 0x10
je 0x1403467b7
mov rcx, qword [rdx + 0x20]
mov rcx, qword [rcx + 0x20]
cmp dword [rcx], 1
jg 0x140346858
mov rcx, qword [rdx]
mov r9d, 0x10
mov rax, qword [rsp + 0x58]
mov r8d, dword [rsp + 0x50]
mov qword [rsp + 0x170], rcx
mov rcx, qword [rdx + 8]
mov qword [rsp + 0x178], rcx
mov rcx, qword [rdx + 0x10]
mov qword [rsp + 0x180], rcx
mov rcx, qword [rdx + 0x18]
mov qword [rsp + 0x188], rcx
mov rcx, qword [rdx + 0x20]
mov qword [rsp + 0x190], rcx
mov rcx, qword [rdx + 0x28]
mov qword [rsp + 0x198], rcx
mov rcx, qword [rdx + 0x30]
mov qword [rsp + 0x1a0], rcx
mov rcx, qword [rdx + 0x38]
mov qword [rsp + 0x1a8], rcx
mov rdx, qword [rdx + 0x40]
mov rcx, qword [rsp + 0x270]
mov qword [rsp + 0x1b0], rdx
mov rdx, qword [rax + 0x10]
mov qword [rsp + 0x180], rdx
mov rdx, rbp
call fcn.1402eea60
or word [rbx + 0x12], 4
nop dword [rax + rax]
add rdi, 0x38
cmp rdi, r14
jne 0x1403466a0
mov rbx, qword [rsp + 0x48]
mov r15, qword [r13 + 0x38]
test r15, r15
je 0x140346aa8
movzx eax, byte [r13 + 0x40]
imul rax, rax, 0x68
add rax, qword [rbx + 8]
mov r11, qword [rax + 0x28]
test byte [r11 + 0x30], 0x80
jne 0x140346c10
mov rax, qword [rsp + 0x270]
movq xmm0, qword [rax + 0x28]
movd eax, xmm0
cmp eax, 1
jle 0x14034780b
mov rax, qword [rsp + 0x270]
pshufd xmm4, xmm0, 0xe5
paddd xmm0, xmm9
movd dword [rsp + 0x78], xmm4
movq qword [rax + 0x28], xmm0
mov eax, dword [rsp + 0x78]
add eax, 1
mov dword [rsp + 0x48], eax
mov r9d, eax
mov r8d, dword [r13 + 4]
mov edx, 0x87
mov rcx, rsi
call fcn.140330e60
mov dword [rsp + 0x58], 2
mov dword [rsp + 0x90], 1
mov eax, dword [rsp + 0x48]
xor r9d, r9d
mov edx, 0x1d
mov rcx, rsi
mov r8d, dword [r15]
mov dword [rsp + 0x20], eax
call fcn.140330de0
mov ebp, eax
mov rax, qword [rsi]
cmp byte [rax + 0x67], 0
jne 0x140346942
movsxd rax, ebp
mov edi, dword [rsp + 0x90]
lea rdx, [rax + rax*2]
mov rax, qword [rsi + 0x88]
lea rax, [rax + rdx*8]
mov byte [rax + 1], 0xfd
mov dword [rax + 0x10], edi
mov edi, dword [rsp + 0x48]
mov edx, 0x61
mov rcx, rsi
mov r12d, dword [rsp + 0x78]
mov r14d, dword [rsp + 0x90]
mov r8d, edi
mov dword [rsp + 0x20], r12d
mov r9d, r14d
call fcn.140330de0
mov r8d, dword [r15]
mov r9d, r12d
mov edx, 0x8a
mov rcx, rsi
mov dword [rsp + 0x28], r14d
mov dword [rsp + 0x20], edi
call fcn.140330ef0
mov r8d, dword [r15 + 4]
xor r9d, r9d
mov dword [rsp + 0x20], edi
mov edx, 0xb4
mov rcx, rsi
call fcn.140330de0
mov rdx, qword [rsi]
cmp byte [rdx + 0x67], 0
jne 0x140346b99
mov rdx, qword [rsi + 0x88]
cdqe
lea rax, [rax + rax*2]
lea rax, [rdx + rax*8]
mov byte [rax + 1], 0xfd
mov dword [rax + 0x10], r14d
mov eax, dword [rsi + 0x90]
test eax, eax
jle 0x1403469e2
movsxd rcx, eax
mov r12d, 0x10
lea rcx, [rcx + rcx*2]
mov word [rdx + rcx*8 - 0x16], r12w
cmp dword [rsp + 0x58], 1
movsxd rcx, ebp
lea rcx, [rcx + rcx*2]
lea rdx, [rdx + rcx*8]
mov dword [rdx + 8], eax
je 0x140346bd3
mov rdx, qword [rsp + 0x270]
mov edi, dword [rsp + 0x58]
cmp dword [rdx + 0x28], edi
jge 0x140346a1f
movd xmm5, dword [rsp + 0x78]
movd xmm0, edi
punpckldq xmm0, xmm5
movq qword [rdx + 0x28], xmm0
mov r9d, dword [r13]
test r9d, r9d
jne 0x140346ab7
mov rdi, qword [r13 + 0x38]
test rdi, rdi
jne 0x140346ad7
mov rax, qword [r13 + 0x68]
mov qword [rsp + 0x90], rax
mov eax, dword [r13 + 0x18]
add r13, 0x70
add dword [rsp + 0xa0], 1
mov edi, dword [rsp + 0xa4]
mov dword [rbx + 0x30], eax
mov eax, dword [rsp + 0xa0]
cmp eax, edi
jne 0x1403458c0
mov rax, qword [rsp + 0xa8]
mov eax, dword [rax + 0x90]
mov rsi, qword [rsp + 0x70]
mov dword [rsi + 0x50], eax
jmp 0x140345e33
mov dword [rsp + 0x20], 0
xor r9d, r9d
mov rcx, r12
call fcn.140297360
jmp 0x140346469
mov r9d, dword [r13]
test r9d, r9d
je 0x140346a39
mov eax, dword [rsi + 0x90]
mov dword [r13 + 0x1c], eax
mov r8d, 1
mov edx, 0x47
mov rcx, rsi
call fcn.140330e60
mov rdi, qword [r13 + 0x38]
test rdi, rdi
je 0x140346b00
mov r9d, dword [rdi + 8]
xor r8d, r8d
mov edx, 0x4a
mov rcx, rsi
call fcn.140330e60
mov eax, dword [rsi + 0x90]
mov dword [rdi + 0xc], eax
mov rax, qword [rsp + 0x270]
add byte [rax + 0x26], 1
mov eax, dword [rbx + 0x8c]
mov rcx, qword [r13 + 0x68]
mov rdi, qword [rbx + 0x90]
test eax, eax
mov qword [rsp + 0x90], rcx
jle 0x140346a45
imul rbp, qword [rsp + 0x88], 0x68
mov rdx, qword [rsp + 0x80]
mov r12d, dword [rsp + 0xb4]
add rdx, rbp
mov rbp, rdx
test byte [rdi + 0x12], 6
jne 0x140346b7f
mov rdx, rcx
and rdx, qword [rdi + 0x30]
jne 0x140346b7f
test byte [rbp + 0x44], 0x40
jne 0x140346b7f
mov rcx, qword [rsp + 0x270]
mov r9d, 0x10
mov rdx, qword [rdi]
mov r8d, dword [rsp + 0x50]
call fcn.1402eea60
mov eax, dword [rbx + 0x8c]
or word [rdi + 0x12], 4
mov rcx, qword [r13 + 0x68]
add r12d, 1
add rdi, 0x38
cmp r12d, eax
jl 0x140346b40
mov qword [rsp + 0x90], rcx
jmp 0x140346a45
mov eax, dword [rsi + 0x90]
test eax, eax
jle 0x140346bbe
mov r11, qword [rsi + 0x88]
movsxd rdx, eax
mov edi, 0x10
lea rdx, [rdx + rdx*2]
lea rdx, [r11 + rdx*8]
mov word [rdx - 0x16], di
cmp dword [rsp + 0x58], 1
lea rdx, [0x140397be0]
mov dword [rdx + 8], eax
jne 0x1403469fb
mov edi, dword [rsp + 0x78]
test edi, edi
je 0x140346a1f
mov rdx, qword [rsp + 0x270]
movzx edx, byte [rdx + 0x1f]
cmp dl, 7
ja 0x140346a1f
mov r10, qword [rsp + 0x270]
lea ecx, [rdx + 1]
mov byte [r10 + 0x1f], cl
mov dword [r10 + rdx*4 + 0xe4], edi
jmp 0x140346a1f
mov rdi, qword [r11 + 0x10]
test rdi, rdi
jne 0x140346c2d
jmp 0x140349d76
mov rdi, qword [rdi + 0x28]
test rdi, rdi
je 0x140392f9a
movzx eax, byte [rdi + 0x64]
and eax, 3
cmp al, 2
jne 0x140346c20
movzx r10d, word [rdi + 0x5e]
mov rcx, qword [rsp + 0x270]
lea eax, [r10 + 1]
mov dword [rsp + 0x90], r10d
mov rbp, r10
mov edx, eax
mov dword [rsp + 0x58], eax
call fcn.14030ae00
mov dword [rsp + 0x78], eax
add eax, 1
test r10d, r10d
mov dword [rsp + 0x48], eax
je 0x1403499bb
xor r12d, r12d
mov qword [rsp + 0xc0], rbx
add rbp, rbp
mov rbx, r12
mov r12, rdi
mov edi, dword [rsp + 0x68]
mov r14, rbp
mov qword [rsp + 0xb8], r13
mov rbp, r11
mov r13d, eax
nop dword [rax]
mov rdx, qword [r12 + 8]
mov r8d, edi
mov rcx, rsi
movsx r9d, word [rdx + rbx]
mov dword [rsp + 0x20], r13d
mov rdx, rbp
add rbx, 2
add r13d, 1
call fcn.1402e9be0
cmp rbx, r14
jne 0x140346ca0
mov r13, qword [rsp + 0xb8]
mov rbx, qword [rsp + 0xc0]
jmp 0x1403468fc
cmp byte [r15 + 0x42], 0
jne 0x140347a23
mov r8d, dword [rbp + 0x34]
test byte [r10 + 0x65], 8
lea eax, [r8 + 1]
mov dword [rbp + 0x34], eax
jne 0x1403479d0
mov edx, 0x70
jmp 0x1403457b9
xor r9d, r9d
xor r8d, r8d
mov edx, 0xf
mov rcx, rsi
call fcn.140330e60
mov r9d, dword [rdi + 0x38]
mov edx, 0xa
mov rcx, rsi
mov r8d, dword [rdi + 0x3c]
movsxd r12, eax
call fcn.140330e60
mov rcx, qword [rsi]
lea rax, [0x140397be0]
mov edx, dword [rsi + 0x90]
cmp byte [rcx + 0x67], 0
jne 0x140346d5a
mov rax, qword [rsi + 0x88]
lea rcx, [r12 + r12*2]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
jmp 0x140345917
test ah, 2
je 0x140347a68
movzx edx, word [rbp + 0x1c]
test al, 0x20
movzx edi, word [rbp + 0x18]
movzx r10d, word [rbp + 0x1a]
mov word [rsp + 0xfc], dx
mov rdx, qword [rbp + 0x20]
movzx ecx, di
mov word [rsp + 0xe8], cx
mov word [rsp + 0xf8], r10w
mov qword [rsp + 0x78], rdx
mov edx, dword [r13 + 8]
mov dword [rsp + 0xc0], edx
je 0x1403482d4
mov r8, qword [rbp + 0x48]
lea edx, [rdi + 1]
test al, 0x10
movzx r11d, r10w
mov rcx, qword [r8 + rcx*8]
mov qword [rsp + 0xd8], rcx
je 0x1403482ed
mov rcx, qword [rbp + 0x48]
movsxd rdx, edx
mov r12, qword [rcx + rdx*8]
movzx edx, word [rsp + 0xfc]
cmp r11d, edx
cmovl r11d, edx
test byte [r12 + 0x13], 1
jne 0x14034992e
xor r14d, r14d
cmp qword [rsp + 0xd8], 0
je 0x1403498f0
and eax, 0x80030
xor r15d, r15d
cmp eax, 0x80000
je 0x140348305
mov rdx, qword [rsp + 0x78]
movzx eax, word [rsp + 0xe8]
cmp ax, word [rdx + 0x60]
jae 0x140346e81
mov rdx, qword [rdx + 0x38]
cmp byte [rdx + rax], 0
sete al
movzx eax, al
cmp dword [rsp + 0x58], eax
jne 0x140346e81
mov edx, r14d
movzx eax, byte [rsp + 0xf8]
xor r14d, r14d
mov byte [rsp + 0xb8], dl
mov rdx, qword [rsp + 0xd8]
mov qword [rsp + 0xd8], r12
mov r12, rdx
movzx edx, word [rsp + 0xfc]
mov word [rsp + 0xfc], ax
mov word [rsp + 0xf8], dx
mov r9d, dword [rsp + 0xa0]
test r9d, r9d
je 0x140346e98
test byte [rbp + 0x3a], 0x10
jne 0x1403488df
mov r8d, dword [rsp + 0x58]
lea rax, [rsp + 0x170]
mov r9d, r11d
mov rdx, r13
mov rcx, qword [rsp + 0x270]
mov qword [rsp + 0x20], rax
call fcn.14023c120
mov dword [rsp + 0xc8], eax
mov rax, qword [rsp + 0x170]
test rax, rax
mov qword [rsp + 0xf0], rax
je 0x140346ee8
cmp word [rsp + 0xfc], 0
jne 0x14034890c
mov qword [rsp + 0x100], 0
test r15d, r15d
je 0x140348082
mov eax, dword [r13 + 0x28]
mov dword [rsp + 0xd0], eax
mov rax, qword [rsp + 0xd8]
test rax, rax
je 0x1403483b6
test byte [rax + 0x14], 0x28
jne 0x140348391
xor r14d, r14d
test r12, r12
je 0x1403498e0
xor eax, eax
test byte [r12 + 0x14], 0x28
setne al
mov dword [rsp + 0xec], eax
mov rax, qword [rsp + 0xd8]
mov ecx, dword [rsp + 0xc8]
movzx r9d, word [rsp + 0xf8]
mov rax, qword [rax]
add ecx, edi
mov dword [rsp + 0x118], ecx
mov r8d, ecx
mov rcx, qword [rsp + 0x270]
mov dword [rsp + 0xf8], r9d
mov rdx, qword [rax + 0x18]
mov qword [rsp + 0xe0], rdx
call fcn.14023e170
mov rax, qword [rsp + 0xd8]
movzx edx, word [rax + 0x12]
test dh, 1
je 0x140346fcb
mov r9, qword [rsi]
lea r8, [0x140397be0]
mov ecx, dword [r13 + 0x2c]
mov eax, dword [rsi + 0x90]
cmp byte [r9 + 0x67], 0
je 0x1403490f2
mov eax, ecx
shr eax, 1
mov dword [r8 + 0xc], eax
mov eax, ecx
and eax, 1
mov word [r8 + 2], ax
and edx, 0x80
je 0x140349716
mov rax, qword [rsp + 0xf0]
test rax, rax
je 0x140347004
movzx r8d, word [rsp + 0xe8]
mov edx, dword [rsp + 0xf8]
mov rcx, qword [rsp + 0xe0]
add r8, rax
call fcn.140372be0
mov eax, dword [rsp + 0xf8]
add eax, edi
mov dword [rsp + 0xe8], eax
mov rax, qword [rsp + 0xe0]
movzx eax, byte [rax]
cmp al, 0xb0
jne 0x14034702f
mov rax, qword [rsp + 0xe0]
movzx eax, byte [rax + 2]
cmp al, 0xb1
je 0x140349829
cmp al, 0x8a
je 0x1403497f0
mov rdx, qword [rsp + 0xd8]
mov rcx, r13
call fcn.140244fe0
mov r8d, dword [rsp + 0xe8]
mov dword [rsp + 0xf8], 0
mov rax, qword [rsp + 0x270]
mov edx, dword [rsp + 0xc8]
mov r9, qword [rsp + 0xf0]
mov rcx, qword [rax + 0x10]
call fcn.14023c770
movzx edx, word [rbp + 0x3e]
mov eax, 4
test dx, dx
je 0x1403470a7
mov eax, 1
mov ecx, dword [rsp + 0xe8]
cmp edx, ecx
je 0x1403495a8
shl eax, 2
lea r10d, [rax + r14*2]
test r15d, r15d
jne 0x14034866c
mov r8d, dword [r13 + 0x34]
test r8d, r8d
jne 0x140348572
mov eax, dword [rsp + 0x58]
lea rdx, [0x140479b70]
add eax, r10d
test byte [rbp + 0x3a], 0x10
cdqe
movzx r10d, byte [rdx + rax]
je 0x1403470e6
cmp r10d, 0x17
je 0x140349ae2
mov dword [rsp + 0xe0], 0
mov eax, dword [rsp + 0xe8]
mov edx, r10d
mov rcx, rsi
mov r9d, dword [rsp + 0xd0]
mov r8d, dword [rsp + 0xc0]
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0xc8]
mov dword [rsp + 0x20], eax
call fcn.140330ef0
test r15d, r15d
jne 0x1403484e8
test r12, r12
je 0x140349540
mov rax, qword [r12]
mov r14d, dword [rsp + 0xe0]
mov rax, qword [rax + 0x18]
test r14d, r14d
mov qword [rsp + 0xb8], rax
je 0x14034715b
mov eax, dword [rsi + 0x90]
mov dword [r13 + 0x48], eax
mov eax, dword [rsp + 0xc8]
movzx r14d, word [rsp + 0xfc]
mov rcx, qword [rsp + 0x270]
mov rdx, qword [rsp + 0xb8]
add eax, edi
mov r9d, r14d
mov r8d, eax
mov dword [rsp + 0xd8], eax
call fcn.14023e170
movzx ecx, word [r12 + 0x12]
test ch, 1
je 0x1403471cb
mov r8, qword [rsi]
lea rdx, [0x140397be0]
mov eax, dword [r13 + 0x2c]
mov r9d, dword [rsi + 0x90]
cmp byte [r8 + 0x67], 0
je 0x140349095
mov r8d, eax
and eax, 1
shr r8d, 1
mov word [rdx + 2], ax
mov dword [rdx + 0xc], r8d
and ecx, 0x80
je 0x140348848
mov rax, qword [rsp + 0x100]
test rax, rax
je 0x14034721a
mov rcx, qword [rsp + 0xb8]
mov r8, rax
mov edx, r14d
call fcn.140372be0
mov rax, qword [rsp + 0x270]
mov r8d, r14d
mov r9, qword [rsp + 0x100]
mov edx, dword [rsp + 0xd8]
mov rcx, qword [rax + 0x10]
call fcn.14023c770
mov rax, qword [rsp + 0xb8]
add r14d, edi
movzx eax, byte [rax]
cmp al, 0xb0
jne 0x140347238
mov rax, qword [rsp + 0xb8]
movzx eax, byte [rax + 2]
cmp al, 0xb1
je 0x14034974d
cmp al, 0x8a
je 0x14034957d
mov rdx, r12
mov rcx, r13
call fcn.140244fe0
mov rax, qword [rsp + 0xf0]
test rax, rax
je 0x14034726d
mov rcx, qword [rsp + 0x48]
mov rdx, rax
call fcn.1402e3840
mov rax, qword [rsp + 0x100]
test rax, rax
je 0x140347287
mov rcx, qword [rsp + 0x48]
mov rdx, rax
call fcn.1402e3840
mov r12d, dword [r13 + 0x48]
test r12d, r12d
jne 0x14034729b
mov r9d, dword [rsi + 0x90]
mov dword [r13 + 0x48], r9d
test r14d, r14d
je 0x140347f5a
mov eax, dword [rsp + 0x58]
mov r10d, dword [rsp + 0xec]
add eax, eax
add r10d, eax
test r15d, r15d
mov dword [rsp + 0x48], eax
jne 0x140349760
mov eax, dword [rsp + 0xc8]
movsxd r10, r10d
mov dword [rsp + 0x28], r14d
mov rcx, rsi
lea r12, [0x140476630]
mov r8d, dword [rsp + 0xc0]
movzx edx, byte [r12 + r10]
mov r9d, dword [rsp + 0xd0]
mov dword [rsp + 0x20], eax
call fcn.140330ef0
mov r8d, dword [rsp + 0xe0]
test r8d, r8d
je 0x140347321
mov rax, qword [rsi]
mov r9d, dword [rsi + 0x90]
cmp byte [rax + 0x67], 0
je 0x140347f3f
mov dword [0x140397be8], r9d
mov eax, dword [rbp + 0x38]
test eax, 0x40000
jne 0x14034836d
test al, 0x40
je 0x140347c49
test word [rbx + 0x3c], 0x1020
jne 0x140347c49
mov edi, 1
mov r8d, dword [r13]
test r8d, r8d
jne 0x14034736d
mov rax, qword [rsp + 0x78]
mov rcx, qword [rax + 0x48]
test rcx, rcx
je 0x14034736d
mov r8, qword [rsp + 0x60]
mov edx, dword [rsp + 0x68]
call fcn.14037c1a0
mov eax, dword [rbp + 0x38]
mov edx, 0x27
mov ecx, dword [rsp + 0x58]
sub edx, ecx
test ah, 0x10
mov ecx, 0xffffffb8
cmove ecx, edx
mov edx, dword [rsp + 0xc0]
mov dword [r13 + 0x44], edx
movzx edx, cl
mov ecx, eax
shr ecx, 0x10
and ecx, 1
test al, 0xf
mov dh, cl
mov word [r13 + 0x41], dx
jne 0x1403473ac
mov byte [r13 + 0x43], 1
test edi, edi
mov ebp, 1
je 0x1403462c4
jmp 0x1403462b6
movzx edi, word [rbp + 0x3c]
mov rcx, qword [rsp + 0x270]
lea edx, [rdi + 2]
mov dword [rsp + 0x78], edi
call fcn.14030ae00
test edi, edi
mov r14d, eax
mov eax, dword [r13 + 0xc]
mov dword [rsp + 0xd0], eax
je 0x1403475d6
lea ecx, [rdi - 1]
mov eax, 0x1f
mov r12, qword [rsp + 0x270]
mov dword [rsp + 0xd8], r14d
movq xmm8, qword [0x1404758e0]
cmp ecx, eax
cmovg ecx, eax
xor edi, edi
mov r15, rdi
lea eax, [r14 + 2]
mov edi, ecx
mov dword [rsp + 0xc8], eax
mov eax, dword [rsp + 0xc8]
mov ecx, r15d
mov dword [rsp + 0xc0], r15d
lea r14d, [rax + r15]
mov rax, qword [rbp + 0x48]
mov rax, qword [rax + r15*8]
test rax, rax
je 0x1403474b4
test byte [rax + 0x14], 1
je 0x1403477b2
mov edx, 1
shl edx, cl
and edx, dword [rbp + 0x30]
je 0x140347784
movq xmm0, qword [r12 + 0x34]
mov rcx, r12
mov rdx, qword [rax]
movdqa xmm6, xmm0
movd r8d, xmm0
movd dword [rsp + 0xb8], xmm0
paddd xmm6, xmm8
movq qword [r12 + 0x34], xmm6
call fcn.1402dd9e0
pshufd xmm3, xmm6, 0xe5
mov r9d, r14d
mov r8d, dword [rsp + 0xb8]
movd dword [rsp + 0x20], xmm3
mov edx, 0xae
mov rcx, rsi
call fcn.140330de0
add r15, 1
cmp edi, r15d
jge 0x140347424
mov edi, dword [rsp + 0xc0]
mov r14d, dword [rsp + 0xd8]
add edi, 1
movsxd r12, edi
shl r12, 3
cmp dword [rsp + 0x78], edi
jle 0x1403475d6
mov qword [rsp + 0xb8], rsi
mov r15d, dword [rsp + 0x78]
mov dword [rsp + 0xd8], r14d
mov esi, dword [rsp + 0xd0]
mov r14, rbp
mov rbp, r12
mov qword [rsp + 0xc0], rbx
mov ebx, dword [rsp + 0xc8]
jmp 0x14034754a
mov eax, dword [rsp + 0x58]
mov dword [rsp + 0x28], r8d
mov r9d, edi
mov r8, r13
mov rcx, qword [rsp + 0x270]
mov rdx, r12
mov dword [rsp + 0x20], eax
call fcn.14023d360
mov esi, dword [r13 + 0x10]
add edi, 1
add rbp, 8
cmp r15d, edi
je 0x1403475b4
mov rax, qword [r14 + 0x48]
lea r8d, [rdi + rbx]
mov r12, qword [rax + rbp]
test r12, r12
je 0x14034753e
test byte [r12 + 0x14], 1
jne 0x140347517
mov rdx, qword [r12]
mov r9d, 1
mov rcx, qword [rsp + 0x270]
mov rdx, qword [rdx + 0x18]
call fcn.14023e170
cmp byte [r12 + 0x17], 0x4a
jne 0x14034753e
test byte [r14 + 0x1c], 2
je 0x14034753e
mov rax, qword [rsp + 0xc0]
xor r8d, r8d
mov edx, 0x47
mov rcx, qword [rsp + 0xb8]
mov rax, qword [rax + 0x20]
mov r9d, dword [rax + 0xc]
call fcn.140330e60
jmp 0x14034753e
mov rbp, r14
mov dword [rsp + 0xd0], esi
mov r14d, dword [rsp + 0xd8]
mov rsi, qword [rsp + 0xb8]
mov rbx, qword [rsp + 0xc0]
mov r8d, dword [rbp + 0x18]
mov r9d, r14d
mov edx, 0x47
mov rcx, rsi
call fcn.140330e60
mov r8d, dword [rsp + 0x78]
lea r9d, [r14 + 1]
mov rcx, rsi
mov edx, 0x47
call fcn.140330e60
movzx eax, byte [rbp + 0x1c]
mov edx, 6
mov rcx, rsi
mov r9d, dword [rsp + 0xd0]
mov r8d, dword [rsp + 0x68]
mov rdi, qword [rbp + 0x28]
mov dword [rsp + 0x20], r14d
and eax, 1
cmp al, 1
sbb r12d, r12d
call fcn.140330de0
or r12d, 0xfffffffa
mov r8, rdi
mov rcx, rsi
mov edx, eax
mov r9d, r12d
call fcn.140331c00
mov rax, qword [rsp + 0x48]
and byte [rbp + 0x1c], 0xfe
cmp byte [rax + 0x67], 0
je 0x14034765a
mov qword [rbp + 0x28], 0
mov eax, dword [rsp + 0x68]
mov dword [r13 + 0x44], eax
cmp byte [rbx + 0x42], 1
sbb eax, eax
and eax, 0xffffff87
sub eax, 0x48
mov byte [r13 + 0x41], al
mov eax, dword [rsi + 0x90]
mov dword [r13 + 0x48], eax
mov eax, dword [rsp + 0x78]
test eax, eax
je 0x1403462b6
lea r11d, [rax - 1]
mov eax, 0xf
mov qword [rsp + 0x58], rbx
mov rbx, rbp
lea edi, [r14 + 2]
cmp r11d, eax
cmovg r11d, eax
mov r12d, edi
xor r14d, r14d
mov r15d, r11d
mov rax, qword [rbx + 0x48]
mov ecx, r14d
mov rbp, qword [rax + r14*8]
movzx eax, word [rbx + 0x22]
sar eax, cl
and eax, 1
jne 0x140347a13
test byte [rbp + 0x14], 1
je 0x1403476e2
mov r10d, 1
shl r10d, cl
mov edx, r10d
and edx, dword [rbx + 0x30]
je 0x14034786f
lea rax, [r14 + 1]
add r12d, 1
cmp r15d, eax
jge 0x14034776b
add r14d, 1
cmp dword [rsp + 0x78], r14d
mov rbp, rbx
mov rbx, qword [rsp + 0x58]
jle 0x1403462b6
mov qword [rsp + 0x58], rbx
mov ebx, dword [rsp + 0x78]
lea r12d, [rdi + r14]
movsxd rax, r14d
lea r11, [rax*8]
mov rdi, r11
nop dword [rax]
mov rax, qword [rbp + 0x48]
mov r15, qword [rax + rdi]
test byte [r15 + 0x14], 1
je 0x140347750
cmp r14d, 0x1f
jle 0x140347773
mov rax, qword [rsp + 0x48]
cmp byte [rax + 0x67], 0
je 0x140347dcb
nop dword [rax]
add r14d, 1
add rdi, 8
add r12d, 1
cmp ebx, r14d
jne 0x140347728
mov rbx, qword [rsp + 0x58]
jmp 0x1403462b6
mov r14, rax
jmp 0x1403476ad
mov eax, 1
mov ecx, r14d
shl eax, cl
and eax, dword [rbp + 0x30]
jne 0x140347750
jmp 0x14034773d
mov edx, dword [rsp + 0x58]
mov dword [rsp + 0x28], r14d
mov r9d, r15d
mov r8, r13
mov rcx, r12
mov dword [rsp + 0x20], edx
mov rdx, rax
call fcn.14023d360
mov eax, dword [r13 + 0x10]
mov dword [rsp + 0xd0], eax
jmp 0x1403474b4
mov rdx, qword [rax]
mov r9d, 1
mov r8d, r14d
mov rcx, r12
mov qword [rsp + 0xb8], rax
mov rdx, qword [rdx + 0x18]
call fcn.14023e170
mov rax, qword [rsp + 0xb8]
cmp byte [rax + 0x17], 0x4a
jne 0x1403474b4
test byte [rbp + 0x1c], 2
je 0x1403474b4
mov rax, qword [rbx + 0x20]
xor r8d, r8d
mov edx, 0x47
mov rcx, rsi
mov r9d, dword [rax + 0xc]
call fcn.140330e60
jmp 0x1403474b4
mov rax, qword [rsp + 0x270]
mov edi, dword [rax + 0x38]
lea eax, [rdi + 1]
mov dword [rsp + 0x78], eax
lea eax, [rdi + 2]
mov rdi, qword [rsp + 0x270]
mov dword [rsp + 0x48], eax
mov r9d, eax
mov dword [rdi + 0x38], eax
jmp 0x1403468d8
mov rax, qword [rsp + 0x270]
xor r8d, r8d
mov edx, 0x47
mov rcx, rsi
mov eax, dword [rax + 0x38]
lea r9d, [rax + 1]
mov dword [rsp + 0x58], eax
mov rax, qword [rsp + 0x270]
mov dword [rax + 0x38], r9d
mov dword [r13], r9d
call fcn.140330e60
jmp 0x140345a88
mov rdx, qword [rsp + 0x48]
cmp byte [rdx + 0x67], 0
jne 0x1403476e2
movsxd rdx, dword [r13 + 0x50]
test edx, edx
jle 0x140347905
mov rcx, qword [rsi]
mov r8, qword [r13 + 0x58]
cmp byte [rcx + 0x67], 0
jne 0x14034910b
lea rax, [r8 + 4]
mov rcx, qword [rsi + 0x88]
lea rdx, [rdx + rdx*4]
lea r8, [rax + rdx*4]
jmp 0x1403478cc
cmp r9b, 0x87
jne 0x1403478c3
cmp r12d, dword [rdx + 8]
mov r9d, r12d
je 0x140349171
add rax, 0x14
cmp rax, r8
je 0x140347905
movsxd rdx, dword [rax]
lea rdx, [rdx + rdx*2]
lea rdx, [rcx + rdx*8]
movzx r9d, byte [rdx]
cmp r9b, 0x5e
jne 0x1403478b0
cmp r12d, dword [rdx + 0xc]
jne 0x1403478c3
mov r9d, dword [rdx + 8]
mov eax, r12d
mov ecx, 0x5e
mov r8d, dword [rdx + 4]
mov edx, ecx
mov dword [rsp + 0x20], eax
mov rcx, rsi
call fcn.140330de0
mov rcx, qword [rsp + 0x270]
xor r9d, r9d
xor r8d, r8d
mov edx, 0x35
call fcn.140313fb0
mov r11, rax
mov rax, qword [rsp + 0x48]
cmp byte [rax + 0x67], 0
jne 0x14034917e
mov eax, dword [rbp + 0x24]
mov rdx, qword [rbp]
test eax, eax
mov rdx, qword [rdx + 0x10]
jle 0x14034794f
sub eax, 1
cdqe
shl rax, 5
add rax, qword [rdx + 0x20]
mov rdx, qword [rax + 8]
mov rcx, qword [rsp + 0x48]
mov qword [r11 + 0x10], rdx
xor r9d, r9d
mov edx, 0xb0
lea r8, [rsp + 0x170]
mov qword [rsp + 0xb8], r11
mov qword [rsp + 0x170], 0
mov dword [rsp + 0x178], 0
call fcn.1402e8b80
mov r11, qword [rsp + 0xb8]
test rax, rax
mov qword [r11 + 0x18], rax
je 0x1403479c3
mov r8d, dword [r13 + 0x18]
mov rdx, r11
mov dword [rax + 0x2c], r12d
mov r9d, 0x10
mov rcx, qword [rsp + 0x270]
call fcn.1402eea60
mov r11, qword [rsp + 0xb8]
mov qword [r11 + 0x10], 0
jmp 0x140349187
mov rax, qword [rsp + 0x98]
test byte [rax + 0x63], 1
jne 0x140346d00
movzx eax, r11b
mov rdx, r10
mov rcx, rbp
mov dword [rsp + 0x68], r8d
imul rax, rax, 0x68
mov qword [rsp + 0x58], r10
lea r9, [r14 + rax + 8]
call fcn.14037bc60
mov r8d, dword [rsp + 0x68]
mov r10, qword [rsp + 0x58]
jmp 0x140346d00
mov rdx, rbp
mov rcx, r13
call fcn.140244fe0
jmp 0x1403476e2
imul rax, rsi, 0x68
mov r8d, dword [rsp + 0x2a8]
mov rax, qword [r14 + rax + 0x28]
mov rax, qword [rax + 0x10]
cmp r10, rax
je 0x140347a5a
test rax, rax
je 0x140347a5a
nop word [rax + rax]
mov rax, qword [rax + 0x28]
add r8d, 1
test rax, rax
je 0x140347a5a
cmp r10, rax
jne 0x140347a48
mov dword [r15 + 0x2c], r8d
mov edx, 0x71
jmp 0x1403457b9
test ah, 0x20
je 0x14034828a
mov rax, qword [rsp + 0x270]
movq xmm0, qword [0x1404758e0]
mov rdx, qword [rsp + 0x270]
mov r15, qword [rsp + 0x80]
movq xmm1, qword [rax + 0x34]
movd dword [rsp + 0xf8], xmm1
paddd xmm0, xmm1
movq qword [rax + 0x34], xmm0
mov eax, dword [rax + 0x44]
pshufd xmm4, xmm0, 0xe5
movd dword [rsp + 0xe8], xmm4
sub eax, 1
mov dword [rdx + 0x44], eax
mov dword [rsp + 0xe0], eax
imul rax, qword [rsp + 0x88], 0x68
mov rax, qword [r15 + rax + 0x28]
mov qword [rsp + 0x58], rax
mov rax, qword [rbp + 0x48]
mov rax, qword [rax]
mov r14, qword [rax + 0x20]
mov qword [rsp + 0xc0], rax
mov eax, dword [rsp + 0xe8]
mov byte [r13 + 0x41], 0x43
mov dword [r13 + 0x44], eax
movzx eax, byte [rbx + 0x40]
cmp al, 1
ja 0x14034892e
mov rax, qword [rbx + 8]
mov qword [rsp + 0xc8], rax
test byte [rbx + 0x3c], 0x10
jne 0x140348aa3
mov rax, qword [rsp + 0x58]
test byte [rax + 0x30], 0x80
je 0x1403492e2
mov rdi, qword [rax + 0x10]
test rdi, rdi
jne 0x140347b4d
jmp 0x140349d80
mov rdi, qword [rdi + 0x28]
test rdi, rdi
je 0x140392f84
movzx eax, byte [rdi + 0x64]
and eax, 3
cmp al, 2
jne 0x140347b40
mov rax, qword [rsp + 0x270]
mov rcx, rsi
mov rdx, qword [rsp + 0x270]
movzx r9d, word [rdi + 0x5e]
mov r8d, dword [rax + 0x34]
lea eax, [r8 + 1]
mov dword [rsp + 0xb8], r8d
mov dword [rdx + 0x34], eax
mov edx, 0x76
call fcn.140330e60
mov rcx, qword [rsp + 0x270]
mov rdx, rdi
call fcn.1403427b0
jmp 0x140349319
xor ebx, ebx
jmp 0x14034567d
mov rbx, rax
jmp 0x14034678d
mov r10, qword [rdi + 0x50]
mov rax, qword [rsp + 0x98]
test r10, r10
jne 0x140347bd9
jmp 0x140347bde
mov r10, qword [r10 + 0x28]
test r10, r10
je 0x140347bde
cmp rax, qword [r10]
jne 0x140347bd0
imul rax, rsi, 0x68
mov rcx, qword [rsp + 0xa8]
xor r9d, r9d
mov edx, 0xad
mov byte [rsp + 0x58], r11b
mov qword [rsp + 0x68], r10
mov r8d, dword [r14 + rax + 0x4c]
call fcn.140330e60
mov r8, qword [rsp + 0x68]
mov r9d, 0xfffffff5
mov rcx, qword [rsp + 0xa8]
mov edx, eax
call fcn.140331c00
mov eax, dword [r12 + 0x38]
movzx r11d, byte [rsp + 0x58]
jmp 0x140345760
cmp word [rsp + 0x50], 0
je 0x140346cdf
mov eax, dword [r13 + 4]
mov dword [r13 + 8], eax
jmp 0x140345841
mov rax, qword [rsp + 0x78]
mov rax, qword [rax + 0x18]
test byte [rax + 0x30], 0x80
je 0x1403486f0
mov edx, dword [rsp + 0xc0]
cmp dword [rsp + 0x68], edx
je 0x140347d41
mov r14, qword [rax + 0x10]
test r14, r14
jne 0x140347c8d
jmp 0x140349d71
mov r14, qword [r14 + 0x28]
test r14, r14
je 0x140392f70
movzx eax, byte [r14 + 0x64]
and eax, 3
cmp al, 2
jne 0x140347c80
movzx edx, word [r14 + 0x5e]
mov rcx, qword [rsp + 0x270]
call fcn.14030ae00
test edx, edx
mov r12d, eax
je 0x140347d21
mov r15, qword [rsp + 0x78]
xor edi, edi
movzx r8d, word [r15 + 0x60]
mov rax, qword [r14 + 8]
test r8w, r8w
movzx edx, word [rax + rdi*2]
je 0x140349395
mov rcx, qword [r15 + 8]
xor eax, eax
jmp 0x140347ced
add rax, 1
cmp r8d, eax
jle 0x140349395
cmp dx, word [rcx + rax*2]
jne 0x140347ce0
movsx r9d, ax
mov r8d, dword [rsp + 0xc0]
lea eax, [r12 + rdi]
mov edx, 0x5e
mov rcx, rsi
mov dword [rsp + 0x20], eax
add rdi, 1
call fcn.140330de0
movzx edx, word [r14 + 0x5e]
cmp edx, edi
jg 0x140347cb9
mov r9d, dword [rsp + 0x50]
mov dword [rsp + 0x28], edx
mov rcx, rsi
mov edx, 0x1c
mov r8d, dword [rsp + 0x68]
mov dword [rsp + 0x20], r12d
call fcn.140330ef0
xor edi, edi
jmp 0x140347348
mov rbx, qword [rsp + 0x60]
mov r8d, 0x2c
mov rdx, qword [rsi + 0x10]
mov rcx, rbx
call fcn.14034c540
mov rdx, qword [rsi + 0x18]
mov r8d, 0x2c
mov rcx, rbx
call fcn.14034c540
jmp 0x1403451f0
mov rsi, qword [rdi + 0x10]
test rsi, rsi
jne 0x140347d95
jmp 0x140349d7b
mov rsi, qword [rsi + 0x28]
test rsi, rsi
je 0x140392f7a
movzx eax, byte [rsi + 0x64]
and eax, 3
cmp al, 2
jne 0x140347d88
mov rcx, qword [rsp + 0xa8]
mov edx, 0x76
movzx r9d, word [rsi + 0x5e]
mov r8d, dword [rbx + 0x10]
call fcn.140330e60
mov rdx, rsi
mov rcx, rbp
call fcn.1403427b0
jmp 0x140346268
movsxd rdx, dword [r13 + 0x50]
test edx, edx
jle 0x140347e56
mov rcx, qword [rsi]
mov rax, qword [r13 + 0x58]
cmp byte [rcx + 0x67], 0
jne 0x1403484a0
lea rdx, [rdx + rdx*4]
add rax, 4
mov rcx, qword [rsi + 0x88]
lea r8, [rax + rdx*4]
jmp 0x140347e1c
cmp r9b, 0x87
jne 0x140347e13
cmp r12d, dword [rdx + 8]
mov r9d, r12d
je 0x1403490e4
add rax, 0x14
cmp rax, r8
je 0x140347e56
movsxd rdx, dword [rax]
lea rdx, [rdx + rdx*2]
lea rdx, [rcx + rdx*8]
movzx r9d, byte [rdx]
cmp r9b, 0x5e
jne 0x140347e00
cmp r12d, dword [rdx + 0xc]
mov r11d, r12d
jne 0x140347e13
mov r9d, dword [rdx + 8]
mov eax, 0x5e
mov r8d, dword [rdx + 4]
mov rcx, rsi
mov dword [rsp + 0x20], r11d
mov edx, eax
call fcn.140330de0
mov rcx, qword [rsp + 0x270]
xor r9d, r9d
xor r8d, r8d
mov edx, 0x35
call fcn.140313fb0
mov r11, rax
mov rax, qword [rsp + 0x48]
cmp byte [rax + 0x67], 0
jne 0x1403485d8
mov eax, dword [r15 + 0x24]
mov rdx, qword [r15]
test eax, eax
mov rdx, qword [rdx + 0x10]
jle 0x140347ea0
sub eax, 1
cdqe
shl rax, 5
add rax, qword [rdx + 0x20]
mov rdx, qword [rax + 8]
mov rcx, qword [rsp + 0x48]
mov qword [r11 + 0x10], rdx
xor r9d, r9d
mov edx, 0xb0
lea r8, [rsp + 0x170]
mov qword [rsp + 0x78], r11
mov qword [rsp + 0x170], 0
mov dword [rsp + 0x178], 0
call fcn.1402e8b80
mov r11, qword [rsp + 0x78]
test rax, rax
mov qword [r11 + 0x18], rax
je 0x140347f0b
mov r8d, dword [r13 + 0x18]
mov rdx, r11
mov dword [rax + 0x2c], r12d
mov r9d, 0x10
mov rcx, qword [rsp + 0x270]
call fcn.1402eea60
mov r11, qword [rsp + 0x78]
mov qword [r11 + 0x10], 0
mov rcx, qword [rsp + 0x48]
mov rdx, r11
call fcn.1402ee4e0
jmp 0x140347750
mov rcx, qword [rbx + 0x28]
call fcn.14035ad80
mov qword [rbx + 0x28], 0
and byte [rbx + 0x1c], 0xfe
jmp 0x140345440
movsxd rax, dword [rsp + 0xe0]
mov r10, qword [rsi + 0x88]
lea rax, [rax + rax*2]
lea rax, [r10 + rax*8]
mov dword [rax + 8], r9d
test r15d, r15d
je 0x140347321
mov eax, dword [rsp + 0x58]
lea r12, [0x140476630]
mov r9d, dword [rsi + 0x90]
add eax, eax
mov dword [rsp + 0x48], eax
add r9d, 2
mov r8d, r15d
mov rcx, rsi
mov edx, 0x10
call fcn.140330e60
mov ecx, dword [rsp + 0xf8]
mov eax, dword [rsp + 0x48]
mov r9d, dword [rsp + 0xd0]
mov r8d, dword [rsp + 0xc0]
add eax, ecx
cdqe
movzx edx, byte [r12 + rax]
lea eax, [r14 + rcx]
mov rcx, rsi
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0xc8]
mov dword [rsp + 0x20], eax
call fcn.140330ef0
jmp 0x140347321
mov rax, qword [rbp + 0x48]
xor r9d, r9d
mov r8, r13
mov rcx, qword [rsp + 0x270]
mov rdx, qword [rax]
mov rax, qword [rsp + 0x270]
mov eax, dword [rax + 0x38]
lea edi, [rax + 1]
mov dword [rsp + 0x48], eax
mov rax, qword [rsp + 0x270]
mov dword [rax + 0x38], edi
mov eax, dword [rsp + 0x58]
mov dword [rsp + 0x28], edi
mov dword [rsp + 0x20], eax
call fcn.14023d360
cmp edi, eax
mov ebp, eax
je 0x14034802f
test edi, edi
je 0x14034802f
mov rcx, qword [rsp + 0x270]
mov edx, edi
call fcn.14031e030
mov r11d, dword [r13 + 0x34]
mov edi, dword [r13 + 0x10]
test r11d, r11d
jne 0x14034887f
mov r8d, dword [rsp + 0x68]
mov dword [rsp + 0x20], ebp
mov r9d, edi
mov rcx, rsi
mov edx, 0x1e
call fcn.140330de0
mov byte [r13 + 0x41], 0xb8
jmp 0x1403462b6
mov r15, 0xffffffffffffffff
cmp al, 1
jbe 0x14034557d
mov rax, qword [rsp + 0x98]
mov eax, dword [rax + 0x60]
jmp 0x140345572
mov eax, dword [r13 + 0x10]
mov dword [rsp + 0xd0], eax
jmp 0x140346f08
mov rax, qword [rbp + 0x48]
test edx, edx
mov rdi, qword [rax]
jne 0x1403485e6
mov r8d, dword [rsp + 0x58]
xor ebp, ebp
test r8d, r8d
jne 0x1403491b7
test rdi, rdi
je 0x140349b94
mov dword [rsp + 0x170], 0x17151618
mov r14, qword [rdi]
mov rdx, qword [r14 + 0x18]
movzx eax, byte [rdx]
cmp al, 0xb0
jne 0x1403480d7
movzx eax, byte [rdx + 2]
cmp al, 0xb1
je 0x14034986a
cmp al, 0x8a
je 0x140348fdf
mov rcx, qword [rsp + 0x270]
lea r8, [rsp + 0x120]
call fcn.1402ed7c0
mov rdx, rdi
mov rcx, r13
mov dword [rsp + 0x48], eax
call fcn.140244fe0
movzx eax, byte [r14]
mov edi, dword [rsp + 0x120]
mov r8d, dword [rsp + 0x48]
sub eax, 0x36
cdqe
movzx edx, byte [rsp + rax + 0x170]
mov dword [rsp + 0x20], r8d
mov r8d, dword [rsp + 0x68]
mov r9d, r12d
mov rcx, rsi
call fcn.140330de0
test edi, edi
je 0x140348150
mov rcx, qword [rsp + 0x270]
mov edx, edi
call fcn.14031e030
mov edi, dword [rsp + 0x58]
mov eax, 0x27
sub eax, edi
test rbp, rbp
mov r14d, eax
je 0x140345b74
mov rax, qword [rsp + 0x270]
mov r9d, 1
mov rdi, qword [rbp]
mov eax, dword [rax + 0x38]
mov rdx, qword [rdi + 0x18]
lea r15d, [rax + 1]
mov dword [rsp + 0x48], eax
mov rax, qword [rsp + 0x270]
mov r8d, r15d
mov dword [rax + 0x38], r15d
mov rcx, rax
call fcn.14023e170
mov rax, qword [rdi + 0x18]
movzx edx, byte [rax]
cmp dl, 0xb0
jne 0x1403481af
movzx edx, byte [rax + 2]
cmp dl, 0xb1
je 0x14034985c
cmp dl, 0x8a
je 0x140349839
movzx ecx, byte [rdi]
sub ecx, 0x36
cmp dword [rsp + 0x58], 1
sbb edi, edi
and ecx, 0xfd
jne 0x140348a98
and edi, 2
add edi, 0x37
cmp dl, 0xb1
je 0x1403498cc
cmp dl, 0x8a
je 0x1403498c8
mov rdx, rbp
mov rcx, r13
call fcn.140244fe0
mov rax, qword [rsp + 0x270]
mov edx, 0x87
mov rcx, rsi
mov r8d, dword [rsp + 0x68]
movd xmm0, dword [rsi + 0x90]
mov byte [r13 + 0x41], r14b
mov eax, dword [rax + 0x38]
movd xmm1, r8d
punpckldq xmm1, xmm0
movq qword [r13 + 0x44], xmm1
lea ebp, [rax + 1]
mov dword [rsp + 0x48], eax
mov rax, qword [rsp + 0x270]
mov r9d, ebp
mov dword [rax + 0x38], ebp
call fcn.140330e60
mov dword [rsp + 0x20], ebp
mov r9d, r12d
mov r8d, r15d
mov edx, edi
mov rcx, rsi
call fcn.140330de0
movsxd rax, dword [rsi + 0x90]
test eax, eax
jle 0x1403462b6
mov r15, qword [rsi + 0x88]
lea rax, [rax + rax*2]
mov edx, 0x53
lea rax, [r15 + rax*8]
mov word [rax - 0x16], dx
jmp 0x1403462b6
and edx, 0x40
jne 0x140348059
movsxd rax, dword [rsp + 0x58]
lea rdx, [0x140479b90]
mov rcx, rsi
mov r8d, dword [rsp + 0x68]
movzx edx, byte [rdx + rax]
mov dword [r13 + 0x44], r8d
mov byte [r13 + 0x41], dl
lea rdx, [0x140479b60]
movzx edx, byte [rdx + rax]
call fcn.140330e60
mov byte [r13 + 0x43], 1
add eax, 1
mov dword [r13 + 0x48], eax
jmp 0x1403462b6
xor r11d, r11d
test al, 0x10
mov edx, edi
mov qword [rsp + 0xd8], 0
jne 0x140346dcf
xor r14d, r14d
xor r12d, r12d
jmp 0x140346e07
mov qword [r13 + 0x38], 0
jmp 0x140345859
mov rax, qword [rsp + 0x270]
mov r10d, dword [r13]
mov eax, dword [rax + 0x38]
test r10d, r10d
lea r15d, [rax + 1]
mov dword [rsp + 0xc8], eax
mov rax, qword [rsp + 0x270]
mov dword [rax + 0x38], r15d
mov dword [r13 + 0x24], r15d
jne 0x1403498b0
mov rax, qword [rsp + 0x270]
mov r14d, 1
mov r11d, 1
mov rdx, qword [rsp + 0x270]
mov eax, dword [rax + 0x44]
mov dword [rsp + 0xc8], eax
sub eax, 1
mov dword [rdx + 0x44], eax
mov dword [r13 + 0x28], eax
jmp 0x140346e1a
mov dword [rsp + 0x20], edi
mov r9d, edi
mov edx, 0x7d
mov rcx, rsi
mov r8d, dword [rsp + 0xc0]
call fcn.140330de0
mov eax, dword [rbp + 0x38]
jmp 0x14034732f
test r12, r12
mov r14d, 1
jne 0x140346f2f
mov dword [rsp + 0xec], 1
mov r14d, 1
jmp 0x140346f41
mov dword [rsp + 0xec], 1
test r12, r12
je 0x1403483d8
xor eax, eax
test byte [r12 + 0x14], 0x28
setne al
mov dword [rsp + 0xec], eax
test r14b, r14b
jne 0x140349875
test r15d, r15d
jne 0x140348604
xor eax, eax
mov edx, dword [rsp + 0xc8]
mov r8d, edi
cmp word [rsp + 0xe8], 0
mov r9, qword [rsp + 0xf0]
setne al
mov dword [rsp + 0xe8], eax
mov rax, qword [rsp + 0x270]
mov rcx, qword [rax + 0x10]
call fcn.14023c770
movzx edx, word [rbp + 0x3e]
mov eax, dword [rsp + 0xe8]
test dx, dx
je 0x14034922a
mov dword [rsp + 0xe8], edi
mov r14d, 1
mov dword [rsp + 0xf8], 0
jmp 0x140347095
mov rcx, qword [rsp + 0x270]
mov r8d, 0x40
lea rdx, str.at_most__d_tables_in_a_join
call fcn.1402e8400
jmp 0x140345e2a
mov rax, qword [rdi]
xor r9d, r9d
mov edx, ebx
mov rcx, rbp
mov r8d, dword [rdi + 0x28]
mov byte [rsp + 0x58], r11b
mov qword [rsp + 0x20], rax
call fcn.14032ba60
mov eax, dword [r12 + 0x38]
movzx r11d, byte [rsp + 0x58]
jmp 0x140345760
movzx ecx, byte [0x140397be0]
mov r9d, r12d
mov r8d, dword [0x140397be8]
cmp cl, 0x5e
jne 0x1403490b0
mov r11d, dword [0x140397bec]
xor eax, eax
jmp 0x1403484d0
add eax, 1
cmp eax, edx
je 0x140347e56
cmp r12d, r11d
jne 0x1403484c5
lea rdx, [0x140397be0]
jmp 0x140347e3a
xor edx, edx
jmp 0x140345abf
mov r9d, dword [rsi + 0x90]
xor r8d, r8d
mov edx, 9
mov rcx, rsi
add r9d, 2
call fcn.140330e60
mov ecx, dword [rsp + 0xe8]
xor eax, eax
mov edx, dword [rsp + 0x58]
mov r9d, dword [rsp + 0xd0]
mov r8d, dword [rsp + 0xc0]
cmp ecx, 2
setge al
lea eax, [rdx + rax*4 + 2]
lea rdx, [0x140479b70]
cdqe
movzx edx, byte [rdx + rax]
mov eax, ecx
mov rcx, rsi
sub eax, r14d
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0xc8]
mov dword [rsp + 0x20], eax
call fcn.140330ef0
test r12, r12
jne 0x140347134
cmp byte [rsp + 0xb8], 0
jne 0x140349574
mov r14d, edi
jmp 0x140347253
mov eax, dword [rsp + 0xc8]
mov edx, 0x40
mov rcx, rsi
mov dword [rsp + 0x28], edi
mov r9d, dword [rsp + 0xd0]
mov dword [rsp + 0xe0], r10d
mov dword [rsp + 0x20], eax
call fcn.140330ef0
mov rax, qword [rsp + 0x90]
mov rdx, rbx
mov r9d, dword [rsp + 0xd0]
mov r8d, dword [rsp + 0xa0]
mov rcx, qword [rsp + 0x270]
mov qword [rsp + 0x20], rax
call fcn.14024bb10
mov r10d, dword [rsp + 0xe0]
jmp 0x1403470c1
test r11, r11
jne 0x140347f13
jmp 0x140347750
mov ecx, dword [rsp + 0x58]
mov rbp, qword [rax + 8]
test ecx, ecx
je 0x1403480b1
mov rax, rbp
mov rbp, rdi
mov rdi, rax
jmp 0x1403486ae
mov r14d, dword [rsp + 0xc8]
xor r8d, r8d
mov edx, 0x4b
mov rcx, rsi
lea r9d, [rdi + r14]
call fcn.140330e60
mov rax, qword [rsp + 0x270]
lea r8d, [rdi + 1]
mov edx, r14d
mov r9, qword [rsp + 0xf0]
mov dword [rsp + 0xe8], r8d
mov rcx, qword [rax + 0x10]
call fcn.14023c770
movzx edx, word [rbp + 0x3e]
mov dword [rsp + 0xf8], 0
test dx, dx
jne 0x140349ab0
mov r10d, 6
mov r14d, 1
mov r9d, r15d
mov r8d, 1
mov edx, 0x47
mov dword [rsp + 0xe0], r10d
mov rcx, rsi
call fcn.140330e60
mov r10d, dword [rsp + 0xe0]
jmp 0x1403470b4
mov r10d, dword [rsp + 0x58]
mov rax, qword [rbp + 0x48]
xor ebp, ebp
test r10d, r10d
mov rdi, qword [rax]
je 0x140349b97
test rdi, rdi
jne 0x1403480ba
mov rdi, rbp
mov edx, 0x20
jmp 0x1403491bc
cmp qword [rax + 0x308], 0
jne 0x140345826
sub dword [rdx], 1
jne 0x140345826
mov rcx, qword [rdx + 0x10]
call fcn.1402e3840
jmp 0x140345826
mov rdi, qword [rbx]
xor r9d, r9d
mov edx, dword [rsp + 0x68]
mov r8d, dword [rsp + 0xc0]
mov rax, qword [rdi + 0x10]
or byte [rbx + 0x44], 1
mov dword [rsp + 0x20], edx
mov edx, 0x8d
mov rcx, rax
mov qword [rsp + 0x48], rax
call fcn.140330de0
test word [rbx + 0x3c], 0x1020
je 0x140347d41
mov rax, qword [rdi + 0xa8]
test rax, rax
cmove rax, rdi
mov r9d, dword [rax + 0x78]
test r9d, r9d
jne 0x140347d41
mov r15, qword [rsp + 0x78]
mov rcx, qword [rdi]
mov r12, qword [r15 + 0x18]
movsx edx, word [r12 + 0x36]
add edx, 1
movsxd rdx, edx
shl rdx, 2
call fcn.1402e36b0
test rax, rax
mov r14, rax
je 0x140347d41
movsx eax, word [r12 + 0x36]
mov dword [r14], eax
movzx eax, word [r15 + 0x60]
cmp ax, 1
jbe 0x140349d52
mov rdi, qword [rsp + 0x78]
movzx r9d, ax
mov rcx, r12
mov r12, rbx
mov rbx, r9
mov r8, qword [rdi + 8]
mov edi, 1
mov r15, r8
jmp 0x1403487df
test ax, ax
js 0x1403487d2
movsx edx, ax
mov qword [rsp + 0xb8], rcx
call fcn.14032b890
mov rcx, qword [rsp + 0xb8]
movsx rax, ax
mov dword [r14 + rax*4 + 4], edi
add rdi, 1
cmp rdi, rbx
je 0x140349d4f
test byte [rcx + 0x30], 0x20
movzx eax, word [r15 + rdi*2 - 2]
jne 0x1403487ac
test ax, ax
js 0x1403487d2
jmp 0x1403487c9
movzx esi, word [rsp + 0xb2]
test sil, 8
je 0x1403455d1
mov rbx, qword [rsp + 0x278]
mov rdx, qword [rbx + 0x28]
cmp byte [rdx + 0x3f], 1
je 0x1403455d1
test ah, 0x20
je 0x14034882e
and esi, 0x10
je 0x1403455d1
mov r8d, 2
jmp 0x1403455be
mov rcx, qword [rsp + 0x70]
call fcn.14037c610
jmp 0x14034557d
mov rcx, qword [rsp + 0xb8]
call fcn.1402e9090
test eax, eax
je 0x1403471d7
mov r9d, dword [rsp + 0xd0]
mov edx, 0x32
mov rcx, rsi
mov r8d, dword [rsp + 0xd8]
call fcn.140330e60
jmp 0x1403471d7
mov r9d, edi
mov r8d, ebp
mov rcx, rsi
mov edx, 0xd
call fcn.140330e60
mov r8d, dword [r13 + 0x34]
mov r9d, edi
mov rcx, rsi
mov dword [rsp + 0x28], 1
mov edx, 0x40
mov dword [rsp + 0x20], ebp
call fcn.140330ef0
mov rax, qword [rsp + 0x90]
mov r9d, edi
mov rdx, rbx
mov r8d, dword [rsp + 0xa0]
mov rcx, qword [rsp + 0x270]
mov qword [rsp + 0x20], rax
call fcn.14024bb10
jmp 0x140348040
mov r8d, dword [rsp + 0xc0]
xor r9d, r9d
mov edx, 0x88
mov rcx, rsi
mov dword [rsp + 0xc8], r11d
call fcn.140330e60
mov r11d, dword [rsp + 0xc8]
jmp 0x140346e98
movzx edx, word [rsp + 0xe8]
mov rcx, qword [rsp + 0x48]
add rdx, rax
call fcn.1402e3990
mov qword [rsp + 0x100], rax
jmp 0x140346ef4
mov edx, dword [rsp + 0xa0]
mov rcx, qword [rsp + 0x48]
sub eax, edx
lea r12d, [rax - 1]
mov ebp, eax
movsxd rdx, r12d
imul rdx, rdx, 0x68
add rdx, 0x70
call fcn.1402e35d0
test rax, rax
mov r10, rax
mov qword [rsp + 0xc8], rax
je 0x140346a45
lea eax, [r12 + 1]
movzx eax, al
mov dword [r10 + 4], eax
mov dword [r10], eax
movzx eax, dil
imul rax, rax, 0x68
test r12d, r12d
lea rax, [r15 + rax + 8]
mov rcx, qword [rax]
mov qword [r10 + 8], rcx
mov rcx, qword [rax + 8]
mov qword [r10 + 0x10], rcx
mov rcx, qword [rax + 0x10]
mov qword [r10 + 0x18], rcx
mov rcx, qword [rax + 0x18]
mov qword [r10 + 0x20], rcx
mov rcx, qword [rax + 0x20]
mov qword [r10 + 0x28], rcx
mov rcx, qword [rax + 0x28]
mov qword [r10 + 0x30], rcx
mov rcx, qword [rax + 0x30]
mov qword [r10 + 0x38], rcx
mov rcx, qword [rax + 0x38]
mov qword [r10 + 0x40], rcx
mov rcx, qword [rax + 0x40]
mov qword [r10 + 0x48], rcx
mov rcx, qword [rax + 0x48]
mov qword [r10 + 0x50], rcx
mov rcx, qword [rax + 0x50]
mov qword [r10 + 0x58], rcx
mov rcx, qword [rax + 0x58]
mov qword [r10 + 0x60], rcx
mov rax, qword [rax + 0x60]
mov qword [r10 + 0x68], rax
mov rax, qword [rbx + 8]
lea rcx, [rax + 8]
jle 0x140347b14
lea eax, [rbp - 2]
imul rax, rax, 0x68
lea r8, [r13 + 0xb0]
lea rdx, [r10 + 0x70]
lea r9, [r10 + rax + 0xd8]
movzx eax, byte [r8]
add rdx, 0x68
add r8, 0x70
imul rax, rax, 0x68
add rax, rcx
mov r10, qword [rax]
mov qword [rdx - 0x68], r10
mov r10, qword [rax + 8]
mov qword [rdx - 0x60], r10
mov r10, qword [rax + 0x10]
mov qword [rdx - 0x58], r10
mov r10, qword [rax + 0x18]
mov qword [rdx - 0x50], r10
mov r10, qword [rax + 0x20]
mov qword [rdx - 0x48], r10
mov r10, qword [rax + 0x28]
mov qword [rdx - 0x40], r10
mov r10, qword [rax + 0x30]
mov qword [rdx - 0x38], r10
mov r10, qword [rax + 0x38]
mov qword [rdx - 0x30], r10
mov r10, qword [rax + 0x40]
mov qword [rdx - 0x28], r10
mov r10, qword [rax + 0x48]
mov qword [rdx - 0x20], r10
mov r10, qword [rax + 0x50]
mov qword [rdx - 0x18], r10
mov r10, qword [rax + 0x58]
mov qword [rdx - 0x10], r10
mov rax, qword [rax + 0x60]
mov qword [rdx - 8], rax
cmp rdx, r9
jne 0x140348a14
jmp 0x140347b14
and edi, 0xfffffffe
add edi, 0x38
jmp 0x1403481e0
mov dword [rsp + 0x78], 0
mov dword [rsp + 0xb8], 0
mov r9d, dword [rsp + 0xe8]
xor r8d, r8d
mov rcx, rsi
xor edi, edi
mov edx, 0x47
xor ebp, ebp
call fcn.140330e60
mov edx, dword [rbx + 0x84]
mov r15d, eax
cmp edx, 1
jle 0x140348b6a
imul rax, rdi, 0x38
add rax, qword [rbx + 0x90]
cmp qword [rsp + 0xc0], rax
je 0x140348b3b
test word [rax + 0x12], 0x8006
jne 0x140348b3b
test word [rax + 0x14], 0x3fff
je 0x140348b3b
mov rax, qword [rax]
test byte [rax + 6], 0x40
jne 0x140348b3b
mov rcx, qword [rsp + 0x48]
mov rdx, rax
call fcn.140249650
mov rcx, qword [rsp + 0x270]
mov rdx, rbp
mov r8, rax
call fcn.1402e8e00
mov edx, dword [rbx + 0x84]
mov rbp, rax
add rdi, 1
cmp edx, edi
jg 0x140348ae4
test rbp, rbp
je 0x140348b6a
mov rcx, qword [rsp + 0x270]
mov r9, rbp
xor r8d, r8d
mov edx, 0x1002c
call fcn.140313fb0
mov qword [rsp + 0xd0], rax
jmp 0x140348b76
mov qword [rsp + 0xd0], 0
mov rcx, qword [rsp + 0x270]
lea r8, str.MULTI_INDEX_OR
mov edx, 1
call fcn.14033d7b0
mov ecx, dword [r14 + 0x14]
test ecx, ecx
jle 0x140349cd1
xor edx, edx
mov dword [rsp + 0x118], r15d
xor r12d, r12d
mov dword [rsp + 0xd8], 0
mov r15, rdx
mov qword [rsp + 0x100], r13
mov qword [rsp + 0xf0], rbx
imul rax, r12, 0x38
mov ebx, dword [rsp + 0x68]
add rax, qword [r14 + 0x20]
cmp ebx, dword [rax + 0x1c]
je 0x140348be1
test byte [rax + 0x15], 4
je 0x140348d97
mov rdi, qword [rax]
test rdi, rdi
je 0x140348ef9
mov rbx, qword [rsp + 0x48]
mov rdx, rdi
mov rcx, rbx
call fcn.140249650
cmp byte [rbx + 0x67], 0
mov rdi, rax
jne 0x140348d81
mov rax, qword [rsp + 0xd0]
mov rbp, rdi
test rax, rax
je 0x140348c21
mov qword [rax + 0x10], rdi
mov rbp, rax
mov rcx, qword [rsp + 0x270]
lea r9d, [r12 + 1]
mov edx, 1
lea r8, str.INDEX__d
call fcn.14033d7b0
mov eax, dword [rsp + 0xf8]
xor r9d, r9d
mov r8, rbp
mov rbx, qword [rsp + 0xc8]
mov dword [rsp + 0x30], 0x20
mov rcx, qword [rsp + 0x270]
mov qword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
mov dword [rsp + 0x38], eax
mov rdx, rbx
call fcn.140344c70
test rax, rax
mov rbp, rax
je 0x140348d81
mov rcx, qword [rsp + 0x270]
lea r8, [rax + 0x360]
xor r9d, r9d
mov rdx, rbx
call fcn.14034b0f0
mov rax, qword [rsp + 0xf0]
test byte [rax + 0x3c], 0x10
je 0x140348f0d
mov r9d, dword [rsp + 0xe0]
mov edx, 0xa
mov rcx, rsi
mov r8d, dword [rsp + 0xe8]
call fcn.140330e60
movzx edx, byte [rbp + 0x44]
mov eax, 1
test dl, 2
cmove eax, dword [rsp + 0xd8]
mov dword [rsp + 0xd8], eax
mov rax, qword [rbp + 0x3c0]
test byte [rax + 0x39], 2
je 0x140348d15
test r12, r12
mov rax, qword [rax + 0x20]
je 0x140348ed0
cmp r15, rax
je 0x140348ed0
xor r15d, r15d
and edx, 1
je 0x140348d29
mov rax, qword [rsp + 0xf0]
or byte [rax + 0x44], 1
mov rcx, rbp
call fcn.140349ef0
mov rax, qword [rsp + 0x270]
movsxd rax, dword [rax + 0x140]
test eax, eax
je 0x140348d73
mov rbx, qword [rsp + 0x270]
lea rdx, [0x140397be0]
mov rcx, qword [rbx + 0x10]
mov r8, qword [rcx]
cmp byte [r8 + 0x67], 0
jne 0x140348d70
lea rdx, [rax + rax*2]
mov rax, qword [rcx + 0x88]
lea rdx, [rax + rdx*8]
mov eax, dword [rdx + 8]
mov rbx, qword [rsp + 0x270]
mov dword [rbx + 0x140], eax
test rdi, rdi
je 0x140348d93
mov rcx, qword [rsp + 0x48]
mov rdx, rdi
call fcn.1402ee4e0
mov ecx, dword [r14 + 0x14]
add r12, 1
cmp ecx, r12d
jg 0x140348bc6
mov rax, qword [rsp + 0x270]
mov rdx, r15
mov r13, qword [rsp + 0x100]
mov r15d, dword [rsp + 0x118]
mov rbx, qword [rsp + 0xf0]
movsxd rax, dword [rax + 0x140]
test eax, eax
je 0x140348df6
mov rdi, qword [rsp + 0x270]
lea rcx, [0x140397be0]
mov r8, qword [rdi + 0x10]
mov r9, qword [r8]
cmp byte [r9 + 0x67], 0
je 0x1403491d1
mov eax, dword [rcx + 8]
mov rdi, qword [rsp + 0x270]
test rdx, rdx
mov dword [rdi + 0x140], eax
mov qword [r13 + 0x50], rdx
je 0x140348e18
mov eax, dword [rsp + 0xf8]
mov dword [r13 + 8], eax
mov rax, qword [rsp + 0xd0]
test rax, rax
je 0x140348e3a
mov rcx, qword [rsp + 0x48]
mov qword [rax + 0x10], 0
mov rdx, rax
call fcn.1402ee4e0
mov rcx, qword [rsi]
lea rax, [0x140397be0]
mov edx, dword [rsi + 0x90]
cmp byte [rcx + 0x67], 0
jne 0x140348e62
mov rax, qword [rsi + 0x88]
movsxd r12, r15d
lea rcx, [r12 + r12*2]
lea rax, [rax + rcx*8]
mov r9d, dword [r13 + 0xc]
xor r8d, r8d
mov dword [rax + 4], edx
mov rcx, rsi
mov edx, 9
call fcn.140330e60
mov edx, dword [rsp + 0xe0]
mov rcx, rsi
call fcn.140342370
mov eax, dword [rsi + 0x90]
mov dword [r13 + 0x48], eax
cmp byte [rbx + 0x40], 1
jbe 0x140348eaa
mov rdx, qword [rsp + 0xc8]
mov rcx, qword [rsp + 0x48]
call fcn.1402e3440
mov r10d, dword [rsp + 0xd8]
test r10d, r10d
jne 0x1403462b6
mov rdx, qword [rsp + 0xc0]
mov rcx, r13
call fcn.140244fe0
jmp 0x1403462b6
mov rbx, qword [rsp + 0x58]
mov r15, rax
test byte [rbx + 0x30], 0x80
je 0x140348d18
movzx eax, byte [rax + 0x64]
and eax, 3
cmp al, 2
mov eax, 0
cmove r15, rax
jmp 0x140348d18
mov rax, qword [rsp + 0x48]
cmp byte [rax + 0x67], 0
je 0x140348c0a
jmp 0x140348d97
mov eax, dword [r14 + 0x14]
mov ebx, 0xffffffff
sub eax, 1
cmp eax, r12d
mov rax, qword [rsp + 0x58]
cmovne ebx, r12d
mov dword [rsp + 0xfc], ebx
test byte [rax + 0x30], 0x80
jne 0x1403495d1
mov r13d, dword [rsp + 0x78]
mov edx, 0x87
mov rcx, rsi
mov r8d, dword [rsp + 0x68]
mov r9d, r13d
call fcn.140330e60
xor r9d, r9d
mov edx, 0x2f
mov rcx, rsi
mov r8d, dword [rsp + 0xb8]
mov dword [rsp + 0x20], r13d
call fcn.140330de0
mov edx, eax
mov dword [rsp + 0xec], eax
mov rax, qword [rsi]
cmp byte [rax + 0x67], 0
je 0x140349199
mov r9d, dword [rsp + 0xe0]
mov edx, 0xa
mov rcx, rsi
mov r8d, dword [rsp + 0xe8]
call fcn.140330e60
mov ebx, dword [rsp + 0xec]
test ebx, ebx
je 0x140348cd7
mov rcx, qword [rsi]
lea rax, [0x140397be0]
mov edx, dword [rsi + 0x90]
cmp byte [rcx + 0x67], 0
jne 0x140348fd7
movsxd rax, ebx
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x88]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
jmp 0x140348cd7
mov rax, qword [rdx + 0x20]
mov rax, qword [rax + 0x20]
mov eax, dword [rax]
cmp eax, 1
jle 0x1403480e7
mov rax, qword [rsp + 0x270]
movzx eax, byte [rax + 0x1f]
test al, al
je 0x140349299
mov rdi, qword [rsp + 0x270]
sub eax, 1
mov byte [rdi + 0x1f], al
movzx eax, al
mov rcx, rdi
mov r8d, dword [rdi + rax*4 + 0xe4]
mov r9d, 1
mov dword [rsp + 0x48], r8d
call fcn.14023e170
movzx eax, byte [r14]
mov r8d, dword [rsp + 0x48]
sub eax, 0x37
and eax, 2
mov edi, r8d
or eax, 1
movzx edx, byte [rsp + rax + 0x170]
jmp 0x140348128
cmp byte [r15 + 0x43], 2
je 0x140345841
mov rdx, qword [rsp + 0xa8]
movsxd rax, dword [rdx + 0x90]
test eax, eax
jle 0x140345841
mov rcx, qword [rdx + 0x88]
lea rax, [rax + rax*2]
mov r8d, 2
lea rax, [rcx + rax*8]
mov word [rax - 0x16], r8w
jmp 0x140345841
lea edx, [r9 - 1]
movsxd rdx, edx
lea r8, [rdx + rdx*2]
mov rdx, qword [rsi + 0x88]
lea rdx, [rdx + r8*8]
jmp 0x1403471ba
xor eax, eax
jmp 0x1403490c3
add eax, 1
cmp eax, edx
je 0x140347e56
cmp cl, 0x87
jne 0x1403490b8
cmp r12d, r8d
je 0x1403490dd
add eax, 1
cmp edx, eax
je 0x140347e56
cmp r12d, r8d
jne 0x1403490cd
lea rdx, [0x140397be0]
mov r11d, dword [rdx + 0xc]
mov eax, 0x87
jmp 0x140347e43
sub eax, 1
cdqe
lea r8, [rax + rax*2]
mov rax, qword [rsi + 0x88]
lea r8, [rax + r8*8]
jmp 0x140346fb9
movzx ecx, byte [0x140397be0]
mov r9d, r12d
mov r8d, dword [0x140397be8]
cmp cl, 0x5e
jne 0x140349153
mov ecx, dword [0x140397bec]
jmp 0x140349134
add eax, 1
cmp edx, eax
je 0x140347905
cmp ecx, r12d
jne 0x140349129
lea rdx, [0x140397be0]
jmp 0x1403478e7
add eax, 1
cmp edx, eax
je 0x140347905
cmp cl, 0x87
jne 0x140349148
jmp 0x140349165
add eax, 1
cmp edx, eax
je 0x140347905
cmp r8d, r12d
jne 0x14034915a
lea rdx, [0x140397be0]
mov eax, dword [rdx + 0xc]
mov ecx, 0x87
jmp 0x1403478f3
test r11, r11
je 0x1403476e2
mov rcx, qword [rsp + 0x48]
mov rdx, r11
call fcn.1402ee4e0
jmp 0x1403476e2
movsxd rax, edx
lea rdx, [rax + rax*2]
mov rax, qword [rsi + 0x88]
lea rax, [rax + rdx*8]
mov byte [rax + 1], 0xfd
mov dword [rax + 0x10], ebx
jmp 0x140348f83
mov edx, 0x20
mov r8d, dword [rsp + 0x68]
mov rcx, rsi
mov rbp, rdi
call fcn.140330e60
jmp 0x140348150
lea rcx, [rax + rax*2]
mov rax, qword [r8 + 0x88]
lea rcx, [rax + rcx*8]
jmp 0x140348df3
mov edx, 0x24
mov rcx, rsi
call fcn.140330e60
mov eax, 0x27
jmp 0x140345b74
test al, 0x40
je 0x1403455d1
movzx edx, word [rsp + 0xb2]
and eax, 0xffffffbf
mov dword [rcx + 0x38], eax
shr dx, 3
and edx, 1
lea esi, [rdx*8]
mov byte [rsp + 0x78], sil
jmp 0x1403455d1
lea r10d, [rax*4 + 2]
mov dword [rsp + 0xe8], edi
mov r14d, 1
mov dword [rsp + 0xf8], 0
jmp 0x1403470b4
imul rax, rsi, 0x68
mov rax, qword [r14 + rax + 0x58]
test rax, rax
je 0x140349d16
bsr rax, rax
lea r8d, [rax + 1]
mov rcx, qword [rsp + 0xa8]
mov r9d, 0xfffffffd
movsxd r8, r8d
mov edx, 0xffffffff
mov byte [rsp + 0x58], r11b
call fcn.140331c00
mov eax, dword [r12 + 0x38]
movzx r11d, byte [rsp + 0x58]
jmp 0x140345732
mov rax, qword [rsp + 0x270]
mov eax, dword [rax + 0x38]
lea r8d, [rax + 1]
mov dword [rsp + 0x48], eax
mov rax, qword [rsp + 0x270]
mov dword [rax + 0x38], r8d
mov rcx, rax
jmp 0x140349022
mov rsi, qword [rsp + 0x70]
mov rcx, rsi
call fcn.140382aa0
movzx esi, byte [rsi + 0x40]
mov r15, rax
mov dword [rsp + 0xa4], esi
mov eax, esi
jmp 0x14034806a
mov rax, qword [rsp + 0x270]
xor r8d, r8d
mov edx, 0x4b
mov rcx, rsi
mov rdi, qword [rsp + 0x270]
mov eax, dword [rax + 0x38]
mov dword [rsp + 0x78], eax
add eax, 1
mov dword [rdi + 0x38], eax
mov r9d, eax
mov dword [rsp + 0xb8], eax
call fcn.140330e60
mov rax, qword [rsp + 0x270]
mov rdi, qword [rsp + 0x270]
mov eax, dword [rax + 0x38]
add eax, 1
mov dword [rsp + 0x78], eax
mov dword [rdi + 0x38], eax
jmp 0x140348ab6
mov rax, qword [rax + 0x10]
test rax, rax
je 0x14034600b
mov r9d, dword [rax + 4]
test r9d, 0x82000
jne 0x140345ff1
movzx esi, byte [rax]
lea r9d, [rsi + 0x59]
and r9d, 0xfd
jne 0x14034600b
cmp r15d, dword [rax + 0x2c]
jne 0x14034600b
cmp word [rax + 0x30], 0
jns 0x14034600b
mov rax, qword [rsp + 0x70]
mov byte [rax + 0x43], 1
jmp 0x140345375
mov r9d, 0xffffffff
jmp 0x140347cf7
mov r10d, dword [rdi]
mov rax, qword [r12 + 0x40]
test r10d, r10d
mov r9, qword [rax + rsi*8]
jle 0x140349517
lea r8, [rsi + rsi]
mov qword [rsp + 0x288], rbx
mov rax, r13
xor r14d, r14d
mov rbx, r8
mov r8, qword [rsp + 0x288]
mov r13, rsi
mov rsi, r9
mov r9, rax
nop dword [rax + rax]
mov rax, r14
shl rax, 5
mov rcx, qword [rdi + rax + 8]
test rcx, rcx
mov rax, rcx
je 0x140349420
nop dword [rax]
mov edx, dword [rax + 4]
test edx, 0x82000
je 0x14034945c
and edx, 0x80000
je 0x140349448
mov rax, qword [rax + 0x20]
mov rax, qword [rax + 8]
test rax, rax
jne 0x1403493f8
nop dword [rax + rax]
add r14, 1
cmp r10d, r14d
jg 0x1403493e0
movzx eax, word [r12 + 0x5e]
mov rbx, r8
mov r13, r9
cmp ebp, eax
jne 0x140346040
jmp 0x140349387
mov rax, qword [rax + 0x10]
test rax, rax
je 0x140349420
mov edx, dword [rax + 4]
test edx, 0x82000
jne 0x140349403
movzx edx, byte [rax]
add edx, 0x59
and edx, 0xfd
jne 0x140349420
mov rdx, qword [r12 + 8]
movzx edx, word [rdx + rbx]
cmp word [rax + 0x30], dx
jne 0x140349420
cmp r15d, dword [rax + 0x2c]
jne 0x140349420
mov rdx, rcx
mov rcx, qword [rsp + 0x270]
mov qword [rsp + 0x48], r9
mov qword [rsp + 0x288], r8
call fcn.1402ed910
mov r8, qword [rsp + 0x288]
test rax, rax
mov r9, qword [rsp + 0x48]
je 0x140349d02
mov r11, qword [rax]
lea r10, [0x14047c700]
xor eax, eax
jmp 0x1403494d3
movzx ecx, byte [r10 + rcx]
cmp byte [r10 + rdx], cl
jne 0x140349bab
add rax, 1
movzx edx, byte [r11 + rax]
movzx ecx, byte [rsi + rax]
cmp edx, ecx
jne 0x1403494c0
test edx, edx
jne 0x1403494cf
mov rax, qword [r12 + 8]
mov qword [rsp + 0x288], r8
mov r8, rbx
mov rsi, r13
mov rbx, qword [rsp + 0x288]
mov r13, r9
movsx rdx, word [rax + r8]
test edx, edx
mov rax, rdx
jns 0x140349522
cmp edx, 0xffffffff
je 0x1403460ca
movzx eax, word [r12 + 0x5e]
jmp 0x140349435
mov rdx, qword [r12 + 0x18]
lea rax, [rax + rax*2]
mov r9, qword [rdx + 8]
lea rax, [r9 + rax*8]
test byte [rax + 8], 0xf
jne 0x1403460ca
jmp 0x140349517
cmp byte [rsp + 0xb8], 0
je 0x14034856a
mov eax, dword [rsp + 0xc8]
xor r8d, r8d
mov edx, 0x4b
mov rcx, rsi
lea r9d, [rdi + rax]
call fcn.140330e60
mov dword [rsp + 0xec], 0
lea r14d, [rdi + 1]
jmp 0x140347253
mov rax, qword [rsp + 0xb8]
mov rax, qword [rax + 0x20]
mov rax, qword [rax + 0x20]
mov eax, dword [rax]
cmp eax, 1
jle 0x140347248
mov dword [rsp + 0xec], 1
jmp 0x140347253
test r12, r12
je 0x140349abb
mov dword [rsp + 0xe0], 0
mov rax, qword [r12]
mov rax, qword [rax + 0x18]
mov qword [rsp + 0xb8], rax
jmp 0x14034715b
mov r10, qword [rax + 0x10]
test r10, r10
jne 0x1403495ed
jmp 0x140349d85
mov r10, qword [r10 + 0x28]
test r10, r10
je 0x140392fa4
movzx eax, byte [r10 + 0x64]
and eax, 3
cmp al, 2
jne 0x1403495e0
movzx r13d, word [r10 + 0x5e]
xor r11d, r11d
mov rcx, qword [rsp + 0x270]
mov edx, r13d
movd xmm6, r13d
call fcn.14030ae00
test r13d, r13d
lea edx, [r13 + rax]
movd xmm5, eax
mov ebx, eax
mov dword [rsp + 0xec], edx
punpckldq xmm6, xmm5
je 0x140349698
mov qword [rsp + 0x108], rdi
mov rbx, r10
mov rdi, r11
mov qword [rsp + 0x110], rbp
mov ebp, eax
mov dword [rsp + 0x11c], eax
mov rdx, qword [rbx + 8]
mov rcx, rsi
mov r8d, dword [rsp + 0x68]
movsx r9d, word [rdx + rdi]
mov dword [rsp + 0x20], ebp
add ebp, 1
add rdi, 2
mov rdx, qword [rsp + 0x58]
call fcn.1402e9be0
mov eax, dword [rsp + 0xec]
cmp ebp, eax
jne 0x140349650
mov rdi, qword [rsp + 0x108]
mov rbp, qword [rsp + 0x110]
mov ebx, dword [rsp + 0x11c]
mov ecx, dword [rsp + 0xfc]
test ecx, ecx
jne 0x1403499f0
mov eax, dword [rsp + 0x78]
mov r9d, r13d
mov r8d, ebx
mov edx, 0x61
mov rcx, rsi
mov dword [rsp + 0x20], eax
call fcn.140330de0
mov r9d, dword [rsp + 0x78]
mov dword [rsp + 0x20], ebx
mov rcx, rsi
mov r8d, dword [rsp + 0xb8]
mov dword [rsp + 0x28], r13d
mov edx, 0x8a
call fcn.140330ef0
mov dword [rsp + 0xec], 0
cmp r13d, 1
je 0x1403499dc
mov rax, qword [rsp + 0x270]
cmp r13d, dword [rax + 0x28]
jle 0x140348f83
movq qword [rax + 0x28], xmm6
jmp 0x140348f83
mov rcx, qword [rsp + 0xe0]
call fcn.1402e9090
test eax, eax
je 0x140346fd7
mov r9d, dword [rsp + 0xd0]
mov edx, 0x32
mov rcx, rsi
mov r8d, dword [rsp + 0x118]
call fcn.140330e60
jmp 0x140346fd7
mov rax, qword [rsp + 0xb8]
mov rax, qword [rax + 0x20]
mov eax, dword [rax]
jmp 0x14034958f
mov r9d, dword [rsi + 0x90]
mov r8d, r15d
mov edx, 0x11
mov rcx, rsi
mov dword [rsp + 0xb8], r10d
lea r12, [0x140476630]
add r9d, 3
call fcn.140330e60
movsxd rax, dword [rsp + 0xb8]
mov dword [rsp + 0x28], r14d
mov rcx, rsi
mov r9d, dword [rsp + 0xd0]
mov r8d, dword [rsp + 0xc0]
movzx edx, byte [r12 + rax]
mov eax, dword [rsp + 0xc8]
mov dword [rsp + 0x20], eax
call fcn.140330ef0
mov r11d, dword [rsp + 0xe0]
mov r9d, dword [rsi + 0x90]
test r11d, r11d
je 0x140347f7b
mov rax, qword [rsi]
cmp byte [rax + 0x67], 0
je 0x140347f3f
mov dword [0x140397be8], r9d
jmp 0x140347f7b
mov rax, qword [rsp + 0xe0]
mov rax, qword [rax + 0x20]
mov rax, qword [rax + 0x20]
mov eax, dword [rax]
cmp eax, 1
jle 0x14034703f
mov r8d, dword [rsp + 0xe8]
mov r14d, 1
mov dword [rsp + 0xf8], 0
jmp 0x140347062
mov rax, qword [rsp + 0xe0]
mov rax, qword [rax + 0x20]
mov eax, dword [rax]
jmp 0x140349802
mov rcx, qword [rax + 0x20]
mov rcx, qword [rcx + 0x20]
cmp dword [rcx], 1
jle 0x1403481c1
cmp dword [rsp + 0x58], 1
sbb edi, edi
and edi, 0xfffffffe
add edi, 0x38
jmp 0x1403481fd
mov rcx, qword [rax + 0x20]
cmp dword [rcx], 1
jg 0x14034984a
jmp 0x1403481c1
mov rax, qword [rdx + 0x20]
mov eax, dword [rax]
jmp 0x140348fe9
mov eax, dword [rsp + 0xc8]
xor r8d, r8d
mov rcx, rsi
xor r14d, r14d
mov edx, 0x4b
lea r9d, [rdi + rax]
call fcn.140330e60
lea eax, [rdi + 1]
mov r8d, edi
mov dword [rsp + 0xf8], 1
mov dword [rsp + 0xe8], eax
jmp 0x140347062
mov r9d, r15d
xor r8d, r8d
mov edx, 0x47
mov rcx, rsi
call fcn.140330e60
jmp 0x140348338
mov rax, qword [rax + 0x20]
mov rax, qword [rax + 0x20]
mov eax, dword [rax]
cmp eax, 1
jle 0x1403481f2
jmp 0x1403481fd
mov dword [rsp + 0xec], 1
jmp 0x140346f41
mov r10, qword [rsp + 0x78]
movzx edx, word [rsp + 0xe8]
mov rcx, qword [r10 + 8]
movsx rcx, word [rcx + rdx*2]
test ecx, ecx
mov rdx, rcx
js 0x1403499c8
mov rcx, qword [r10 + 0x18]
lea rdx, [rdx + rdx*2]
mov r14, qword [rcx + 8]
lea rdx, [r14 + rdx*8]
test byte [rdx + 8], 0xf
sete r14b
jmp 0x140346e07
mov rax, qword [rsp + 0x270]
mov edx, 0x47
mov rcx, rsi
mov r8d, 1
mov dword [rsp + 0xd0], r11d
mov eax, dword [rax + 0x38]
lea r9d, [rax + 1]
mov dword [rsp + 0xc8], eax
mov rax, qword [rsp + 0x270]
mov dword [rax + 0x38], r9d
mov dword [r13 + 0x2c], r9d
call fcn.140330e60
mov eax, dword [rsi + 0x90]
mov rcx, qword [rsp + 0x78]
mov r11d, dword [rsp + 0xd0]
mov dword [r13 + 0x30], eax
mov eax, dword [r13 + 0x2c]
mov rcx, qword [rcx + 0x38]
lea edx, [rax + rax]
movzx eax, word [rsp + 0xe8]
mov dword [r13 + 0x2c], edx
cmp byte [rcx + rax], 1
mov ecx, dword [rsp + 0x58]
sete al
movzx eax, al
xor eax, ecx
or eax, edx
mov dword [r13 + 0x2c], eax
mov eax, dword [rbp + 0x38]
jmp 0x140346df5
mov dword [rsp + 0x58], 1
jmp 0x1403468fc
cmp ecx, 0xfffffffe
sete r14b
jmp 0x140346e07
lea ebp, [rsi + 1]
jmp 0x140349435
mov rcx, qword [rsp + 0x270]
mov edx, ebx
call fcn.14031e010
jmp 0x140348f83
xor r9d, r9d
mov edx, 0x1d
mov dword [rsp + 0x20], ebx
mov rcx, rsi
mov r8d, dword [rsp + 0xb8]
call fcn.140330de0
mov edx, eax
mov dword [rsp + 0xec], eax
mov rax, qword [rsi]
cmp byte [rax + 0x67], 0
jne 0x140349a38
movsxd rax, edx
lea rdx, [rax + rax*2]
mov rax, qword [rsi + 0x88]
lea rax, [rax + rdx*8]
mov byte [rax + 1], 0xfd
mov dword [rax + 0x10], r13d
cmp dword [rsp + 0xfc], 0xffffffff
je 0x1403496f0
mov eax, dword [rsp + 0x78]
mov r9d, r13d
mov r8d, ebx
mov edx, 0x61
mov rcx, rsi
mov dword [rsp + 0x20], eax
call fcn.140330de0
mov r9d, dword [rsp + 0x78]
mov dword [rsp + 0x20], ebx
mov rcx, rsi
mov r8d, dword [rsp + 0xb8]
mov dword [rsp + 0x28], r13d
mov edx, 0x8a
call fcn.140330ef0
movsxd rax, dword [rsi + 0x90]
test eax, eax
jle 0x1403496f0
mov r11, qword [rsi + 0x88]
lea rax, [rax + rax*2]
mov edx, 0x10
lea rax, [r11 + rax*8]
mov word [rax - 0x16], dx
jmp 0x1403496f0
mov r14d, 1
jmp 0x140347090
cmp byte [rsp + 0xb8], 0
mov dword [rsp + 0xe0], 0
je 0x14034856a
test r15d, r15d
jne 0x140349574
jmp 0x14034954e
mov rax, qword [rsp + 0x78]
xor r9d, r9d
mov edx, 0x7c
mov rcx, rsi
mov dword [rsp + 0x118], r10d
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
call fcn.140330e60
mov r10d, dword [rsp + 0x118]
cmp qword [rsp + 0xd8], 0
mov dword [rsp + 0xe0], eax
je 0x1403470f1
mov edx, dword [rsi + 0x90]
test edx, edx
jle 0x140349b62
mov rcx, qword [rsi + 0x88]
movsxd rax, edx
mov r8d, 1
lea rax, [rax + rax*2]
lea rax, [rcx + rax*8]
mov word [rax - 0x16], r8w
mov rcx, qword [rsi]
lea rax, [0x140397be0]
add edx, 1
cmp byte [rcx + 0x67], 0
jne 0x140349b8c
movsxd rax, dword [rsp + 0xe0]
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x88]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
jmp 0x1403470e6
mov rdi, rbp
mov edx, 0x24
jmp 0x1403491bc
mov ebx, 0xffff8000
jmp 0x14034567d
mov r10d, dword [rdi]
jmp 0x140349420
mov rdi, qword [rbx + 0x10]
test rdi, rdi
je 0x140349d4a
mov qword [rsp + 0x48], rbp
mov rbp, rsi
jmp 0x140349bd7
mov rdi, qword [rdi + 0x28]
test rdi, rdi
je 0x140349d1e
cmp byte [rdi + 0x62], 0
je 0x140349bca
cmp qword [rdi + 0x48], 0
jne 0x140349bca
movzx edx, word [rdi + 0x5e]
cmp dx, 3
ja 0x140349bca
movzx eax, byte [rdi + 0x64]
mov r8d, eax
and r8d, 8
cmp r8b, 1
sbb esi, esi
and esi, 0xffffff80
add esi, 0x82
test dx, dx
je 0x140349d31
xor ebx, ebx
mov rdx, qword [rsp + 0x50]
mov qword [rsp + 0x28], rdi
mov r9d, ebx
mov r8d, r14d
mov dword [rsp + 0x20], esi
mov rcx, r13
mov r12d, ebx
call fcn.140384c10
test rax, rax
jne 0x140349c4d
jmp 0x140349c71
mov rcx, r13
call fcn.140384d30
test rax, rax
je 0x140349c71
cmp qword [rax + 0x28], 0
jne 0x140349c40
mov rdx, qword [rbp + 0x48]
mov qword [rdx + rbx*8], rax
movzx eax, word [rdi + 0x5e]
lea rdx, [rbx + 1]
cmp eax, edx
jle 0x140349d41
mov rbx, rdx
jmp 0x140349c13
movzx eax, word [rdi + 0x5e]
cmp eax, r12d
jne 0x140349bca
mov rsi, rbp
movzx eax, byte [rdi + 0x64]
mov rbp, qword [rsp + 0x48]
test al, 0x20
mov dword [rsi + 0x38], 0x1201
jne 0x140349ca7
mov rax, qword [rbp + 0x58]
mov edx, 0x1201
and rax, qword [rdi + 0x90]
jne 0x140349cb3
mov dword [rsi + 0x38], 0x1241
mov edx, 0x1241
mov r13d, 0x27
mov word [rsi + 0x3c], r12w
mov word [rsi + 0x18], r12w
mov qword [rsi + 0x20], rdi
mov word [rsi + 0x14], r13w
jmp 0x140345d7e
mov rax, qword [rsp + 0x270]
xor edx, edx
mov dword [rsp + 0xd8], 0
movsxd rax, dword [rax + 0x140]
test eax, eax
jne 0x140348dd2
mov qword [r13 + 0x50], 0
jmp 0x140348e18
mov rax, qword [rsp + 0x270]
mov rax, qword [rax]
mov rax, qword [rax + 0x10]
jmp 0x1403494b2
xor r8d, r8d
jmp 0x140349269
mov edx, dword [rbp + 0x38]
mov rsi, rbp
test edx, edx
je 0x140345383
jmp 0x140345d7e
mov rsi, rbp
xor r12d, r12d
mov rbp, qword [rsp + 0x48]
jmp 0x140349c8a
lea r12d, [rbx + 1]
jmp 0x140349c75
mov edx, dword [rsi + 0x38]
jmp 0x140349d24
mov rbx, r12
mov rcx, qword [rsp + 0x48]
mov r9d, 0xfffffff2
mov r8, r14
xor edi, edi
mov edx, 0xffffffff
call fcn.140331c00
jmp 0x140347348
jmp 0x140392f70
jmp 0x140392f9a
jmp 0x140392f7a
jmp 0x140392f84
jmp 0x140392fa4
movzx eax, word [0x5e]
ud2
movzx eax, word [0x5e]
ud2
mov rax, qword [rsp + 0x270]
add dword [rax + 0x34], 1
movzx eax, word [0x5e]
ud2
movzx eax, word [0x5e]
ud2
movzx eax, word [0x5e]
ud2