Function at 0x1401a8d60
Capabilities:
Encode data using base64

Disassembly:
mov qword [rsp + 0x18], r8
mov dword [rsp + 0x10], edx
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
mov eax, 0x12c0
call fcn.1400a04ba
sub rsp, rax
lea rbp, [rsp + 0x40]
lea rdi, [rsp + 0x40]
mov ecx, 0x350
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov rcx, qword [rsp + 0x12e8]
mov rax, qword [0x14022f6c0]
xor rax, rbp
mov qword [rbp + 0x1270], rax
lea rcx, [0x140242c60]
call fcn.1400a1a40
mov dword [rbp + 0x224], 0
mov dword [rbp + 0x244], 0
mov qword [rbp + 0x268], 0
mov rax, qword [rbp + 0x12a0]
mov rax, qword [rax]
mov qword [rbp + 0x148], rax
mov rax, qword [rbp + 0x148]
mov rax, qword [rax + 0x10]
mov qword [rbp + 0x188], rax
mov rax, qword [rbp + 0x12a0]
add rax, 0x68
mov qword [rbp + 0x108], rax
mov rax, qword [rbp + 0x148]
mov rax, qword [rax]
mov qword [rbp + 0x168], rax
movsxd rax, dword [rbp + 0x12a8]
imul rax, rax, 0x58
mov rcx, qword [rbp + 0x12a0]
lea rax, [rcx + rax + 0x398]
mov qword [rbp + 0xc8], rax
mov rax, qword [rbp + 0xc8]
mov rax, qword [rax + 0x48]
mov qword [rbp + 0xe8], rax
mov rax, qword [rbp + 0x12a0]
mov rax, qword [rax + 8]
mov rcx, qword [rbp + 0xc8]
movzx ecx, byte [rcx + 0x2c]
imul rcx, rcx, 0x70
lea rax, [rax + rcx + 8]
mov qword [rbp + 0x1a8], rax
mov rax, qword [rbp + 0x1a8]
mov eax, dword [rax + 0x44]
mov dword [rbp + 0x44], eax
mov rax, qword [rbp + 0x12a0]
add rax, 0x290
mov edx, dword [rbp + 0x44]
mov rcx, rax
call fcn.1401ad980
not rax
mov rcx, qword [rbp + 0x12b0]
and rcx, rax
mov rax, rcx
mov rcx, qword [rbp + 0xc8]
mov qword [rcx + 0x50], rax
mov eax, dword [rbp + 0x12a8]
mov rcx, qword [rbp + 0x12a0]
mov qword [rbp + 0x1268], rcx
movzx ecx, al
mov rax, qword [rbp + 0x1268]
mov rax, qword [rax + 0x58]
shr rax, cl
and rax, 1
mov dword [rbp + 0xa4], eax
mov rax, qword [rbp + 0xe8]
mov eax, dword [rax + 0x28]
and eax, 0x40
test eax, eax
je 0x1401a8f15
mov rax, qword [rbp + 0x12a0]
movzx eax, word [rax + 0x40]
and eax, 0x20
test eax, eax
jne 0x1401a8f15
mov dword [rbp + 0x1264], 1
jmp 0x1401a8f1f
mov dword [rbp + 0x1264], 0
mov eax, dword [rbp + 0x1264]
mov dword [rbp + 0x84], eax
mov rcx, qword [rbp + 0x188]
call fcn.14019b6e0
mov dword [rbp + 0x1264], eax
mov rax, qword [rbp + 0xc8]
mov ecx, dword [rbp + 0x1264]
mov dword [rax + 0x10], ecx
mov rax, qword [rbp + 0xc8]
mov ecx, dword [rbp + 0x1264]
mov dword [rax + 0xc], ecx
mov eax, dword [rbp + 0x1264]
mov dword [rbp + 0x1c4], eax
mov rcx, qword [rbp + 0x188]
call fcn.14019b6e0
mov dword [rbp + 0x1264], eax
mov rax, qword [rbp + 0xc8]
mov ecx, dword [rbp + 0x1264]
mov dword [rax + 0x18], ecx
mov eax, dword [rbp + 0x1264]
mov dword [rbp + 0x204], eax
mov rax, qword [rbp + 0xc8]
movzx eax, byte [rax + 0x2c]
test eax, eax
jle 0x1401a9011
mov eax, 0x70
imul rax, rax, 0
mov rcx, qword [rbp + 0x1a8]
movzx eax, byte [rcx + rax + 0x3c]
and eax, 8
test eax, eax
je 0x1401a9011
mov rax, qword [rbp + 0x148]
mov eax, dword [rax + 0x38]
inc eax
mov dword [rbp + 0x1264], eax
mov rax, qword [rbp + 0x148]
mov ecx, dword [rbp + 0x1264]
mov dword [rax + 0x38], ecx
mov rax, qword [rbp + 0xc8]
mov ecx, dword [rbp + 0x1264]
mov dword [rax], ecx
mov rax, qword [rbp + 0xc8]
mov r9d, dword [rax]
xor r8d, r8d
mov edx, 0x43
mov rcx, qword [rbp + 0x188]
call fcn.14018b6a0
mov eax, dword [rbp + 0x12a8]
mov dword [rbp + 4], eax
jmp 0x1401a9024
mov eax, dword [rbp + 4]
dec eax
mov dword [rbp + 4], eax
cmp dword [rbp + 4], 0
jle 0x1401a9045
movsxd rax, dword [rbp + 4]
imul rax, rax, 0x58
mov rcx, qword [rbp + 0x12a0]
cmp dword [rcx + rax + 0x398], 0
jne 0x1401a9045
jmp 0x1401a901c
movsxd rax, dword [rbp + 4]
imul rax, rax, 0x58
mov rcx, qword [rbp + 0x12a0]
mov eax, dword [rcx + rax + 0x3a4]
mov dword [rbp + 0x1e4], eax
mov rax, qword [rbp + 0x1a8]
mov eax, dword [rax + 0x40]
shr eax, 4
and eax, 1
test eax, eax
je 0x1401a90e7
mov rax, qword [rbp + 0x1a8]
mov eax, dword [rax + 0x34]
mov dword [rbp + 0x2a4], eax
mov rax, qword [rbp + 0x1a8]
mov eax, dword [rax + 0x30]
mov dword [rsp + 0x20], eax
xor r9d, r9d
mov r8d, dword [rbp + 0x2a4]
mov edx, 0xf
mov rcx, qword [rbp + 0x188]
call fcn.14018b720
mov r9d, dword [rbp + 0x1c4]
mov r8d, dword [rbp + 0x2a4]
mov edx, 0x10
mov rcx, qword [rbp + 0x188]
call fcn.14018b6a0
mov rcx, qword [rbp + 0xc8]
mov dword [rcx + 0x34], eax
mov rax, qword [rbp + 0xc8]
mov byte [rax + 0x2d], 0xd
jmp 0x1401ab367
mov rax, qword [rbp + 0xe8]
mov eax, dword [rax + 0x28]
and eax, 0x400
test eax, eax
je 0x1401a9546
mov rax, qword [rbp + 0xe8]
movzx eax, word [rax + 0x2c]
mov dword [rbp + 0x304], eax
mov rcx, qword [rbp + 0x148]
call fcn.140154d50
mov eax, dword [rbp + 0x304]
add eax, 2
mov edx, eax
mov rcx, qword [rbp + 0x148]
call fcn.1401634b0
mov dword [rbp + 0x2c4], eax
mov rax, qword [rbp + 0xc8]
mov eax, dword [rax + 0xc]
mov dword [rbp + 0x2e4], eax
mov dword [rbp + 4], 0
jmp 0x1401a9159
mov eax, dword [rbp + 4]
inc eax
mov dword [rbp + 4], eax
mov eax, dword [rbp + 0x304]
cmp dword [rbp + 4], eax
jge 0x1401a9231
mov eax, dword [rbp + 0x2c4]
mov ecx, dword [rbp + 4]
lea eax, [rax + rcx + 2]
mov dword [rbp + 0x344], eax
movsxd rax, dword [rbp + 4]
mov rcx, qword [rbp + 0xe8]
mov rcx, qword [rcx + 0x38]
mov rax, qword [rcx + rax*8]
mov qword [rbp + 0x128], rax
cmp qword [rbp + 0x128], 0
jne 0x1401a91a1
jmp 0x1401a9151
mov rax, qword [rbp + 0x128]
movzx eax, word [rax + 0x14]
and eax, 1
test eax, eax
je 0x1401a91f7
mov eax, dword [rbp + 0x344]
mov dword [rsp + 0x28], eax
mov eax, dword [rbp + 0xa4]
mov dword [rsp + 0x20], eax
mov r9d, dword [rbp + 4]
mov r8, qword [rbp + 0xc8]
mov rdx, qword [rbp + 0x128]
mov rcx, qword [rbp + 0x148]
call fcn.140106100
mov rax, qword [rbp + 0xc8]
mov eax, dword [rax + 0x10]
mov dword [rbp + 0x2e4], eax
jmp 0x1401a922c
mov rax, qword [rbp + 0x128]
mov rax, qword [rax]
mov rax, qword [rax + 0x18]
mov qword [rbp + 0x368], rax
mov r9d, 1
mov r8d, dword [rbp + 0x344]
mov rdx, qword [rbp + 0x368]
mov rcx, qword [rbp + 0x148]
call fcn.140106920
jmp 0x1401a9151
mov r9d, dword [rbp + 0x2c4]
mov rax, qword [rbp + 0xe8]
mov r8d, dword [rax + 0x18]
mov edx, 0x43
mov rcx, qword [rbp + 0x188]
call fcn.14018b6a0
mov eax, dword [rbp + 0x2c4]
inc eax
mov r9d, eax
mov r8d, dword [rbp + 0x304]
mov edx, 0x43
mov rcx, qword [rbp + 0x188]
call fcn.14018b6a0
mov rax, qword [rbp + 0xe8]
movzx eax, byte [rax + 0x1c]
test eax, eax
je 0x1401a9292
mov dword [rbp + 0x1264], 0xfffffff9
jmp 0x1401a929c
mov dword [rbp + 0x1264], 0xffffffff
mov eax, dword [rbp + 0x1264]
mov dword [rsp + 0x30], eax
mov rax, qword [rbp + 0xe8]
mov rax, qword [rax + 0x20]
mov qword [rsp + 0x28], rax
mov eax, dword [rbp + 0x2c4]
mov dword [rsp + 0x20], eax
mov r9d, dword [rbp + 0x2e4]
mov r8d, dword [rbp + 0x44]
mov edx, VariantTimeToDosDateTime
mov rcx, qword [rbp + 0x188]
call fcn.14018b880
mov rax, qword [rbp + 0xe8]
mov byte [rax + 0x1c], 0
mov rax, qword [rbp + 0xc8]
mov ecx, dword [rbp + 0x44]
mov dword [rax + 0x30], ecx
mov rax, qword [rbp + 0x12a0]
movzx eax, byte [rax + 0x45]
test eax, eax
je 0x1401a930f
mov dword [rbp + 0x1264], 0xa9
jmp 0x1401a9319
mov dword [rbp + 0x1264], 0x3d
mov rax, qword [rbp + 0xc8]
movzx ecx, byte [rbp + 0x1264]
mov byte [rax + 0x2d], cl
mov rcx, qword [rbp + 0x188]
call fcn.14018ca50
mov rcx, qword [rbp + 0xc8]
mov dword [rcx + 0x34], eax
mov rax, qword [rbp + 0xc8]
mov eax, dword [rax + 0x38]
mov dword [rbp + 0x324], eax
mov eax, dword [rbp + 0x304]
dec eax
mov dword [rbp + 4], eax
jmp 0x1401a9365
mov eax, dword [rbp + 4]
dec eax
mov dword [rbp + 4], eax
cmp dword [rbp + 4], 0
jl 0x1401a9535
movsxd rax, dword [rbp + 4]
mov rcx, qword [rbp + 0xe8]
mov rcx, qword [rcx + 0x38]
mov rax, qword [rcx + rax*8]
mov qword [rbp + 0x128], rax
cmp dword [rbp + 4], 0x10
jge 0x1401a93be
mov rax, qword [rbp + 0xe8]
movzx eax, word [rax + 0x1e]
mov ecx, dword [rbp + 4]
sar eax, cl
and eax, 1
test eax, eax
je 0x1401a93be
mov rdx, qword [rbp + 0x128]
mov rcx, qword [rbp + 0xc8]
call fcn.14010d760
jmp 0x1401a9530
mov rax, qword [rbp + 0x128]
movzx eax, word [rax + 0x14]
and eax, 1
test eax, eax
je 0x1401a9530
mov rax, qword [rbp + 0x168]
movzx eax, byte [rax + 0x61]
test eax, eax
jne 0x1401a945a
mov eax, dword [rbp + 0x324]
dec eax
mov dword [rbp + 0x324], eax
movsxd rax, dword [rbp + 0x324]
imul rax, rax, 0xc
mov rcx, qword [rbp + 0xc8]
mov rcx, qword [rcx + 0x40]
mov edx, dword [rcx + rax + 4]
mov rcx, qword [rbp + 0x188]
call fcn.140199cb0
mov qword [rbp + 0x3c8], rax
mov rax, qword [rbp + 0x3c8]
movzx eax, byte [rax]
mov rcx, qword [rbp + 0x3c8]
mov ecx, dword [rcx + 0xc]
mov dword [rsp + 0x20], ecx
mov rcx, qword [rbp + 0x3c8]
mov r9d, dword [rcx + 8]
mov rcx, qword [rbp + 0x3c8]
mov r8d, dword [rcx + 4]
mov edx, eax
mov rcx, qword [rbp + 0x188]
call fcn.14018b720
xor r9d, r9d
xor r8d, r8d
mov edx, 0x35
mov rcx, qword [rbp + 0x148]
call fcn.14016ec90
mov qword [rbp + 0x388], rax
cmp qword [rbp + 0x388], 0
je 0x1401a9530
mov rax, qword [rbp + 0x128]
mov rax, qword [rax]
mov rcx, qword [rbp + 0x388]
mov rax, qword [rax + 0x10]
mov qword [rcx + 0x10], rax
xor r8d, r8d
mov edx, 0x9a
mov rcx, qword [rbp + 0x168]
call fcn.140153b10
mov qword [rbp + 0x3a8], rax
mov rax, qword [rbp + 0x388]
mov rcx, qword [rbp + 0x3a8]
mov qword [rax + 0x18], rcx
cmp qword [rbp + 0x3a8], 0
je 0x1401a950e
mov eax, dword [rbp + 0x2c4]
mov ecx, dword [rbp + 4]
lea eax, [rax + rcx + 2]
mov rcx, qword [rbp + 0x3a8]
mov dword [rcx + 0x2c], eax
xor r9d, r9d
mov rax, qword [rbp + 0xc8]
mov r8d, dword [rax + 0x18]
mov rdx, qword [rbp + 0x388]
mov rcx, qword [rbp + 0x148]
call fcn.140159d30
mov rax, qword [rbp + 0x388]
mov qword [rax + 0x10], 0
mov rdx, qword [rbp + 0x388]
mov rcx, qword [rbp + 0x168]
call fcn.140159820
jmp 0x1401a935d
mov rcx, qword [rbp + 0x148]
call fcn.140154c90
jmp 0x1401ab367
mov rax, qword [rbp + 0xe8]
mov eax, dword [rax + 0x28]
and eax, 0x100
test eax, eax
je 0x1401a968a
mov rax, qword [rbp + 0xe8]
mov eax, dword [rax + 0x28]
and eax, 5
test eax, eax
je 0x1401a968a
mov eax, 8
imul rax, rax, 0
mov rcx, qword [rbp + 0xe8]
mov rcx, qword [rcx + 0x38]
mov rax, qword [rax + rcx]
mov qword [rbp + 0x128], rax
mov rax, qword [rbp + 0x148]
mov eax, dword [rax + 0x38]
inc eax
mov dword [rbp + 0x1264], eax
mov rax, qword [rbp + 0x148]
mov ecx, dword [rbp + 0x1264]
mov dword [rax + 0x38], ecx
mov eax, dword [rbp + 0x1264]
mov dword [rbp + 0x244], eax
mov eax, dword [rbp + 0x244]
mov dword [rsp + 0x28], eax
mov eax, dword [rbp + 0xa4]
mov dword [rsp + 0x20], eax
xor r9d, r9d
mov r8, qword [rbp + 0xc8]
mov rdx, qword [rbp + 0x128]
mov rcx, qword [rbp + 0x148]
call fcn.140106100
mov dword [rbp + 0x224], eax
mov eax, dword [rbp + 0x244]
cmp dword [rbp + 0x224], eax
je 0x1401a9616
mov edx, dword [rbp + 0x244]
mov rcx, qword [rbp + 0x148]
call fcn.14017c380
mov rax, qword [rbp + 0xc8]
mov eax, dword [rax + 0x10]
mov dword [rbp + 0x64], eax
mov eax, dword [rbp + 0x224]
mov dword [rsp + 0x20], eax
mov r9d, dword [rbp + 0x64]
mov r8d, dword [rbp + 0x44]
mov edx, 0x1f
mov rcx, qword [rbp + 0x188]
call fcn.14018b720
mov r8d, 1
mov edx, dword [rbp + 0x224]
mov rcx, qword [rbp + 0x148]
call fcn.140154a80
mov r9d, dword [rbp + 0x224]
mov r8d, 0xffffffff
mov edx, dword [rbp + 0x44]
mov rcx, qword [rbp + 0x148]
call fcn.140154e70
mov rax, qword [rbp + 0xc8]
mov byte [rax + 0x2d], 0xa9
jmp 0x1401ab367
mov rax, qword [rbp + 0xe8]
mov eax, dword [rax + 0x28]
and eax, 0x100
test eax, eax
je 0x1401a9b52
mov rax, qword [rbp + 0xe8]
mov eax, dword [rax + 0x28]
and eax, 2
test eax, eax
je 0x1401a9b52
mov dword [rbp + 0x3e4], 0xa9
mov dword [rbp + 0x424], 0
mov dword [rbp + 4], 0
mov qword [rbp + 0x468], 0
mov rax, qword [rbp + 0x468]
mov qword [rbp + 0x448], rax
mov rax, qword [rbp + 0xe8]
mov eax, dword [rax + 0x28]
and eax, 0x20
test eax, eax
je 0x1401a971d
movsxd rax, dword [rbp + 4]
mov rcx, qword [rbp + 0xe8]
mov rcx, qword [rcx + 0x38]
mov rax, qword [rcx + rax*8]
mov qword [rbp + 0x448], rax
mov eax, dword [rbp + 4]
inc eax
mov dword [rbp + 4], eax
mov rax, qword [rbp + 0xe8]
mov eax, dword [rax + 0x28]
and eax, 0x10
test eax, eax
je 0x1401a9750
movsxd rax, dword [rbp + 4]
mov rcx, qword [rbp + 0xe8]
mov rcx, qword [rcx + 0x38]
mov rax, qword [rcx + rax*8]
mov qword [rbp + 0x468], rax
mov eax, dword [rbp + 4]
inc eax
mov dword [rbp + 4], eax
cmp dword [rbp + 0xa4], 0
je 0x1401a9783
mov rax, qword [rbp + 0x448]
mov qword [rbp + 0x128], rax
mov rax, qword [rbp + 0x468]
mov qword [rbp + 0x448], rax
mov rax, qword [rbp + 0x128]
mov qword [rbp + 0x468], rax
cmp qword [rbp + 0x448], 0
je 0x1401a98e0
mov byte [rbp + 0x504], 0x1b
mov byte [rbp + 0x505], 0x19
mov byte [rbp + 0x506], 0x18
mov byte [rbp + 0x507], 0x1a
mov rax, qword [rbp + 0x448]
mov rax, qword [rax]
mov qword [rbp + 0x488], rax
mov rax, qword [rbp + 0x488]
mov rcx, qword [rax + 0x18]
call fcn.14015b470
test eax, eax
je 0x1401a9839
mov rcx, qword [rbp + 0x148]
call fcn.1401635c0
mov dword [rbp + 0x4c4], eax
mov eax, dword [rbp + 0x4c4]
mov dword [rbp + 0x4a4], eax
mov r9d, 1
mov r8d, dword [rbp + 0x4a4]
mov rax, qword [rbp + 0x488]
mov rdx, qword [rax + 0x18]
mov rcx, qword [rbp + 0x148]
call fcn.140106920
mov rax, qword [rbp + 0x488]
movzx eax, byte [rax]
sub eax, 0x37
and eax, 3
or eax, 1
cdqe
movzx eax, byte [rbp + rax + 0x504]
mov dword [rbp + 0x4e4], eax
jmp 0x1401a988d
lea r8, [rbp + 0x4c4]
mov rax, qword [rbp + 0x488]
mov rdx, qword [rax + 0x18]
mov rcx, qword [rbp + 0x148]
call fcn.140158c20
mov dword [rbp + 0x4a4], eax
mov rdx, qword [rbp + 0x448]
mov rcx, qword [rbp + 0xc8]
call fcn.14010d760
mov rax, qword [rbp + 0x488]
movzx eax, byte [rax]
sub eax, 0x36
cdqe
movzx eax, byte [rbp + rax + 0x504]
mov dword [rbp + 0x4e4], eax
mov eax, dword [rbp + 0x4a4]
mov dword [rsp + 0x20], eax
mov r9d, dword [rbp + 0x1c4]
mov r8d, dword [rbp + 0x44]
mov edx, dword [rbp + 0x4e4]
mov rcx, qword [rbp + 0x188]
call fcn.14018b720
mov r8d, 1
mov edx, dword [rbp + 0x4a4]
mov rcx, qword [rbp + 0x148]
call fcn.140154a80
mov edx, dword [rbp + 0x4c4]
mov rcx, qword [rbp + 0x148]
call fcn.14017c380
jmp 0x1401a991c
cmp dword [rbp + 0xa4], 0
je 0x1401a98f5
mov dword [rbp + 0x1264], 0x21
jmp 0x1401a98ff
mov dword [rbp + 0x1264], 0x25
mov r9d, dword [rbp + 0x1e4]
mov r8d, dword [rbp + 0x44]
mov edx, dword [rbp + 0x1264]
mov rcx, qword [rbp + 0x188]
call fcn.14018b6a0
cmp qword [rbp + 0x468], 0
je 0x1401a9a3e
mov rax, qword [rbp + 0x468]
mov rax, qword [rax]
mov qword [rbp + 0x528], rax
mov rax, qword [rbp + 0x148]
mov eax, dword [rax + 0x38]
inc eax
mov dword [rbp + 0x1264], eax
mov rax, qword [rbp + 0x148]
mov ecx, dword [rbp + 0x1264]
mov dword [rax + 0x38], ecx
mov eax, dword [rbp + 0x1264]
mov dword [rbp + 0x424], eax
mov r9d, 1
mov r8d, dword [rbp + 0x424]
mov rax, qword [rbp + 0x528]
mov rdx, qword [rax + 0x18]
mov rcx, qword [rbp + 0x148]
call fcn.140106920
mov rax, qword [rbp + 0x528]
mov rcx, qword [rax + 0x18]
call fcn.14015b470
test eax, eax
jne 0x1401a99ec
mov rax, qword [rbp + 0x528]
movzx eax, byte [rax]
cmp eax, 0x38
je 0x1401a99bf
mov rax, qword [rbp + 0x528]
movzx eax, byte [rax]
cmp eax, 0x36
jne 0x1401a99ec
cmp dword [rbp + 0xa4], 0
je 0x1401a99d4
mov dword [rbp + 0x1264], 0x37
jmp 0x1401a99de
mov dword [rbp + 0x1264], 0x39
mov eax, dword [rbp + 0x1264]
mov dword [rbp + 0x3e4], eax
jmp 0x1401a9a17
cmp dword [rbp + 0xa4], 0
je 0x1401a9a01
mov dword [rbp + 0x1264], 0x38
jmp 0x1401a9a0b
mov dword [rbp + 0x1264], 0x36
mov eax, dword [rbp + 0x1264]
mov dword [rbp + 0x3e4], eax
mov rax, qword [rbp + 0x528]
mov rcx, qword [rax + 0x18]
call fcn.14015b470
test eax, eax
jne 0x1401a9a3e
mov rdx, qword [rbp + 0x468]
mov rcx, qword [rbp + 0xc8]
call fcn.14010d760
mov rcx, qword [rbp + 0x188]
call fcn.14018ca50
mov dword [rbp + 0x404], eax
cmp dword [rbp + 0xa4], 0
je 0x1401a9a65
mov dword [rbp + 0x1264], 6
jmp 0x1401a9a6f
mov dword [rbp + 0x1264], 7
mov rax, qword [rbp + 0xc8]
movzx ecx, byte [rbp + 0x1264]
mov byte [rax + 0x2d], cl
mov rax, qword [rbp + 0xc8]
mov ecx, dword [rbp + 0x44]
mov dword [rax + 0x30], ecx
mov rax, qword [rbp + 0xc8]
mov ecx, dword [rbp + 0x404]
mov dword [rax + 0x34], ecx
cmp dword [rbp + 0x3e4], 0xa9
je 0x1401a9b4d
mov rax, qword [rbp + 0x148]
mov eax, dword [rax + 0x38]
inc eax
mov dword [rbp + 0x1264], eax
mov rax, qword [rbp + 0x148]
mov ecx, dword [rbp + 0x1264]
mov dword [rax + 0x38], ecx
mov eax, dword [rbp + 0x1264]
mov dword [rbp + 0x224], eax
mov r9d, dword [rbp + 0x224]
mov r8d, dword [rbp + 0x44]
mov edx, 0x7d
mov rcx, qword [rbp + 0x188]
call fcn.14018b6a0
mov r9d, dword [rbp + 0x224]
mov r8d, 0xffffffff
mov edx, dword [rbp + 0x44]
mov rcx, qword [rbp + 0x148]
call fcn.140154e70
mov eax, dword [rbp + 0x224]
mov dword [rsp + 0x20], eax
mov r9d, dword [rbp + 0x1c4]
mov r8d, dword [rbp + 0x424]
mov edx, dword [rbp + 0x3e4]
mov rcx, qword [rbp + 0x188]
call fcn.14018b720
mov dx, 0x53
mov rcx, qword [rbp + 0x188]
call fcn.14018c410
jmp 0x1401ab367
mov rax, qword [rbp + 0xe8]
mov eax, dword [rax + 0x28]
and eax, 0x200
test eax, eax
je 0x1401aa867
mov rax, qword [rbp + 0xe8]
movzx eax, word [rax + 0x18]
mov word [rbp + 0x544], ax
mov rax, qword [rbp + 0xe8]
movzx eax, word [rax + 0x1a]
mov word [rbp + 0x564], ax
mov rax, qword [rbp + 0xe8]
movzx eax, word [rax + 0x1c]
mov word [rbp + 0x584], ax
mov qword [rbp + 0x5c8], 0
mov qword [rbp + 0x5e8], 0
mov dword [rbp + 0x6a4], 0
mov qword [rbp + 0x708], 0
mov byte [rbp + 0x724], 0
mov byte [rbp + 0x744], 0
mov rax, qword [rbp + 0xe8]
mov rax, qword [rax + 0x20]
mov qword [rbp + 0x268], rax
mov rax, qword [rbp + 0xc8]
mov eax, dword [rax + 8]
mov dword [rbp + 0x684], eax
mov rax, qword [rbp + 0x12a0]
movzx eax, word [rax + 0x40]
and eax, 1
test eax, eax
je 0x1401a9c42
mov rax, qword [rbp + 0x12a0]
movsx eax, byte [rax + 0x43]
test eax, eax
jle 0x1401a9c42
mov rax, qword [rbp + 0x268]
movzx eax, word [rax + 0x5e]
movzx ecx, word [rbp + 0x544]
cmp eax, ecx
jle 0x1401a9c42
mov byte [rbp + 0x724], 1
mov dword [rbp + 0x6a4], 1
movzx eax, word [rbp + 0x544]
mov dword [rbp + 4], eax
mov rax, qword [rbp + 0xe8]
mov eax, dword [rax + 0x28]
and eax, 0x20
test eax, eax
je 0x1401a9cbd
movsxd rax, dword [rbp + 4]
mov rcx, qword [rbp + 0xe8]
mov rcx, qword [rcx + 0x38]
mov rax, qword [rcx + rax*8]
mov qword [rbp + 0x5c8], rax
mov eax, dword [rbp + 4]
inc eax
mov dword [rbp + 4], eax
mov rax, qword [rbp + 0xe8]
movzx eax, word [rax + 0x1a]
cmp dword [rbp + 0x6a4], eax
jle 0x1401a9ca0
mov eax, dword [rbp + 0x6a4]
mov dword [rbp + 0x1264], eax
jmp 0x1401a9cb1
mov rax, qword [rbp + 0xe8]
movzx eax, word [rax + 0x1a]
mov dword [rbp + 0x1264], eax
mov eax, dword [rbp + 0x1264]
mov dword [rbp + 0x6a4], eax
mov rax, qword [rbp + 0xe8]
mov eax, dword [rax + 0x28]
and eax, 0x10
test eax, eax
je 0x1401a9e79
movsxd rax, dword [rbp + 4]
mov rcx, qword [rbp + 0xe8]
mov rcx, qword [rcx + 0x38]
mov rax, qword [rcx + rax*8]
mov qword [rbp + 0x5e8], rax
mov eax, dword [rbp + 4]
inc eax
mov dword [rbp + 4], eax
mov rax, qword [rbp + 0xe8]
movzx eax, word [rax + 0x1c]
cmp dword [rbp + 0x6a4], eax
jle 0x1401a9d15
mov eax, dword [rbp + 0x6a4]
mov dword [rbp + 0x1264], eax
jmp 0x1401a9d26
mov rax, qword [rbp + 0xe8]
movzx eax, word [rax + 0x1c]
mov dword [rbp + 0x1264], eax
mov eax, dword [rbp + 0x1264]
mov dword [rbp + 0x6a4], eax
mov rax, qword [rbp + 0x5e8]
movzx eax, word [rax + 0x12]
and eax, 0x100
test eax, eax
je 0x1401a9e23
mov rax, qword [rbp + 0x148]
mov eax, dword [rax + 0x38]
inc eax
mov dword [rbp + 0x1264], eax
mov rax, qword [rbp + 0x148]
mov ecx, dword [rbp + 0x1264]
mov dword [rax + 0x38], ecx
mov rax, qword [rbp + 0xc8]
mov ecx, dword [rbp + 0x1264]
mov dword [rax + 0x24], ecx
mov rax, qword [rbp + 0xc8]
mov r9d, dword [rax + 0x24]
mov r8d, 1
mov edx, 0x43
mov rcx, qword [rbp + 0x188]
call fcn.14018b6a0
mov rcx, qword [rbp + 0x188]
call fcn.14018ca50
mov rcx, qword [rbp + 0xc8]
mov dword [rcx + 0x28], eax
mov rax, qword [rbp + 0xc8]
mov eax, dword [rax + 0x24]
shl eax, 1
mov rcx, qword [rbp + 0xc8]
mov dword [rcx + 0x24], eax
movzx eax, word [rbp + 0x544]
mov rcx, qword [rbp + 0x268]
mov rcx, qword [rcx + 0x38]
movzx eax, byte [rcx + rax]
cmp eax, 1
jne 0x1401a9df1
mov dword [rbp + 0x1264], 1
jmp 0x1401a9dfb
mov dword [rbp + 0x1264], 0
mov eax, dword [rbp + 0x1264]
mov ecx, dword [rbp + 0xa4]
xor ecx, eax
mov eax, ecx
mov rcx, qword [rbp + 0xc8]
mov ecx, dword [rcx + 0x24]
or ecx, eax
mov eax, ecx
mov rcx, qword [rbp + 0xc8]
mov dword [rcx + 0x24], eax
cmp qword [rbp + 0x5c8], 0
jne 0x1401a9e79
movzx eax, word [rbp + 0x544]
mov rcx, qword [rbp + 0x268]
mov rcx, qword [rcx + 8]
movsx eax, word [rcx + rax*2]
mov dword [rbp + 4], eax
cmp dword [rbp + 4], 0
jl 0x1401a9e6c
mov rax, qword [rbp + 0x268]
mov rax, qword [rax + 0x18]
movsxd rcx, dword [rbp + 4]
imul rcx, rcx, 0x20
mov rax, qword [rax + 8]
movzx eax, byte [rax + rcx + 0x18]
test eax, eax
je 0x1401a9e72
cmp dword [rbp + 4], 0xfffffffe
jne 0x1401a9e79
mov byte [rbp + 0x724], 1
movzx eax, word [rbp + 0x544]
mov rcx, qword [rbp + 0x268]
movzx ecx, word [rcx + 0x5e]
cmp eax, ecx
jge 0x1401a9ecd
movzx eax, word [rbp + 0x544]
mov rcx, qword [rbp + 0x268]
mov rcx, qword [rcx + 0x38]
movzx eax, byte [rcx + rax]
test eax, eax
jne 0x1401a9eb5
mov dword [rbp + 0x1264], 1
jmp 0x1401a9ebf
mov dword [rbp + 0x1264], 0
mov eax, dword [rbp + 0x1264]
cmp dword [rbp + 0xa4], eax
je 0x1401a9ef0
cmp dword [rbp + 0xa4], 0
je 0x1401a9f6a
mov rax, qword [rbp + 0x268]
movzx eax, word [rax + 0x5e]
movzx ecx, word [rbp + 0x544]
cmp eax, ecx
jne 0x1401a9f6a
mov rax, qword [rbp + 0x5e8]
mov qword [rbp + 0x768], rax
mov rax, qword [rbp + 0x5c8]
mov qword [rbp + 0x5e8], rax
mov rax, qword [rbp + 0x768]
mov qword [rbp + 0x5c8], rax
movzx eax, byte [rbp + 0x724]
mov byte [rbp + 0x784], al
movzx eax, byte [rbp + 0x744]
mov byte [rbp + 0x724], al
movzx eax, byte [rbp + 0x784]
mov byte [rbp + 0x744], al
movzx eax, byte [rbp + 0x564]
mov byte [rbp + 0x7a4], al
movzx eax, word [rbp + 0x584]
mov word [rbp + 0x564], ax
movzx eax, byte [rbp + 0x7a4]
mov word [rbp + 0x584], ax
lea rax, [rbp + 0x6e8]
mov qword [rsp + 0x20], rax
mov r9d, dword [rbp + 0x6a4]
mov r8d, dword [rbp + 0xa4]
mov rdx, qword [rbp + 0xc8]
mov rcx, qword [rbp + 0x148]
call fcn.140105210
mov dword [rbp + 0x5a4], eax
cmp qword [rbp + 0x6e8], 0
je 0x1401a9fdc
movzx eax, word [rbp + 0x584]
test eax, eax
je 0x1401a9fdc
movzx eax, word [rbp + 0x544]
mov rcx, qword [rbp + 0x6e8]
add rcx, rax
mov rax, rcx
mov rdx, rax
mov rcx, qword [rbp + 0x168]
call fcn.14014fb20
mov qword [rbp + 0x708], rax
mov rax, qword [rbp + 0xc8]
mov eax, dword [rax + 0x10]
mov dword [rbp + 0x64], eax
cmp qword [rbp + 0x5c8], 0
je 0x1401aa011
mov rax, qword [rbp + 0x5c8]
movzx eax, word [rax + 0x14]
and eax, 0x28
test eax, eax
jne 0x1401aa011
mov dword [rbp + 0x1264], 0
jmp 0x1401aa01b
mov dword [rbp + 0x1264], 1
mov eax, dword [rbp + 0x1264]
mov dword [rbp + 0x604], eax
cmp qword [rbp + 0x5e8], 0
je 0x1401aa04f
mov rax, qword [rbp + 0x5e8]
movzx eax, word [rax + 0x14]
and eax, 0x28
test eax, eax
jne 0x1401aa04f
mov dword [rbp + 0x1264], 0
jmp 0x1401aa059
mov dword [rbp + 0x1264], 1
mov eax, dword [rbp + 0x1264]
mov dword [rbp + 0x624], eax
cmp qword [rbp + 0x5c8], 0
jne 0x1401aa086
movzx eax, word [rbp + 0x544]
test eax, eax
jg 0x1401aa086
mov dword [rbp + 0x1264], 0
jmp 0x1401aa090
mov dword [rbp + 0x1264], 1
mov eax, dword [rbp + 0x1264]
mov dword [rbp + 0x644], eax
movzx eax, word [rbp + 0x544]
mov dword [rbp + 0x664], eax
cmp qword [rbp + 0x5c8], 0
je 0x1401aa1e7
mov rax, qword [rbp + 0x5c8]
mov rax, qword [rax]
mov rax, qword [rax + 0x18]
mov qword [rbp + 0x7c8], rax
movzx eax, word [rbp + 0x564]
movzx ecx, word [rbp + 0x544]
mov edx, dword [rbp + 0x5a4]
add edx, ecx
mov ecx, edx
mov r9d, eax
mov r8d, ecx
mov rdx, qword [rbp + 0x7c8]
mov rcx, qword [rbp + 0x148]
call fcn.140106920
mov r8, qword [rbp + 0x5c8]
mov rdx, qword [rbp + 0xc8]
mov rcx, qword [rbp + 0x188]
call fcn.1401c1bc0
mov rax, qword [rbp + 0x5c8]
movzx eax, word [rax + 0x12]
and eax, 0
test eax, eax
jne 0x1401aa162
mov rcx, qword [rbp + 0x7c8]
call fcn.140155050
test eax, eax
je 0x1401aa162
movzx eax, word [rbp + 0x544]
mov ecx, dword [rbp + 0x5a4]
add ecx, eax
mov eax, ecx
mov r9d, dword [rbp + 0x64]
mov r8d, eax
mov edx, 0x32
mov rcx, qword [rbp + 0x188]
call fcn.14018b6a0
cmp qword [rbp + 0x6e8], 0
je 0x1401aa198
movzx eax, word [rbp + 0x544]
mov rcx, qword [rbp + 0x6e8]
add rcx, rax
mov rax, rcx
movzx ecx, word [rbp + 0x564]
mov r8, rax
mov edx, ecx
mov rcx, qword [rbp + 0x7c8]
call fcn.1401b2660
movzx eax, word [rbp + 0x564]
mov ecx, dword [rbp + 0x664]
add ecx, eax
mov eax, ecx
mov dword [rbp + 0x664], eax
mov rcx, qword [rbp + 0x7c8]
call fcn.14015b470
test eax, eax
jne 0x1401aa1d4
mov rdx, qword [rbp + 0x5c8]
mov rcx, qword [rbp + 0xc8]
call fcn.14010d760
jmp 0x1401aa1de
mov dword [rbp + 0x604], 1
mov byte [rbp + 0x724], 0
jmp 0x1401aa23c
movzx eax, byte [rbp + 0x724]
test eax, eax
je 0x1401aa23c
movzx eax, word [rbp + 0x544]
mov ecx, dword [rbp + 0x5a4]
add ecx, eax
mov eax, ecx
mov r9d, eax
xor r8d, r8d
mov edx, 0x46
mov rcx, qword [rbp + 0x188]
call fcn.14018b6a0
mov eax, dword [rbp + 0x664]
inc eax
mov dword [rbp + 0x664], eax
mov dword [rbp + 0x604], 0
mov dword [rbp + 0x644], 1
movzx eax, byte [rbp + 0x724]
mov ecx, dword [rbp + 0x664]
sub ecx, eax
mov eax, ecx
mov r9, qword [rbp + 0x6e8]
mov r8d, eax
mov edx, dword [rbp + 0x5a4]
mov rcx, qword [rbp + 0x148]
call fcn.140105790
mov rax, qword [rbp + 0xe8]
movzx eax, word [rax + 0x2e]
test eax, eax
jle 0x1401aa28d
mov rax, qword [rbp + 0xe8]
movzx eax, word [rax + 0x2e]
cmp dword [rbp + 0x664], eax
jne 0x1401aa28d
jmp 0x1401aa2e9
mov eax, dword [rbp + 0xa4]
mov ecx, dword [rbp + 0x604]
lea eax, [rax + rcx*2]
mov ecx, dword [rbp + 0x644]
lea eax, [rax + rcx*4]
cdqe
lea rcx, [0x1401f76d8]
movzx eax, byte [rcx + rax]
mov dword [rbp + 0x6c4], eax
mov eax, dword [rbp + 0x664]
mov dword [rsp + 0x28], eax
mov eax, dword [rbp + 0x5a4]
mov dword [rsp + 0x20], eax
mov r9d, dword [rbp + 0x64]
mov r8d, dword [rbp + 0x684]
mov edx, dword [rbp + 0x6c4]
mov rcx, qword [rbp + 0x188]
call fcn.14018ba10
movzx eax, word [rbp + 0x544]
mov dword [rbp + 0x664], eax
cmp qword [rbp + 0x5e8], 0
je 0x1401aa472
mov rax, qword [rbp + 0x5e8]
mov rax, qword [rax]
mov rax, qword [rax + 0x18]
mov qword [rbp + 0x7e8], rax
movzx eax, word [rbp + 0x544]
mov ecx, dword [rbp + 0x5a4]
add ecx, eax
mov eax, ecx
mov r8d, 1
mov edx, eax
mov rcx, qword [rbp + 0x148]
call fcn.140154da0
movzx eax, word [rbp + 0x584]
movzx ecx, word [rbp + 0x544]
mov edx, dword [rbp + 0x5a4]
add edx, ecx
mov ecx, edx
mov r9d, eax
mov r8d, ecx
mov rdx, qword [rbp + 0x7e8]
mov rcx, qword [rbp + 0x148]
call fcn.140106920
mov r8, qword [rbp + 0x5e8]
mov rdx, qword [rbp + 0xc8]
mov rcx, qword [rbp + 0x188]
call fcn.1401c1bc0
mov rax, qword [rbp + 0x5e8]
movzx eax, word [rax + 0x12]
and eax, 0
test eax, eax
jne 0x1401aa3d4
mov rcx, qword [rbp + 0x7e8]
call fcn.140155050
test eax, eax
je 0x1401aa3d4
movzx eax, word [rbp + 0x544]
mov ecx, dword [rbp + 0x5a4]
add ecx, eax
mov eax, ecx
mov r9d, dword [rbp + 0x64]
mov r8d, eax
mov edx, 0x32
mov rcx, qword [rbp + 0x188]
call fcn.14018b6a0
cmp qword [rbp + 0x708], 0
je 0x1401aa42a
movzx eax, word [rbp + 0x584]
mov r8, qword [rbp + 0x708]
mov edx, eax
mov rcx, qword [rbp + 0x7e8]
call fcn.1401b2660
movzx eax, word [rbp + 0x584]
movzx ecx, word [rbp + 0x544]
mov edx, dword [rbp + 0x5a4]
add edx, ecx
mov ecx, edx
mov r9, qword [rbp + 0x708]
mov r8d, eax
mov edx, ecx
mov rcx, qword [rbp + 0x148]
call fcn.140105790
movzx eax, word [rbp + 0x584]
mov ecx, dword [rbp + 0x664]
add ecx, eax
mov eax, ecx
mov dword [rbp + 0x664], eax
mov rcx, qword [rbp + 0x7e8]
call fcn.14015b470
test eax, eax
jne 0x1401aa466
mov rdx, qword [rbp + 0x5e8]
mov rcx, qword [rbp + 0xc8]
call fcn.14010d760
jmp 0x1401aa470
mov dword [rbp + 0x624], 1
jmp 0x1401aa4e2
movzx eax, byte [rbp + 0x744]
test eax, eax
je 0x1401aa4e2
movzx eax, word [rbp + 0x544]
mov ecx, dword [rbp + 0x5a4]
add ecx, eax
mov eax, ecx
mov r9d, eax
xor r8d, r8d
mov edx, 0x46
mov rcx, qword [rbp + 0x188]
call fcn.14018b6a0
movzx eax, word [rbp + 0x544]
mov ecx, dword [rbp + 0x5a4]
add ecx, eax
mov eax, ecx
mov r8d, 1
mov edx, eax
mov rcx, qword [rbp + 0x148]
call fcn.140154da0
mov dword [rbp + 0x624], 0
mov eax, dword [rbp + 0x664]
inc eax
mov dword [rbp + 0x664], eax
mov rdx, qword [rbp + 0x6e8]
mov rcx, qword [rbp + 0x168]
call fcn.14014f2d0
mov rdx, qword [rbp + 0x708]
mov rcx, qword [rbp + 0x168]
call fcn.14014f2d0
mov rcx, qword [rbp + 0x188]
call fcn.14018ca50
mov rcx, qword [rbp + 0xc8]
mov dword [rcx + 0x34], eax
cmp dword [rbp + 0x664], 0
je 0x1401aa57a
mov eax, dword [rbp + 0x624]
mov ecx, dword [rbp + 0xa4]
lea eax, [rax + rcx*2]
cdqe
lea rcx, [0x1401f76e0]
movzx eax, byte [rcx + rax]
mov dword [rbp + 0x6c4], eax
mov eax, dword [rbp + 0x664]
mov dword [rsp + 0x28], eax
mov eax, dword [rbp + 0x5a4]
mov dword [rsp + 0x20], eax
mov r9d, dword [rbp + 0x64]
mov r8d, dword [rbp + 0x684]
mov edx, dword [rbp + 0x6c4]
mov rcx, qword [rbp + 0x188]
call fcn.14018ba10
cmp dword [rbp + 0x84], 0
je 0x1401aa588
jmp 0x1401aa77e
mov rax, qword [rbp + 0x268]
mov rax, qword [rax + 0x18]
mov eax, dword [rax + 0x40]
and eax, 0x20
test eax, eax
jne 0x1401aa691
mov rax, qword [rbp + 0x12a0]
movzx eax, word [rax + 0x40]
and eax, 0x400
test eax, eax
jne 0x1401aa5e1
mov rax, qword [rbp + 0x12a0]
movzx eax, word [rax + 0x40]
and eax, 0x1000
test eax, eax
je 0x1401aa66e
mov rax, qword [rbp + 0x12a0]
movzx eax, byte [rax + 0x45]
cmp eax, 1
jne 0x1401aa66e
mov rax, qword [rbp + 0x148]
mov eax, dword [rax + 0x38]
inc eax
mov dword [rbp + 0x1264], eax
mov rax, qword [rbp + 0x148]
mov ecx, dword [rbp + 0x1264]
mov dword [rax + 0x38], ecx
mov eax, dword [rbp + 0x1264]
mov dword [rbp + 0x224], eax
mov r9d, dword [rbp + 0x224]
mov r8d, dword [rbp + 0x684]
mov edx, 0x84
mov rcx, qword [rbp + 0x188]
call fcn.14018b6a0
mov r9d, dword [rbp + 0x224]
mov r8d, 0xffffffff
mov edx, dword [rbp + 0x44]
mov rcx, qword [rbp + 0x148]
call fcn.140154e70
mov eax, dword [rbp + 0x224]
mov dword [rsp + 0x20], eax
xor r9d, r9d
mov r8d, dword [rbp + 0x44]
mov edx, 0x20
mov rcx, qword [rbp + 0x188]
call fcn.14018b720
jmp 0x1401aa68c
mov r9d, dword [rbp + 0x684]
mov r8d, dword [rbp + 0x44]
mov rdx, qword [rbp + 0x268]
mov rcx, qword [rbp + 0x12a0]
call fcn.140105dc0
jmp 0x1401aa77e
mov eax, dword [rbp + 0x684]
cmp dword [rbp + 0x44], eax
je 0x1401aa77e
mov rax, qword [rbp + 0x268]
mov rcx, qword [rax + 0x18]
call fcn.14017aec0
mov qword [rbp + 0x808], rax
mov rax, qword [rbp + 0x808]
movzx eax, word [rax + 0x5e]
mov edx, eax
mov rcx, qword [rbp + 0x148]
call fcn.1401634b0
mov dword [rbp + 0x224], eax
mov dword [rbp + 4], 0
jmp 0x1401aa6e7
mov eax, dword [rbp + 4]
inc eax
mov dword [rbp + 4], eax
mov rax, qword [rbp + 0x808]
movzx eax, word [rax + 0x5e]
cmp dword [rbp + 4], eax
jge 0x1401aa749
movsxd rax, dword [rbp + 4]
mov rcx, qword [rbp + 0x808]
mov rcx, qword [rcx + 8]
movzx edx, word [rcx + rax*2]
mov rcx, qword [rbp + 0x268]
call fcn.14014bb10
cwde
mov dword [rbp + 0x24], eax
mov eax, dword [rbp + 4]
mov ecx, dword [rbp + 0x224]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x20], eax
mov r9d, dword [rbp + 0x24]
mov r8d, dword [rbp + 0x684]
mov edx, 0x62
mov rcx, qword [rbp + 0x188]
call fcn.14018b720
jmp 0x1401aa6df
mov rax, qword [rbp + 0x808]
movzx eax, word [rax + 0x5e]
mov dword [rsp + 0x28], eax
mov eax, dword [rbp + 0x224]
mov dword [rsp + 0x20], eax
mov r9d, dword [rbp + 0x204]
mov r8d, dword [rbp + 0x44]
mov edx, 0x1d
mov rcx, qword [rbp + 0x188]
call fcn.14018ba10
mov rax, qword [rbp + 0xc8]
cmp dword [rax], 0
jne 0x1401aa7a7
mov r9, qword [rbp + 0x12a0]
mov r8d, dword [rbp + 0x684]
mov edx, dword [rbp + 0x44]
mov rcx, qword [rbp + 0x268]
call fcn.1401c17d0
mov rax, qword [rbp + 0xe8]
mov eax, dword [rax + 0x28]
and eax, 0x1000
test eax, eax
je 0x1401aa7c7
mov rax, qword [rbp + 0xc8]
mov byte [rax + 0x2d], 0xa9
jmp 0x1401aa7e8
cmp dword [rbp + 0xa4], 0
je 0x1401aa7dd
mov rax, qword [rbp + 0xc8]
mov byte [rax + 0x2d], 6
jmp 0x1401aa7e8
mov rax, qword [rbp + 0xc8]
mov byte [rax + 0x2d], 7
mov rax, qword [rbp + 0xc8]
mov ecx, dword [rbp + 0x684]
mov dword [rax + 0x30], ecx
mov rax, qword [rbp + 0xe8]
mov eax, dword [rax + 0x28]
and eax, 0x10000
test eax, eax
je 0x1401aa817
mov dword [rbp + 0x1264], 1
jmp 0x1401aa821
mov dword [rbp + 0x1264], 0
mov rax, qword [rbp + 0xc8]
movzx ecx, byte [rbp + 0x1264]
mov byte [rax + 0x2e], cl
mov rax, qword [rbp + 0xe8]
mov eax, dword [rax + 0x28]
and eax, 0xf
test eax, eax
jne 0x1401aa84e
mov rax, qword [rbp + 0xc8]
mov byte [rax + 0x2f], 1
cmp dword [rbp + 0x84], 0
je 0x1401aa862
mov qword [rbp + 0x268], 0
jmp 0x1401ab367
mov rax, qword [rbp + 0xe8]
mov eax, dword [rax + 0x28]
and eax, 0x2000
test eax, eax
je 0x1401ab2db
mov qword [rbp + 0x868], 0
mov rax, qword [rbp + 0x148]
mov eax, dword [rax + 0x34]
mov dword [rbp + 0x884], eax
mov rax, qword [rbp + 0x148]
mov eax, dword [rax + 0x34]
inc eax
mov rcx, qword [rbp + 0x148]
mov dword [rcx + 0x34], eax
mov rax, qword [rbp + 0x148]
mov eax, dword [rax + 0x38]
inc eax
mov dword [rbp + 0x1264], eax
mov rax, qword [rbp + 0x148]
mov ecx, dword [rbp + 0x1264]
mov dword [rax + 0x38], ecx
mov eax, dword [rbp + 0x1264]
mov dword [rbp + 0x8a4], eax
mov dword [rbp + 0x8c4], 0
mov dword [rbp + 0x8e4], 0
mov rcx, qword [rbp + 0x188]
call fcn.14019b6e0
mov dword [rbp + 0x904], eax
mov dword [rbp + 0x944], 0
mov qword [rbp + 0x9a8], 0
mov rax, qword [rbp + 0x1a8]
mov rax, qword [rax + 0x20]
mov qword [rbp + 0x9c8], rax
mov eax, 8
imul rax, rax, 0
mov rcx, qword [rbp + 0xe8]
mov rcx, qword [rcx + 0x38]
mov rax, qword [rax + rcx]
mov qword [rbp + 0x128], rax
mov rax, qword [rbp + 0x128]
mov rax, qword [rax + 0x28]
mov qword [rbp + 0x828], rax
mov rax, qword [rbp + 0xc8]
mov byte [rax + 0x2d], 0x3f
mov rax, qword [rbp + 0xc8]
mov ecx, dword [rbp + 0x8a4]
mov dword [rax + 0x30], ecx
mov rax, qword [rbp + 0x12a0]
movzx eax, byte [rax + 0x42]
cmp eax, 1
jle 0x1401aaaa3
mov rax, qword [rbp + 0x12a0]
movzx eax, byte [rax + 0x42]
sub eax, dword [rbp + 0x12a8]
dec eax
mov dword [rbp + 0x9e4], eax
movsxd rax, dword [rbp + 0x9e4]
imul rax, rax, 0x70
add rax, 0x78
mov rdx, rax
mov rcx, qword [rbp + 0x168]
call fcn.14014f420
mov qword [rbp + 0x848], rax
cmp qword [rbp + 0x848], 0
jne 0x1401aa9de
mov rax, qword [rbp + 0x12b0]
jmp 0x1401ab87d
mov eax, dword [rbp + 0x9e4]
inc eax
movzx eax, al
mov rcx, qword [rbp + 0x848]
mov dword [rcx + 4], eax
mov rax, qword [rbp + 0x848]
mov rcx, qword [rbp + 0x848]
mov ecx, dword [rcx + 4]
mov dword [rax], ecx
mov rax, qword [rbp + 0x848]
add rax, 8
mov r8d, 0x70
mov rdx, qword [rbp + 0x1a8]
mov rcx, rax
call fcn.1400a0cb7
mov rax, qword [rbp + 0x12a0]
mov rax, qword [rax + 8]
add rax, 8
mov qword [rbp + 0xa08], rax
mov dword [rbp + 0x24], 1
jmp 0x1401aaa4d
mov eax, dword [rbp + 0x24]
inc eax
mov dword [rbp + 0x24], eax
mov eax, dword [rbp + 0x9e4]
cmp dword [rbp + 0x24], eax
jg 0x1401aaaa1
movsxd rax, dword [rbp + 0x24]
imul rax, rax, 0x58
mov rcx, qword [rbp + 0xc8]
movzx eax, byte [rcx + rax + 0x2c]
imul rax, rax, 0x70
mov rcx, qword [rbp + 0xa08]
add rcx, rax
mov rax, rcx
movsxd rcx, dword [rbp + 0x24]
imul rcx, rcx, 0x70
mov rdx, qword [rbp + 0x848]
lea rcx, [rdx + rcx + 8]
mov r8d, 0x70
mov rdx, rax
call fcn.1400a0cb7
jmp 0x1401aaa45
jmp 0x1401aaab5
mov rax, qword [rbp + 0x12a0]
mov rax, qword [rax + 8]
mov qword [rbp + 0x848], rax
mov rax, qword [rbp + 0x12a0]
movzx eax, word [rax + 0x40]
and eax, 0x10
test eax, eax
jne 0x1401aabc7
mov rax, qword [rbp + 0x9c8]
mov eax, dword [rax + 0x40]
and eax, 0x20
test eax, eax
jne 0x1401aab27
mov rax, qword [rbp + 0x148]
mov eax, dword [rax + 0x38]
inc eax
mov dword [rbp + 0x1264], eax
mov rax, qword [rbp + 0x148]
mov ecx, dword [rbp + 0x1264]
mov dword [rax + 0x38], ecx
mov eax, dword [rbp + 0x1264]
mov dword [rbp + 0x8c4], eax
mov r9d, dword [rbp + 0x8c4]
xor r8d, r8d
mov edx, 0x46
mov rcx, qword [rbp + 0x188]
call fcn.14018b6a0
jmp 0x1401aab99
mov rcx, qword [rbp + 0x9c8]
call fcn.14017aec0
mov qword [rbp + 0xa28], rax
mov rax, qword [rbp + 0x148]
mov eax, dword [rax + 0x34]
mov dword [rbp + 0x8c4], eax
mov rax, qword [rbp + 0x148]
mov eax, dword [rax + 0x34]
inc eax
mov rcx, qword [rbp + 0x148]
mov dword [rcx + 0x34], eax
mov rax, qword [rbp + 0xa28]
movzx eax, word [rax + 0x5e]
mov r9d, eax
mov r8d, dword [rbp + 0x8c4]
mov edx, 0x6e
mov rcx, qword [rbp + 0x188]
call fcn.14018b6a0
mov rdx, qword [rbp + 0xa28]
mov rcx, qword [rbp + 0x148]
call fcn.1401a0e40
mov rax, qword [rbp + 0x148]
mov eax, dword [rax + 0x38]
inc eax
mov dword [rbp + 0x1264], eax
mov rax, qword [rbp + 0x148]
mov ecx, dword [rbp + 0x1264]
mov dword [rax + 0x38], ecx
mov eax, dword [rbp + 0x1264]
mov dword [rbp + 0x8e4], eax
mov r9d, dword [rbp + 0x8a4]
xor r8d, r8d
mov edx, 0x43
mov rcx, qword [rbp + 0x188]
call fcn.14018b6a0
mov dword [rbp + 0x924], eax
mov rax, qword [rbp + 0x108]
cmp dword [rax + 0x14], 1
jle 0x1401aad2a
mov dword [rbp + 0xa44], 0
jmp 0x1401aac13
mov eax, dword [rbp + 0xa44]
inc eax
mov dword [rbp + 0xa44], eax
mov rax, qword [rbp + 0x108]
mov eax, dword [rax + 0x14]
cmp dword [rbp + 0xa44], eax
jge 0x1401aacfe
movsxd rax, dword [rbp + 0xa44]
imul rax, rax, 0x40
mov rcx, qword [rbp + 0x108]
mov rcx, qword [rcx + 0x20]
mov rax, qword [rcx + rax]
mov qword [rbp + 0xa68], rax
movsxd rax, dword [rbp + 0xa44]
imul rax, rax, 0x40
mov rcx, qword [rbp + 0x108]
add rax, qword [rcx + 0x20]
cmp rax, qword [rbp + 0x128]
jne 0x1401aac6b
jmp 0x1401aac05
movsxd rax, dword [rbp + 0xa44]
imul rax, rax, 0x40
mov rcx, qword [rbp + 0x108]
mov rcx, qword [rcx + 0x20]
movzx eax, word [rcx + rax + 0x12]
and eax, 6
test eax, eax
je 0x1401aac92
jmp 0x1401aac05
movsxd rax, dword [rbp + 0xa44]
imul rax, rax, 0x40
mov rcx, qword [rbp + 0x108]
mov rcx, qword [rcx + 0x20]
movzx eax, word [rcx + rax + 0x14]
and eax, 0x1fff
test eax, eax
jne 0x1401aacbb
jmp 0x1401aac05
xor r8d, r8d
mov rdx, qword [rbp + 0xa68]
mov rcx, qword [rbp + 0x168]
call fcn.140159a10
mov qword [rbp + 0xa68], rax
mov r8, qword [rbp + 0xa68]
mov rdx, qword [rbp + 0x9a8]
mov rcx, qword [rbp + 0x168]
call fcn.1401543c0
mov qword [rbp + 0x9a8], rax
jmp 0x1401aac05
cmp qword [rbp + 0x9a8], 0
je 0x1401aad2a
mov r9, qword [rbp + 0x9a8]
xor r8d, r8d
mov edx, 0x12c
mov rcx, qword [rbp + 0x148]
call fcn.14016ec90
mov qword [rbp + 0x9a8], rax
mov rax, qword [rbp + 0x12a0]
movzx eax, word [rax + 0x40]
and eax, 0x400
or eax, 0x20
mov word [rbp + 0x984], ax
lea r8, str.MULTI_INDEX_OR
mov edx, 1
mov rcx, qword [rbp + 0x148]
call fcn.140199380
mov dword [rbp + 0x964], 0
jmp 0x1401aad76
mov eax, dword [rbp + 0x964]
inc eax
mov dword [rbp + 0x964], eax
mov rax, qword [rbp + 0x828]
mov eax, dword [rax + 0x14]
cmp dword [rbp + 0x964], eax
jge 0x1401ab1ea
movsxd rax, dword [rbp + 0x964]
imul rax, rax, 0x40
mov rcx, qword [rbp + 0x828]
add rax, qword [rcx + 0x20]
mov qword [rbp + 0xa88], rax
mov rax, qword [rbp + 0xa88]
mov ecx, dword [rbp + 0x44]
cmp dword [rax + 0x1c], ecx
je 0x1401aadd0
mov rax, qword [rbp + 0xa88]
movzx eax, word [rax + 0x14]
and eax, 0x400
test eax, eax
je 0x1401ab1e5
mov rax, qword [rbp + 0xa88]
mov rax, qword [rax]
mov qword [rbp + 0xac8], rax
mov dword [rbp + 0xae4], 0
cmp qword [rbp + 0x9a8], 0
je 0x1401aae15
mov rax, qword [rbp + 0x9a8]
mov rcx, qword [rbp + 0xac8]
mov qword [rax + 0x10], rcx
mov rax, qword [rbp + 0x9a8]
mov qword [rbp + 0xac8], rax
mov eax, dword [rbp + 0x884]
mov dword [rsp + 0x30], eax
movzx eax, word [rbp + 0x984]
mov word [rsp + 0x28], ax
mov qword [rsp + 0x20], 0
xor r9d, r9d
mov r8, qword [rbp + 0xac8]
mov rdx, qword [rbp + 0x848]
mov rcx, qword [rbp + 0x148]
call fcn.1401a74f0
mov qword [rbp + 0xaa8], rax
cmp qword [rbp + 0xaa8], 0
je 0x1401ab1e5
mov eax, 0x58
imul rax, rax, 0
mov rcx, qword [rbp + 0xaa8]
lea rax, [rcx + rax + 0x398]
xor r9d, r9d
mov r8, rax
mov rdx, qword [rbp + 0x848]
mov rcx, qword [rbp + 0x148]
call fcn.1401ace60
mov dword [rbp + 0xb24], eax
mov rax, qword [rbp + 0x12a0]
movzx eax, word [rax + 0x40]
and eax, 0x10
test eax, eax
jne 0x1401ab0f1
mov rax, qword [rbp + 0x828]
mov eax, dword [rax + 0x14]
dec eax
cmp dword [rbp + 0x964], eax
jne 0x1401aaed3
mov dword [rbp + 0x1264], 0xffffffff
jmp 0x1401aaedf
mov eax, dword [rbp + 0x964]
mov dword [rbp + 0x1264], eax
mov eax, dword [rbp + 0x1264]
mov dword [rbp + 0xb64], eax
mov rax, qword [rbp + 0x9c8]
mov eax, dword [rax + 0x40]
and eax, 0x20
test eax, eax
jne 0x1401aaf68
mov byte [rsp + 0x28], 0
mov eax, dword [rbp + 0x8e4]
mov dword [rsp + 0x20], eax
mov r9d, dword [rbp + 0x44]
mov r8d, 0xffffffff
mov rdx, qword [rbp + 0x9c8]
mov rcx, qword [rbp + 0x148]
call fcn.140155c60
mov dword [rbp + 0xb44], eax
mov eax, dword [rbp + 0xb64]
mov dword [rsp + 0x28], eax
mov eax, dword [rbp + 0xb44]
mov dword [rsp + 0x20], eax
xor r9d, r9d
mov r8d, dword [rbp + 0x8c4]
mov edx, 0x2d
mov rcx, qword [rbp + 0x188]
call fcn.14018ba10
mov dword [rbp + 0xae4], eax
jmp 0x1401ab0f1
mov rcx, qword [rbp + 0x9c8]
call fcn.14017aec0
mov qword [rbp + 0xb88], rax
mov rax, qword [rbp + 0xb88]
movzx eax, word [rax + 0x5e]
mov dword [rbp + 0xba4], eax
mov edx, dword [rbp + 0xba4]
mov rcx, qword [rbp + 0x148]
call fcn.1401634b0
mov dword [rbp + 0xb44], eax
mov dword [rbp + 0xbc4], 0
jmp 0x1401aafbe
mov eax, dword [rbp + 0xbc4]
inc eax
mov dword [rbp + 0xbc4], eax
mov eax, dword [rbp + 0xba4]
cmp dword [rbp + 0xbc4], eax
jge 0x1401ab01c
movsxd rax, dword [rbp + 0xbc4]
mov rcx, qword [rbp + 0xb88]
mov rcx, qword [rcx + 8]
movsx eax, word [rcx + rax*2]
mov dword [rbp + 0xbe4], eax
mov eax, dword [rbp + 0xbc4]
mov ecx, dword [rbp + 0xb44]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x20], eax
mov r9d, dword [rbp + 0x44]
mov r8d, dword [rbp + 0xbe4]
mov rdx, qword [rbp + 0x9c8]
mov rcx, qword [rbp + 0x148]
call fcn.140155fe0
jmp 0x1401aafb0
cmp dword [rbp + 0xb64], 0
je 0x1401ab05a
mov eax, dword [rbp + 0xba4]
mov dword [rsp + 0x28], eax
mov eax, dword [rbp + 0xb44]
mov dword [rsp + 0x20], eax
xor r9d, r9d
mov r8d, dword [rbp + 0x8c4]
mov edx, 0x1e
mov rcx, qword [rbp + 0x188]
call fcn.14018ba10
mov dword [rbp + 0xae4], eax
cmp dword [rbp + 0xb64], 0
jl 0x1401ab0d8
mov eax, dword [rbp + 0x8e4]
mov dword [rsp + 0x20], eax
mov r9d, dword [rbp + 0xba4]
mov r8d, dword [rbp + 0xb44]
mov edx, 0x65
mov rcx, qword [rbp + 0x188]
call fcn.14018b720
mov eax, dword [rbp + 0xba4]
mov dword [rsp + 0x28], eax
mov eax, dword [rbp + 0xb44]
mov dword [rsp + 0x20], eax
mov r9d, dword [rbp + 0x8e4]
mov r8d, dword [rbp + 0x8c4]
mov edx, 0x81
mov rcx, qword [rbp + 0x188]
call fcn.14018ba10
cmp dword [rbp + 0xb64], 0
je 0x1401ab0d8
mov dx, 0x10
mov rcx, qword [rbp + 0x188]
call fcn.14018c410
mov r8d, dword [rbp + 0xba4]
mov edx, dword [rbp + 0xb44]
mov rcx, qword [rbp + 0x148]
call fcn.14017c2c0
mov r9d, dword [rbp + 0x904]
mov r8d, dword [rbp + 0x8a4]
mov edx, 0xe
mov rcx, qword [rbp + 0x188]
call fcn.14018b6a0
cmp dword [rbp + 0xae4], 0
je 0x1401ab12b
mov edx, dword [rbp + 0xae4]
mov rcx, qword [rbp + 0x188]
call fcn.14019aae0
mov rax, qword [rbp + 0xaa8]
movzx eax, byte [rax + 0x46]
test eax, eax
je 0x1401ab144
mov dword [rbp + 0x944], 1
mov eax, 0x58
imul rax, rax, 0
mov rcx, qword [rbp + 0xaa8]
mov rax, qword [rcx + rax + 0x3e0]
mov qword [rbp + 0xb08], rax
mov rax, qword [rbp + 0xb08]
mov eax, dword [rax + 0x28]
and eax, 0x200
test eax, eax
je 0x1401ab1ce
cmp dword [rbp + 0x964], 0
je 0x1401ab193
mov rax, qword [rbp + 0xb08]
mov rcx, qword [rbp + 0x868]
cmp qword [rax + 0x20], rcx
jne 0x1401ab1ce
mov rax, qword [rbp + 0x9c8]
mov eax, dword [rax + 0x40]
and eax, 0x20
test eax, eax
je 0x1401ab1ba
mov rax, qword [rbp + 0xb08]
mov rax, qword [rax + 0x20]
mov eax, dword [rax + 0x64]
and eax, 3
cmp eax, 2
je 0x1401ab1ce
mov rax, qword [rbp + 0xb08]
mov rax, qword [rax + 0x20]
mov qword [rbp + 0x868], rax
jmp 0x1401ab1d9
mov qword [rbp + 0x868], 0
mov rcx, qword [rbp + 0xaa8]
call fcn.1401ac3c0
jmp 0x1401aad68
mov rcx, qword [rbp + 0x148]
call fcn.1401995a0
mov rax, qword [rbp + 0xc8]
mov rcx, qword [rbp + 0x868]
mov qword [rax + 0x38], rcx
cmp qword [rbp + 0x868], 0
je 0x1401ab222
mov rax, qword [rbp + 0xc8]
mov ecx, dword [rbp + 0x884]
mov dword [rax + 8], ecx
cmp qword [rbp + 0x9a8], 0
je 0x1401ab24e
mov rax, qword [rbp + 0x9a8]
mov qword [rax + 0x10], 0
mov rdx, qword [rbp + 0x9a8]
mov rcx, qword [rbp + 0x168]
call fcn.140159820
mov rcx, qword [rbp + 0x188]
call fcn.14018ca50
mov r8d, eax
mov edx, dword [rbp + 0x924]
mov rcx, qword [rbp + 0x188]
call fcn.14018c160
mov rax, qword [rbp + 0xc8]
mov edx, dword [rax + 0xc]
mov rcx, qword [rbp + 0x188]
call fcn.140199d50
mov edx, dword [rbp + 0x904]
mov rcx, qword [rbp + 0x188]
call fcn.14019ffd0
mov rax, qword [rbp + 0x12a0]
movzx eax, byte [rax + 0x42]
cmp eax, 1
jle 0x1401ab2ba
mov rdx, qword [rbp + 0x848]
mov rcx, qword [rbp + 0x168]
call fcn.14014f2d0
cmp dword [rbp + 0x944], 0
jne 0x1401ab2d6
mov rdx, qword [rbp + 0x128]
mov rcx, qword [rbp + 0xc8]
call fcn.14010d760
jmp 0x1401ab367
mov rax, qword [rbp + 0x1a8]
mov eax, dword [rax + 0x40]
shr eax, 5
and eax, 1
test eax, eax
je 0x1401ab2fc
mov rax, qword [rbp + 0xc8]
mov byte [rax + 0x2d], 0xa9
jmp 0x1401ab367
movsxd rax, dword [rbp + 0xa4]
lea rcx, [0x1401f5844]
mov rdx, qword [rbp + 0xc8]
movzx eax, byte [rcx + rax]
mov byte [rdx + 0x2d], al
mov rax, qword [rbp + 0xc8]
mov ecx, dword [rbp + 0x44]
mov dword [rax + 0x30], ecx
movsxd rax, dword [rbp + 0xa4]
lea rcx, [0x1401f76e4]
movzx eax, byte [rcx + rax]
mov r9d, dword [rbp + 0x1e4]
mov r8d, dword [rbp + 0x44]
mov edx, eax
mov rcx, qword [rbp + 0x188]
call fcn.14018b6a0
inc eax
mov rcx, qword [rbp + 0xc8]
mov dword [rcx + 0x34], eax
mov rax, qword [rbp + 0xc8]
mov byte [rax + 0x2f], 1
cmp qword [rbp + 0x268], 0
je 0x1401ab37d
mov dword [rbp + 0x1264], 1
jmp 0x1401ab387
mov dword [rbp + 0x1264], 2
mov eax, dword [rbp + 0x1264]
mov dword [rbp + 0x284], eax
mov dword [rbp + 0xc04], 0
mov rax, qword [rbp + 0x108]
mov rax, qword [rax + 0x20]
mov qword [rbp + 0x128], rax
mov rax, qword [rbp + 0x108]
mov eax, dword [rax + 0x14]
mov dword [rbp + 4], eax
jmp 0x1401ab3d8
mov eax, dword [rbp + 4]
dec eax
mov dword [rbp + 4], eax
mov rax, qword [rbp + 0x128]
add rax, 0x40
mov qword [rbp + 0x128], rax
cmp dword [rbp + 4], 0
jle 0x1401ab59e
mov dword [rbp + 0xc44], 0
mov rax, qword [rbp + 0x128]
movzx eax, word [rax + 0x12]
and eax, 6
test eax, eax
je 0x1401ab400
jmp 0x1401ab3be
mov rax, qword [rbp + 0x128]
mov rcx, qword [rbp + 0xc8]
mov rcx, qword [rcx + 0x50]
mov rax, qword [rax + 0x38]
and rax, rcx
test rax, rax
je 0x1401ab42b
mov rax, qword [rbp + 0x12a0]
mov byte [rax + 0x46], 1
jmp 0x1401ab3be
mov rax, qword [rbp + 0x128]
mov rax, qword [rax]
mov qword [rbp + 0xc28], rax
mov rax, qword [rbp + 0x1a8]
movzx eax, byte [rax + 0x3c]
and eax, 8
test eax, eax
je 0x1401ab464
mov rax, qword [rbp + 0xc28]
mov eax, dword [rax + 4]
and eax, 1
test eax, eax
jne 0x1401ab464
jmp 0x1401ab3be
cmp dword [rbp + 0x284], 1
jne 0x1401ab49d
mov r8, qword [rbp + 0x268]
mov rax, qword [rbp + 0xc8]
mov edx, dword [rax + 4]
mov rcx, qword [rbp + 0xc28]
call fcn.1401596f0
test eax, eax
jne 0x1401ab49d
mov dword [rbp + 0xc04], 2
jmp 0x1401ab3be
cmp dword [rbp + 0x284], 3
jge 0x1401ab4d2
mov rax, qword [rbp + 0x128]
movzx eax, word [rax + 0x12]
and eax, 0x1000
test eax, eax
je 0x1401ab4d2
cmp dword [rbp + 0xc04], 0
jne 0x1401ab4cd
mov dword [rbp + 0xc04], 3
jmp 0x1401ab3be
mov rax, qword [rbp + 0x128]
movzx eax, word [rax + 0x12]
and eax, 0x200
test eax, eax
je 0x1401ab545
mov rax, qword [rbp + 0xc8]
mov eax, dword [rax + 0x24]
mov dword [rbp + 0xc64], eax
cmp dword [rbp + 0xc64], 0
jbe 0x1401ab545
mov eax, dword [rbp + 0xc64]
and eax, 1
test eax, eax
je 0x1401ab518
mov dword [rbp + 0x1264], 0x16
jmp 0x1401ab522
mov dword [rbp + 0x1264], 0x15
mov eax, dword [rbp + 0xc64]
shr eax, 1
mov r8d, eax
mov edx, dword [rbp + 0x1264]
mov rcx, qword [rbp + 0x188]
call fcn.14018b630
mov dword [rbp + 0xc44], eax
mov r9d, 0x10
mov r8d, dword [rbp + 0x204]
mov rdx, qword [rbp + 0xc28]
mov rcx, qword [rbp + 0x148]
call fcn.140159d30
cmp dword [rbp + 0xc44], 0
je 0x1401ab580
mov edx, dword [rbp + 0xc44]
mov rcx, qword [rbp + 0x188]
call fcn.14019aae0
mov rax, qword [rbp + 0x128]
movzx eax, word [rax + 0x12]
or eax, 4
mov rcx, qword [rbp + 0x128]
mov word [rcx + 0x12], ax
jmp 0x1401ab3be
mov eax, dword [rbp + 0xc04]
mov dword [rbp + 0x284], eax
cmp dword [rbp + 0x284], 0
jg 0x1401ab393
mov rax, qword [rbp + 0x108]
mov rax, qword [rax + 0x20]
mov qword [rbp + 0x128], rax
mov rax, qword [rbp + 0x108]
mov eax, dword [rax + 0x14]
mov dword [rbp + 4], eax
jmp 0x1401ab5f2
mov eax, dword [rbp + 4]
dec eax
mov dword [rbp + 4], eax
mov rax, qword [rbp + 0x128]
add rax, 0x40
mov qword [rbp + 0x128], rax
cmp dword [rbp + 4], 0
jle 0x1401ab766
mov rax, qword [rbp + 0x128]
movzx eax, word [rax + 0x12]
and eax, 6
test eax, eax
je 0x1401ab610
jmp 0x1401ab5d8
mov rax, qword [rbp + 0x128]
movzx eax, word [rax + 0x14]
and eax, 0x82
test eax, eax
jne 0x1401ab626
jmp 0x1401ab5d8
mov rax, qword [rbp + 0x128]
movzx eax, word [rax + 0x14]
and eax, 0x800
test eax, eax
jne 0x1401ab63c
jmp 0x1401ab5d8
mov rax, qword [rbp + 0x128]
mov ecx, dword [rbp + 0x44]
cmp dword [rax + 0x1c], ecx
je 0x1401ab64d
jmp 0x1401ab5d8
mov rax, qword [rbp + 0xc8]
cmp dword [rax], 0
je 0x1401ab65e
jmp 0x1401ab5d8
mov rax, qword [rbp + 0x128]
mov rax, qword [rax]
mov qword [rbp + 0xc88], rax
mov qword [rsp + 0x28], 0
mov dword [rsp + 0x20], 0x83
mov r9, qword [rbp + 0x12b0]
mov rax, qword [rbp + 0x128]
mov r8d, dword [rax + 0x28]
mov edx, dword [rbp + 0x44]
mov rcx, qword [rbp + 0x108]
call fcn.1401ad7f0
mov qword [rbp + 0xd18], rax
cmp qword [rbp + 0xd18], 0
jne 0x1401ab6b7
jmp 0x1401ab5d8
mov rax, qword [rbp + 0xd18]
movzx eax, word [rax + 0x12]
and eax, 4
test eax, eax
je 0x1401ab6ce
jmp 0x1401ab5d8
mov rax, qword [rbp + 0xd18]
movzx eax, word [rax + 0x14]
and eax, 1
test eax, eax
je 0x1401ab711
mov rax, qword [rbp + 0xd18]
mov rax, qword [rax]
mov eax, dword [rax + 4]
and eax, 0x800
test eax, eax
je 0x1401ab711
mov rax, qword [rbp + 0xd18]
mov rax, qword [rax]
mov rax, qword [rax + 0x20]
mov rax, qword [rax]
cmp dword [rax], 1
jle 0x1401ab711
jmp 0x1401ab5d8
mov rax, qword [rbp + 0xd18]
mov rax, qword [rax]
lea rcx, [rbp + 0xcb0]
mov rdi, rcx
mov rsi, rax
mov ecx, 0x48
rep movsb byte [rdi], byte [rsi]
mov rax, qword [rbp + 0xc88]
mov rax, qword [rax + 0x10]
mov qword [rbp + 0xcc0], rax
mov r9d, 0x10
mov r8d, dword [rbp + 0x204]
lea rdx, [rbp + 0xcb0]
mov rcx, qword [rbp + 0x148]
call fcn.140159d30
jmp 0x1401ab5d8
mov rax, qword [rbp + 0xc8]
cmp dword [rax], 0
je 0x1401ab872
mov rcx, qword [rbp + 0x188]
call fcn.14018ca50
mov rcx, qword [rbp + 0xc8]
mov dword [rcx + 0x1c], eax
mov rax, qword [rbp + 0xc8]
mov r9d, dword [rax]
mov r8d, 1
mov edx, 0x43
mov rcx, qword [rbp + 0x188]
call fcn.14018b6a0
mov rcx, qword [rbp + 0x148]
call fcn.140154ae0
mov rax, qword [rbp + 0x108]
mov rax, qword [rax + 0x20]
mov qword [rbp + 0x128], rax
mov dword [rbp + 4], 0
jmp 0x1401ab7ee
mov eax, dword [rbp + 4]
inc eax
mov dword [rbp + 4], eax
mov rax, qword [rbp + 0x128]
add rax, 0x40
mov qword [rbp + 0x128], rax
mov rax, qword [rbp + 0x108]
mov eax, dword [rax + 0x14]
cmp dword [rbp + 4], eax
jge 0x1401ab872
mov rax, qword [rbp + 0x128]
movzx eax, word [rax + 0x12]
and eax, 6
test eax, eax
je 0x1401ab811
jmp 0x1401ab7d4
mov rax, qword [rbp + 0x128]
mov rcx, qword [rbp + 0xc8]
mov rcx, qword [rcx + 0x50]
mov rax, qword [rax + 0x38]
and rax, rcx
test rax, rax
je 0x1401ab831
jmp 0x1401ab7d4
mov r9d, 0x10
mov r8d, dword [rbp + 0x204]
mov rax, qword [rbp + 0x128]
mov rdx, qword [rax]
mov rcx, qword [rbp + 0x148]
call fcn.140159d30
mov rax, qword [rbp + 0x128]
movzx eax, word [rax + 0x12]
or eax, 4
mov rcx, qword [rbp + 0x128]
mov word [rcx + 0x12], ax
jmp 0x1401ab7d4
mov rax, qword [rbp + 0xc8]
mov rax, qword [rax + 0x50]
mov rdi, rax
lea rcx, [rbp - 0x40]
lea rdx, [0x14020f410]
call fcn.1400a15c2
mov rax, rdi
mov rcx, qword [rbp + 0x1270]
xor rcx, rbp
call fcn.1400a0ca3
lea rsp, [rbp + 0x1280]
pop rdi
pop rsi
pop rbp
ret