Function at 0x663d40
Capabilities:
Encode data using base64

Disassembly:
lea r12, [rsp - 0x148]
cmp r12, qword [r14 + 0x10]
jbe 0x666b76
sub rsp, 0x1c8
mov qword [rsp + 0x1c0], rbp
lea rbp, [rsp + 0x1c0]
mov qword [rsp + 0x1d8], rbx
mov qword [rsp + 0x1e0], rcx
mov rdx, qword [rax + 0x30]
mov r10, qword [rax + 0x38]
cmp qword [rax + 0x378], 1
jne 0x663e4e
test sil, sil
jne 0x663e4e
mov r11, qword [0x008f3fa0]
mov r12, qword [0x008f3fa8]
cmp rdi, r12
jae 0x666b6a
shl rdi, 5
mov r12, qword [r11 + rdi]
mov r13, qword [r11 + rdi + 8]
mov r15, qword [r11 + rdi + 0x10]
mov r11, qword [r11 + rdi + 0x18]
sub rdx, r15
lea rdx, [r12 + rdx]
lea rdx, [rdx - 1]
test r12, r12
je 0x666b65
mov rdi, rax
mov rax, rdx
cmp r12, 0xffffffffffffffff
je 0x663ded
cqo
idiv r12
jmp 0x663df2
neg rax
xor edx, edx
sub r10, r11
lea rdx, [r13 + r10]
lea rdx, [rdx - 1]
nop
test r13, r13
je 0x666b5c
mov r8, rax
mov rax, rdx
cmp r13, 0xffffffffffffffff
je 0x663e1c
cqo
idiv r13
jmp 0x663e21
neg rax
xor edx, edx
test r8, r8
je 0x663e2b
test rax, rax
jne 0x663e45
xor eax, eax
xor ebx, ebx
mov rcx, rax
mov rdi, rbx
mov rbp, qword [rsp + 0x1c0]
add rsp, 0x1c8
ret
mov rdx, r8
mov r10, rax
mov rax, rdi
mov qword [rsp + 0x1d0], rax
mov byte [rsp + 0x1f0], sil
mov qword [rsp + 0x1e0], rcx
mov qword [rsp + 0x1d8], rbx
mov qword [rsp + 0x90], rdx
mov qword [rsp + 0xd8], r10
mov r11, qword [rax + 0x60]
cmp r11, 0xa
jg 0x6641e8
cmp r11, 5
jg 0x664045
lea r8, [r11 - 1]
nop word [rax + rax]
cmp r8, 3
ja 0x663f93
mov r8, qword [rax + 0x40]
mov qword [rsp + 0xf0], r8
cmp byte [rax + 0x380], 0
je 0x663efd
test rdx, rdx
mov eax, 0
cmovl rax, rdx
mov ebx, 0
mov rcx, rdx
cmovl rcx, rbx
test r10, r10
cmovl rbx, r10
mov esi, 0
mov rdi, r10
cmovl rdi, rsi
call fcn.0064a4e0
lea rcx, [0x007695b0]
mov rdx, rax
xor ebx, ebx
jmp 0x663f39
test rdx, rdx
mov eax, 0
cmovl rax, rdx
mov ebx, 0
mov rcx, rdx
cmovl rcx, rbx
test r10, r10
cmovl rbx, r10
mov esi, 0
mov rdi, r10
cmovl rdi, rsi
call fcn.0064ab60
lea rcx, [0x00769550]
xor edx, edx
mov rbx, rax
movzx esi, byte [rsp + 0x1f0]
mov r10, qword [rsp + 0xd8]
mov rdi, rbx
mov r8, rdx
xor r9d, r9d
xor r11d, r11d
xor r12d, r12d
xor r13d, r13d
xor r15d, r15d
mov qword [rsp + 0xc8], rcx
mov qword [rsp + 0x188], rax
mov rax, qword [rsp + 0x1d0]
mov rcx, qword [rsp + 0x1e0]
mov rdx, qword [rsp + 0x90]
mov rbx, qword [rsp + 0x1d8]
jmp 0x66460b
cmp r11, 5
jne 0x66448d
test rdx, rdx
mov eax, 0
cmovl rax, rdx
mov ebx, 0
mov rcx, rdx
cmovl rcx, rbx
test r10, r10
cmovl rbx, r10
mov esi, 0
mov rdi, r10
cmovl rdi, rsi
call fcn.0064a4e0
mov rcx, qword [rsp + 0x1e0]
mov rdx, qword [rsp + 0x90]
mov rbx, qword [rsp + 0x1d8]
movzx esi, byte [rsp + 0x1f0]
mov r10, qword [rsp + 0xd8]
xor edi, edi
mov r8, rax
xor r9d, r9d
xor r11d, r11d
xor r12d, r12d
xor r13d, r13d
xor r15d, r15d
lea rax, [0x007695b0]
mov qword [rsp + 0xc8], rax
mov qword [rsp + 0x188], r8
mov ecx, 0x10
mov qword [rsp + 0xf0], rcx
mov rax, qword [rsp + 0x1d0]
mov rcx, qword [rsp + 0x1e0]
nop dword [rax]
jmp 0x66460b
cmp r11, 6
jne 0x664138
cmp byte [rax + 0x380], 0
je 0x664096
test rdx, rdx
mov eax, 0
cmovl rax, rdx
mov ebx, 0
mov rcx, rdx
cmovl rcx, rbx
test r10, r10
cmovl rbx, r10
mov esi, 0
mov rdi, r10
cmovl rdi, rsi
call fcn.0064a4e0
lea rcx, [0x007695b0]
mov rdx, rax
xor ebx, ebx
jmp 0x6640d2
test rdx, rdx
mov eax, 0
cmovl rax, rdx
mov ebx, 0
mov rcx, rdx
cmovl rcx, rbx
test r10, r10
cmovl rbx, r10
mov esi, 0
mov rdi, r10
cmovl rdi, rsi
call fcn.00649ca0
lea rcx, [0x00769640]
xor edx, edx
mov rbx, rax
movzx esi, byte [rsp + 0x1f0]
mov r10, qword [rsp + 0xd8]
xor edi, edi
mov r8, rdx
mov r9, rbx
xor r11d, r11d
xor r12d, r12d
xor r13d, r13d
xor r15d, r15d
mov qword [rsp + 0xc8], rcx
mov qword [rsp + 0x188], rax
mov edx, 0x18
mov qword [rsp + 0xf0], rdx
mov rax, qword [rsp + 0x1d0]
mov rcx, qword [rsp + 0x1e0]
mov rdx, qword [rsp + 0x90]
mov rbx, qword [rsp + 0x1d8]
jmp 0x66460b
test rdx, rdx
mov ebx, 0
cmovl rbx, rdx
mov r11d, 0
mov rcx, rdx
cmovl rcx, r11
test r10, r10
cmovl r11, r10
mov r12d, 0
mov rdi, r10
cmovl rdi, r12
mov r12, qword [rax + 0x40]
mov qword [rsp + 0xf0], r12
mov rsi, qword [rax + 0x48]
mov r8, qword [rax + 0x50]
mov r9, qword [rax + 0x58]
mov rax, rbx
mov rbx, r11
call fcn.0064b300
mov rcx, qword [rsp + 0x1e0]
mov rdx, qword [rsp + 0x90]
mov rbx, qword [rsp + 0x1d8]
movzx esi, byte [rsp + 0x1f0]
mov r10, qword [rsp + 0xd8]
xor edi, edi
xor r8d, r8d
xor r9d, r9d
mov r11, rax
xor r12d, r12d
xor r13d, r13d
xor r15d, r15d
lea rax, [0x00769610]
mov qword [rsp + 0xc8], rax
mov qword [rsp + 0x188], r11
mov rax, qword [rsp + 0x1d0]
jmp 0x66460b
cmp r11, 0xc
jg 0x66438a
cmp r11, 0xb
je 0x6642e5
cmp byte [rax + 0x380], 0
je 0x664243
test rdx, rdx
mov eax, 0
cmovl rax, rdx
mov ebx, 0
mov rcx, rdx
cmovl rcx, rbx
test r10, r10
cmovl rbx, r10
mov esi, 0
mov rdi, r10
cmovl rdi, rsi
call fcn.0064a920
lea rcx, [0x007695e0]
mov rdx, rax
xor ebx, ebx
jmp 0x66427f
test rdx, rdx
mov eax, 0
cmovl rax, rdx
mov ebx, 0
mov rcx, rdx
cmovl rcx, rbx
test r10, r10
cmovl rbx, r10
mov esi, 0
mov rdi, r10
cmovl rdi, rsi
call fcn.0064ae80
lea rcx, [0x00769580]
xor edx, edx
mov rbx, rax
movzx esi, byte [rsp + 0x1f0]
mov r10, qword [rsp + 0xd8]
xor edi, edi
xor r8d, r8d
xor r9d, r9d
xor r11d, r11d
mov r12, rbx
xor r13d, r13d
mov r15, rdx
mov qword [rsp + 0xc8], rcx
mov qword [rsp + 0x188], rax
mov edx, 0x10
mov qword [rsp + 0xf0], rdx
mov rax, qword [rsp + 0x1d0]
mov rcx, qword [rsp + 0x1e0]
mov rdx, qword [rsp + 0x90]
mov rbx, qword [rsp + 0x1d8]
jmp 0x66460b
test rdx, rdx
mov eax, 0
cmovl rax, rdx
mov ebx, 0
mov rcx, rdx
cmovl rcx, rbx
test r10, r10
cmovl rbx, r10
mov esi, 0
mov rdi, r10
cmovl rdi, rsi
call fcn.0064a4e0
mov rcx, qword [rsp + 0x1e0]
mov rdx, qword [rsp + 0x90]
mov rbx, qword [rsp + 0x1d8]
movzx esi, byte [rsp + 0x1f0]
mov r10, qword [rsp + 0xd8]
xor edi, edi
mov r8, rax
xor r9d, r9d
xor r11d, r11d
xor r12d, r12d
xor r13d, r13d
xor r15d, r15d
lea rax, [0x007695b0]
mov qword [rsp + 0xc8], rax
mov qword [rsp + 0x188], r8
mov ecx, 0x20
mov qword [rsp + 0xf0], rcx
mov rax, qword [rsp + 0x1d0]
mov rcx, qword [rsp + 0x1e0]
jmp 0x66460b
cmp r11, 0xd
je 0x66456b
cmp r11, 0xe
jne 0x664487
cmp byte [rax + 0x380], 0
je 0x6643e5
test rdx, rdx
mov eax, 0
cmovl rax, rdx
mov ebx, 0
mov rcx, rdx
cmovl rcx, rbx
test r10, r10
cmovl rbx, r10
mov esi, 0
mov rdi, r10
cmovl rdi, rsi
call fcn.0064a920
lea rcx, [0x007695e0]
mov rdx, rax
xor ebx, ebx
jmp 0x664421
test rdx, rdx
mov eax, 0
cmovl rax, rdx
mov ebx, 0
mov rcx, rdx
cmovl rcx, rbx
test r10, r10
cmovl rbx, r10
mov esi, 0
mov rdi, r10
cmovl rdi, rsi
call fcn.0064a0e0
lea rcx, [0x00769670]
xor edx, edx
mov rbx, rax
movzx esi, byte [rsp + 0x1f0]
mov r10, qword [rsp + 0xd8]
xor edi, edi
xor r8d, r8d
xor r9d, r9d
xor r11d, r11d
xor r12d, r12d
mov r13, rbx
mov r15, rdx
mov qword [rsp + 0xc8], rcx
mov qword [rsp + 0x188], rax
mov edx, 0x30
mov qword [rsp + 0xf0], rdx
mov rax, qword [rsp + 0x1d0]
mov rcx, qword [rsp + 0x1e0]
mov rdx, qword [rsp + 0x90]
mov rbx, qword [rsp + 0x1d8]
jmp 0x66460b
cmp r11, 0xf
je 0x6644c6
xor edi, edi
xor r8d, r8d
xor r9d, r9d
xor r11d, r11d
xor r12d, r12d
xor r13d, r13d
xor r15d, r15d
xor edi, edi
mov qword [rsp + 0xc8], rdi
xor edi, edi
mov qword [rsp + 0x188], rdi
xor edi, edi
mov qword [rsp + 0xf0], rdi
xor edi, edi
jmp 0x66460b
test rdx, rdx
mov eax, 0
cmovl rax, rdx
mov ebx, 0
mov rcx, rdx
cmovl rcx, rbx
test r10, r10
cmovl rbx, r10
mov esi, 0
mov rdi, r10
cmovl rdi, rsi
call fcn.0064a920
mov rcx, qword [rsp + 0x1e0]
mov rdx, qword [rsp + 0x90]
mov rbx, qword [rsp + 0x1d8]
movzx esi, byte [rsp + 0x1f0]
mov r10, qword [rsp + 0xd8]
xor edi, edi
xor r8d, r8d
xor r9d, r9d
xor r11d, r11d
xor r12d, r12d
xor r13d, r13d
mov r15, rax
lea rax, [0x007695e0]
mov qword [rsp + 0xc8], rax
mov qword [rsp + 0x188], r15
mov ecx, 0x40
mov qword [rsp + 0xf0], rcx
mov rax, qword [rsp + 0x1d0]
mov rcx, qword [rsp + 0x1e0]
jmp 0x66460b
test rdx, rdx
mov eax, 0
cmovl rax, rdx
mov ebx, 0
mov rcx, rdx
cmovl rcx, rbx
test r10, r10
cmovl rbx, r10
mov esi, 0
mov rdi, r10
cmovl rdi, rsi
call fcn.0064a920
mov rcx, qword [rsp + 0x1e0]
mov rdx, qword [rsp + 0x90]
mov rbx, qword [rsp + 0x1d8]
movzx esi, byte [rsp + 0x1f0]
mov r10, qword [rsp + 0xd8]
xor edi, edi
xor r8d, r8d
xor r9d, r9d
xor r11d, r11d
xor r12d, r12d
xor r13d, r13d
mov r15, rax
lea rax, [0x007695e0]
mov qword [rsp + 0xc8], rax
mov qword [rsp + 0x188], r15
mov ecx, 0x20
mov qword [rsp + 0xf0], rcx
mov rax, qword [rsp + 0x1d0]
mov rcx, qword [rsp + 0x1e0]
test sil, sil
jne 0x6646e2
mov qword [rsp + 0x170], r11
mov qword [rsp + 0x180], r8
mov qword [rsp + 0x198], rdi
mov qword [rsp + 0x160], r9
mov qword [rsp + 0x178], r15
mov qword [rsp + 0x190], r12
mov qword [rsp + 0x158], r13
mov rsi, qword [rsp + 0xf0]
imul rsi, rdx
lea r8, [rsi + 7]
sar r8, 0x3f
shr r8, 0x3d
lea rsi, [r8 + rsi]
lea rsi, [rsi + 7]
sar rsi, 3
lea rcx, [rsi + 1]
mov qword [rsp + 0x98], rcx
lea rax, [0x0068eaa0]
mov rbx, rcx
call fcn.00449320
mov qword [rsp + 0x1b8], rax
mov rbx, qword [rsp + 0x98]
mov rcx, rbx
lea rax, [0x0068eaa0]
call fcn.00449320
mov rdx, qword [rsp + 0xf0]
lea rsi, [rdx + 7]
sar rsi, 0x3f
shr rsi, 0x3d
lea rdx, [rdx + rsi]
lea rdx, [rdx + 7]
sar rdx, 3
mov qword [rsp + 0xe8], rdx
xor ecx, ecx
xor ebx, ebx
mov rsi, qword [rsp + 0x1b8]
nop
jmp 0x664725
mov rax, qword [rsp + 0xc8]
mov rbx, qword [rsp + 0x188]
xor ecx, ecx
xor edi, edi
mov rbp, qword [rsp + 0x1c0]
add rsp, 0x1c8
ret
mov r12, qword [rsp + 0xb0]
inc r12
mov rdx, qword [rsp + 0xe8]
mov rcx, r12
mov rbx, r9
mov rsi, r11
mov rax, r10
mov r9, qword [rsp + 0xd8]
cmp rcx, r9
jge 0x664f0b
mov qword [rsp + 0x1a0], rax
mov qword [rsp + 0x1b0], rsi
mov qword [rsp + 0xb0], rcx
mov qword [rsp + 0xa0], rbx
nop
mov rax, qword [rsp + 0x1d8]
mov rbx, qword [rsp + 0x1e0]
mov rcx, rsi
mov rdi, qword [rsp + 0x98]
mov rsi, rdi
mov r8, rsi
call fcn.004b38c0
nop dword [rax]
test rbx, rbx
jne 0x664e52
mov rcx, qword [rsp + 0x98]
cmp rcx, 1
jb 0x666b52
lea r8, [rcx - 1]
mov rsi, r8
neg r8
sar r8, 0x3f
and r8d, 1
mov r10, qword [rsp + 0x1b0]
lea rax, [r10 + r8]
nop dword [rax]
cmp rcx, 1
jb 0x666b48
mov qword [rsp + 0x150], rsi
mov qword [rsp + 0x1a8], rax
mov r11, qword [rsp + 0x1a0]
lea rdi, [r11 + r8]
movzx r12d, byte [r10]
cmp r12b, 1
ja 0x664805
test r12b, r12b
je 0x66486f
mov rdx, qword [rsp + 0xe8]
mov rbx, rdx
jmp 0x666b16
cmp r12b, 2
jne 0x664812
xor edx, edx
jmp 0x666aeb
cmp r12b, 3
jne 0x664827
mov r12, qword [rsp + 0xe8]
xor edx, edx
jmp 0x666a38
cmp r12b, 4
jne 0x664e30
mov rbx, rsi
mov rcx, rbx
mov r8, rcx
mov r9, qword [rsp + 0xe8]
call fcn.00662640
mov rax, qword [rsp + 0x1a8]
mov rcx, qword [rsp + 0x98]
mov rsi, qword [rsp + 0x150]
mov r10, qword [rsp + 0x1b0]
mov r11, qword [rsp + 0x1a0]
mov r12, qword [rsp + 0x1d0]
mov r13, qword [r12 + 0x60]
nop dword [rax]
cmp r13, 7
jg 0x664bc5
cmp r13, 3
jg 0x6649ad
cmp r13, 1
jne 0x6648f0
cmp byte [r12 + 0x380], 0
je 0x6648d1
movzx edx, byte [r12 + 0x382]
mov byte [rsp + 0x3c], dl
mov r13, qword [rsp + 0x180]
mov r15, qword [rsp + 0x90]
mov rbx, qword [rsp + 0xb0]
xor edi, edi
jmp 0x6668c2
mov rdx, qword [rsp + 0x90]
mov r9, qword [rsp + 0x198]
mov r13, qword [rsp + 0xb0]
xor ebx, ebx
jmp 0x666790
cmp r13, 2
jne 0x66494d
cmp byte [r12 + 0x380], 0
nop
je 0x66492e
movzx edx, byte [r12 + 0x382]
mov byte [rsp + 0x3b], dl
mov r13, qword [rsp + 0x180]
mov r15, qword [rsp + 0x90]
mov rbx, qword [rsp + 0xb0]
xor edi, edi
jmp 0x666626
mov rdx, qword [rsp + 0x90]
mov r9, qword [rsp + 0x198]
mov r13, qword [rsp + 0xb0]
xor ebx, ebx
jmp 0x6664fa
cmp r13, 3
jne 0x664e18
cmp byte [r12 + 0x380], 0
je 0x66498e
movzx edx, byte [r12 + 0x382]
mov byte [rsp + 0x3a], dl
mov r13, qword [rsp + 0x180]
mov r15, qword [rsp + 0x90]
mov rbx, qword [rsp + 0xb0]
xor edi, edi
jmp 0x66638d
mov rdx, qword [rsp + 0x90]
mov r9, qword [rsp + 0x198]
mov r13, qword [rsp + 0xb0]
xor ebx, ebx
jmp 0x666260
cmp r13, 5
jg 0x664ab4
nop word [rax + rax]
cmp r13, 4
jne 0x664a95
cmp byte [r12 + 0x380], 0
je 0x664a05
movzx edx, byte [r12 + 0x382]
mov byte [rsp + 0x39], dl
mov r13, qword [rsp + 0x90]
mov r15, qword [rsp + 0x180]
mov rbx, qword [rsp + 0xb0]
xor edi, edi
nop dword [rax]
jmp 0x66620a
mov rdx, qword [rsp + 0x198]
mov r9, qword [rdx + 8]
mov r13, qword [rdx]
mov r15, qword [rdx + 0x10]
mov rbx, r12
mov r12, qword [rsp + 0xa0]
cmp r12, r9
ja 0x666169
sub r9, r12
cmp r9, rsi
cmovg r9, rsi
mov rsi, r12
sub r12, r15
sar r12, 0x3f
and r12, rsi
add r12, r13
cmp r12, rax
je 0x664a89
mov rbx, rax
mov rcx, r9
mov rax, r12
call fcn.004637c0
mov rcx, qword [rsp + 0x98]
mov rdx, qword [rsp + 0x198]
mov rbx, qword [rsp + 0x1d0]
mov rsi, qword [rsp + 0xa0]
mov r10, qword [rsp + 0x1b0]
mov r11, qword [rsp + 0x1a0]
mov r9, qword [rdx + 0x18]
add r9, rsi
jmp 0x66615c
mov rdx, qword [rsp + 0x90]
mov r13, qword [rsp + 0x180]
mov r15, qword [rsp + 0xb0]
xor ebx, ebx
jmp 0x666106
cmp r13, 6
jne 0x664ba5
cmp byte [r12 + 0x380], 0
je 0x664b6d
mov rdx, qword [rsp + 0x180]
mov r9, qword [rdx + 8]
mov qword [rsp + 0xa8], r9
mov r13, qword [rdx]
mov qword [rsp + 0x168], r13
movzx r15d, byte [r12 + 0x382]
mov byte [rsp + 0x3d], r15b
mov rbx, r10
movzx r10d, byte [r12 + 0x384]
mov byte [rsp + 0x3e], r10b
mov rdi, r12
movzx r12d, byte [r12 + 0x386]
mov byte [rsp + 0x3f], r12b
mov r8, qword [rsp + 0x90]
mov qword [rsp + 0x130], rax
xor eax, eax
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0xd0], rax
mov qword [rsp + 0x128], rcx
xor ecx, ecx
mov qword [rsp + 0xc0], rcx
mov rax, qword [rsp + 0x130]
mov rcx, qword [rsp + 0x128]
jmp 0x665f13
mov rdx, qword [rsp + 0x160]
mov r9, qword [rdx + 8]
mov r13, qword [rdx]
mov r15, qword [rsp + 0x90]
mov rbx, qword [rsp + 0xa0]
mov rdi, rbx
xor r8d, r8d
xor ebx, ebx
mov qword [rsp + 0xb8], rbx
mov rbx, rdi
nop
jmp 0x665dc5
mov r9, qword [rsp + 0x90]
mov r13, qword [rsp + 0x170]
mov r15, qword [rsp + 0xb0]
xor edx, edx
nop
jmp 0x665c32
cmp r13, 0xb
jg 0x664cd5
cmp r13, 9
jg 0x664c19
cmp r13, 8
jne 0x664bfa
mov r9, qword [rsp + 0x90]
mov r13, qword [rsp + 0x170]
mov r15, qword [rsp + 0xb0]
xor edx, edx
jmp 0x665ac0
mov r9, qword [rsp + 0x90]
mov r13, qword [rsp + 0x170]
mov r15, qword [rsp + 0xb0]
xor edx, edx
jmp 0x66595a
cmp r13, 0xa
jne 0x664c45
mov r9, qword [rsp + 0x170]
cmp qword [r9 + 0x48], 0x100
je 0x66585f
mov r13, qword [rsp + 0x90]
xor edx, edx
nop
jmp 0x665902
mov rdx, qword [rsp + 0x180]
mov r9, qword [rdx + 8]
mov r13, qword [rdx]
mov r15, qword [rdx + 0x10]
mov rbx, r12
mov r12, qword [rsp + 0xa0]
cmp r12, r9
ja 0x665854
sub r9, r12
cmp r9, rsi
cmovg r9, rsi
mov rsi, r12
sub r12, r15
sar r12, 0x3f
and r12, rsi
add r12, r13
cmp r12, rax
je 0x664cc9
mov rbx, rax
mov rcx, r9
mov rax, r12
call fcn.004637c0
mov rcx, qword [rsp + 0x98]
mov rdx, qword [rsp + 0x180]
mov rbx, qword [rsp + 0x1d0]
mov rsi, qword [rsp + 0xa0]
mov r10, qword [rsp + 0x1b0]
mov r11, qword [rsp + 0x1a0]
mov r9, qword [rdx + 0x18]
add r9, rsi
jmp 0x664706
cmp r13, 0xd
jg 0x664d65
nop
cmp r13, 0xc
jne 0x664d45
cmp byte [r12 + 0x380], 0
je 0x664d25
movzx edx, word [r12 + 0x381]
rol dx, 8
mov word [rsp + 0x56], dx
mov r13, qword [rsp + 0x90]
mov r15, qword [rsp + 0x178]
mov rbx, qword [rsp + 0xb0]
xor edi, edi
nop dword [rax]
jmp 0x6657f8
mov rdx, qword [rsp + 0x90]
mov r9, qword [rsp + 0x190]
mov r13, qword [rsp + 0xb0]
xor ebx, ebx
nop
jmp 0x6656e1
mov rdx, qword [rsp + 0x90]
mov r13, qword [rsp + 0x178]
mov r15, qword [rsp + 0xb0]
xor ebx, ebx
nop
jmp 0x6655a2
cmp r13, 0xe
jne 0x664df3
cmp byte [r12 + 0x380], 0
je 0x664dd4
movzx edx, word [r12 + 0x381]
rol dx, 8
mov word [rsp + 0x56], dx
movzx r13d, word [r12 + 0x383]
rol r13w, 8
mov word [rsp + 0x54], r13w
movzx r15d, word [r12 + 0x385]
rol r15w, 8
mov word [rsp + 0x52], r15w
mov rbx, qword [rsp + 0x90]
mov rdi, qword [rsp + 0x178]
mov r8, qword [rsp + 0xb0]
xor r9d, r9d
jmp 0x665376
mov rdx, qword [rsp + 0x90]
mov r13, qword [rsp + 0x158]
mov r15, qword [rsp + 0xb0]
xor ebx, ebx
jmp 0x6651b4
cmp r13, 0xf
jne 0x664e18
mov rdx, qword [rsp + 0x90]
mov r13, qword [rsp + 0x178]
mov r15, qword [rsp + 0xb0]
xor ebx, ebx
jmp 0x664fcf
mov rdx, qword [rsp + 0x180]
mov rbx, r12
mov r9, qword [rsp + 0xa0]
jmp 0x664706
xor eax, eax
xor ebx, ebx
lea rcx, [0x00768000]
lea rdi, [0x00766760]
mov rbp, qword [rsp + 0x1c0]
add rsp, 0x1c8
ret
mov qword [rsp + 0x1b0], rcx
mov qword [rsp + 0xe0], rbx
mov rdx, qword [0x008ff308]
cmp qword [0x008ff300], rbx
je 0x664e76
xor eax, eax
jmp 0x664e95
mov rax, rbx
mov rbx, rcx
mov rcx, rdx
nop
call fcn.00403ce0
mov rcx, qword [rsp + 0x1b0]
mov rbx, qword [rsp + 0xe0]
test al, al
jne 0x664ecf
mov rdx, qword [0x008ff358]
cmp qword [0x008ff350], rbx
je 0x664ead
xor eax, eax
jmp 0x664ecb
mov rax, rbx
mov rbx, rcx
mov rcx, rdx
call fcn.00403ce0
mov rcx, qword [rsp + 0x1b0]
mov rbx, qword [rsp + 0xe0]
test al, al
je 0x664ef1
xor eax, eax
xor ebx, ebx
lea rcx, [0x00768000]
lea rdi, [0x00766730]
mov rbp, qword [rsp + 0x1c0]
add rsp, 0x1c8
ret
xor eax, eax
mov rdi, rcx
mov rcx, rbx
xor ebx, ebx
mov rbp, qword [rsp + 0x1c0]
add rsp, 0x1c8
ret
mov rax, qword [rsp + 0xc8]
mov rbx, qword [rsp + 0x188]
xor ecx, ecx
xor edi, edi
mov rbp, qword [rsp + 0x1c0]
add rsp, 0x1c8
ret
mov qword [rsp + 0x148], rdi
shl r12d, 8
lea rdx, [rax + rdi*8]
lea rdx, [rdx + 7]
movzx r9d, byte [rdx]
or r9d, r12d
mov rbx, rdi
mov rcx, r15
mov edi, r10d
mov esi, r11d
movzx r8d, word [rsp + 0x4e]
mov rax, r13
nop
call fcn.0064a780
mov rdx, qword [rsp + 0x148]
lea rbx, [rdx + 1]
mov rdx, qword [rsp + 0x90]
mov rax, qword [rsp + 0x178]
mov rcx, qword [rsp + 0xb0]
mov r10, qword [rsp + 0x1a8]
mov r11, qword [rsp + 0x150]
mov rax, r10
mov rcx, qword [rsp + 0x98]
mov rsi, r11
mov r10, qword [rsp + 0x1b0]
mov r11, qword [rsp + 0x1a0]
mov r12, qword [rsp + 0x1d0]
mov r13, qword [rsp + 0x178]
mov r15, qword [rsp + 0xb0]
cmp rbx, rdx
jge 0x6650ae
mov rdi, rbx
shl rbx, 3
nop
cmp rbx, rsi
jae 0x665113
lea r12, [rax + rdi*8]
movzx r12d, byte [r12]
lea r10, [rbx + 1]
cmp r10, rsi
jae 0x665108
shl r12d, 8
lea r10, [rax + rdi*8]
lea r10, [r10 + 1]
movzx r10d, byte [r10]
or r10d, r12d
lea r12, [rbx + 2]
cmp r12, rsi
jae 0x6650fd
lea r12, [rax + rdi*8]
lea r12, [r12 + 2]
movzx r12d, byte [r12]
lea r11, [rbx + 3]
cmp r11, rsi
jae 0x6650f2
shl r12d, 8
lea r11, [rax + rdi*8]
lea r11, [r11 + 3]
movzx r11d, byte [r11]
or r11d, r12d
lea r12, [rbx + 4]
cmp r12, rsi
jae 0x6650e7
lea r12, [rax + rdi*8]
lea r12, [r12 + 4]
movzx r12d, byte [r12]
lea rdx, [rbx + 5]
cmp rdx, rsi
jae 0x6650dc
shl r12d, 8
lea rdx, [rax + rdi*8]
lea rdx, [rdx + 5]
movzx edx, byte [rdx]
or edx, r12d
lea r12, [rbx + 6]
cmp r12, rsi
jae 0x6650d1
mov word [rsp + 0x4e], dx
lea r12, [rax + rdi*8]
lea r12, [r12 + 6]
movzx r12d, byte [r12]
lea rdx, [rbx + 7]
cmp rdx, rsi
jb 0x664f2f
jmp 0x6650c6
mov rdx, qword [rsp + 0x180]
mov rbx, r12
mov r9, qword [rsp + 0xa0]
jmp 0x664706
mov rax, rdx
mov rcx, rsi
call fcn.00462e40
mov rax, r12
mov rcx, rsi
call fcn.00462e40
mov rax, rdx
mov rcx, rsi
call fcn.00462e40
mov rax, r12
mov rcx, rsi
call fcn.00462e40
mov rax, r11
mov rcx, rsi
call fcn.00462e40
mov rax, r12
mov rcx, rsi
call fcn.00462e40
mov rax, r10
mov rcx, rsi
call fcn.00462e40
mov rax, rbx
mov rcx, rsi
call fcn.00462e40
mov qword [rsp + 0x70], rbx
shl r12d, 8
lea rdx, [rax + r8*2]
lea rdx, [rdx + 5]
movzx r8d, byte [rdx]
or r8d, r12d
mov rcx, r15
mov edi, r10d
mov esi, r11d
mov r9d, 0xffffffff
mov rax, r13
call fcn.00649f40
mov rdx, qword [rsp + 0x70]
lea rbx, [rdx + 1]
mov rdx, qword [rsp + 0x90]
mov rax, qword [rsp + 0x158]
mov rcx, qword [rsp + 0xb0]
mov r10, qword [rsp + 0x1a8]
mov r11, qword [rsp + 0x150]
mov rax, r10
mov rcx, qword [rsp + 0x98]
mov rsi, r11
mov r10, qword [rsp + 0x1b0]
mov r11, qword [rsp + 0x1a0]
mov r12, qword [rsp + 0x1d0]
mov r13, qword [rsp + 0x158]
mov r15, qword [rsp + 0xb0]
cmp rbx, rdx
jge 0x66526c
lea r12, [rbx + rbx*2]
mov r8, r12
shl r12, 1
cmp r12, rsi
jae 0x6652bc
lea r12, [rax + r8*2]
movzx r12d, byte [r12]
lea r10, [r8 + r8]
lea r10, [r10 + 1]
cmp r10, rsi
jae 0x6652b1
shl r12d, 8
lea r10, [rax + r8*2]
lea r10, [r10 + 1]
movzx r10d, byte [r10]
or r10d, r12d
lea r12, [r8 + r8]
lea r12, [r12 + 2]
cmp r12, rsi
jae 0x6652a6
lea r12, [rax + r8*2]
lea r12, [r12 + 2]
movzx r12d, byte [r12]
lea r11, [r8 + r8]
lea r11, [r11 + 3]
cmp r11, rsi
jae 0x66529b
shl r12d, 8
lea r11, [rax + r8*2]
lea r11, [r11 + 3]
movzx r11d, byte [r11]
or r11d, r12d
lea r12, [r8 + r8]
lea r12, [r12 + 4]
cmp r12, rsi
jae 0x665290
lea r12, [rax + r8*2]
lea r12, [r12 + 4]
movzx r12d, byte [r12]
lea rdx, [r8 + r8]
lea rdx, [rdx + 5]
cmp rdx, rsi
jb 0x66511e
jmp 0x665285
mov rdx, qword [rsp + 0x180]
mov rbx, r12
mov r9, qword [rsp + 0xa0]
nop
jmp 0x664706
mov rax, rdx
mov rcx, rsi
call fcn.00462e40
mov rax, r12
mov rcx, rsi
call fcn.00462e40
mov rax, r11
mov rcx, rsi
call fcn.00462e40
mov rax, r12
mov rcx, rsi
call fcn.00462e40
mov rax, r10
mov rcx, rsi
call fcn.00462e40
mov rax, r12
mov rcx, rsi
call fcn.00462e40
mov qword [rsp + 0x78], r9
mov rax, rdi
mov rbx, r9
mov rcx, r8
mov edi, r11d
mov esi, r15d
mov r8d, r12d
movzx r9d, word [rsp + 0x50]
call fcn.0064a780
mov rdx, qword [rsp + 0x78]
lea r9, [rdx + 1]
mov rdx, qword [rsp + 0x90]
mov rax, qword [rsp + 0x178]
mov rcx, qword [rsp + 0xb0]
mov r10, qword [rsp + 0x1a8]
mov r11, qword [rsp + 0x150]
movzx r12d, word [rsp + 0x56]
movzx r13d, word [rsp + 0x52]
movzx r15d, word [rsp + 0x54]
mov rax, r10
mov rcx, qword [rsp + 0x98]
mov edx, r12d
mov rbx, qword [rsp + 0x90]
mov rsi, r11
mov rdi, qword [rsp + 0x178]
mov r8, qword [rsp + 0xb0]
mov r10, qword [rsp + 0x1b0]
mov r11, qword [rsp + 0x1a0]
mov r12, qword [rsp + 0x1d0]
mov r13d, r15d
movzx r15d, word [rsp + 0x52]
cmp r9, rbx
jge 0x6654b1
lea r12, [r9 + r9*2]
mov qword [rsp + 0x148], r12
shl r12, 1
cmp r12, rsi
jae 0x6654fc
mov r12, qword [rsp + 0x148]
lea r10, [rax + r12*2]
movzx r10d, byte [r10]
lea r11, [r12 + r12]
lea r11, [r11 + 1]
cmp r11, rsi
jae 0x6654f1
shl r10d, 8
lea r11, [rax + r12*2]
lea r11, [r11 + 1]
movzx r11d, byte [r11]
or r11d, r10d
lea r10, [r12 + r12]
lea r10, [r10 + 2]
cmp r10, rsi
jae 0x6654e6
lea r10, [rax + r12*2]
lea r10, [r10 + 2]
movzx r10d, byte [r10]
lea r15, [r12 + r12]
lea r15, [r15 + 3]
cmp r15, rsi
jae 0x6654db
shl r10d, 8
lea r15, [rax + r12*2]
lea r15, [r15 + 3]
movzx r15d, byte [r15]
or r15d, r10d
lea r10, [r12 + r12]
lea r10, [r10 + 4]
cmp r10, rsi
jae 0x6654d0
lea r10, [rax + r12*2]
lea r10, [r10 + 4]
movzx r10d, byte [r10]
lea r13, [r12 + r12]
lea r13, [r13 + 5]
cmp r13, rsi
jae 0x6654c5
shl r10d, 8
lea r12, [rax + r12*2]
lea r12, [r12 + 5]
movzx r12d, byte [r12]
or r12d, r10d
cmp dx, r11w
jne 0x66548e
movzx r10d, word [rsp + 0x54]
nop dword [rax + rax]
cmp r10w, r15w
jne 0x665486
movzx r13d, word [rsp + 0x52]
cmp r13w, r12w
jne 0x66549a
mov qword [rsp + 0x140], rax
xor eax, eax
mov word [rsp + 0x50], ax
jmp 0x6652c7
movzx r13d, word [rsp + 0x52]
jmp 0x66549a
movzx r10d, word [rsp + 0x54]
movzx r13d, word [rsp + 0x52]
mov qword [rsp + 0x138], rax
mov eax, 0xffffffff
mov word [rsp + 0x50], ax
jmp 0x6652c7
mov rdx, rbx
mov r13, qword [rsp + 0x158]
mov r15, r8
nop
jmp 0x66526c
mov rax, r13
mov rcx, rsi
call fcn.00462e40
mov rax, r10
mov rcx, rsi
call fcn.00462e40
mov rax, r15
mov rcx, rsi
call fcn.00462e40
mov rax, r10
mov rcx, rsi
call fcn.00462e40
mov rax, r11
mov rcx, rsi
call fcn.00462e40
mov rax, r12
mov rcx, rsi
call fcn.00462e40
mov qword [rsp + 0x148], rdi
shl r12d, 8
lea rdx, [rax + rdi*4]
lea rdx, [rdx + 3]
movzx r9d, byte [rdx]
or r9d, r12d
mov rbx, rdi
mov rcx, r15
mov edi, r10d
mov esi, edi
mov r8d, esi
mov rax, r13
call fcn.0064a780
mov rdx, qword [rsp + 0x148]
lea rbx, [rdx + 1]
mov rdx, qword [rsp + 0x90]
mov rax, qword [rsp + 0x178]
mov rcx, qword [rsp + 0xb0]
mov r10, qword [rsp + 0x150]
mov r11, qword [rsp + 0x1a8]
mov rax, r11
mov rcx, qword [rsp + 0x98]
mov rsi, r10
mov r10, qword [rsp + 0x1b0]
mov r11, qword [rsp + 0x1a0]
mov r12, qword [rsp + 0x1d0]
mov r13, qword [rsp + 0x178]
mov r15, qword [rsp + 0xb0]
cmp rbx, rdx
jge 0x66560b
mov rdi, rbx
shl rbx, 2
cmp rbx, rsi
jae 0x665646
lea r12, [rax + rdi*4]
movzx r12d, byte [r12]
lea r10, [rbx + 1]
cmp r10, rsi
jae 0x66563b
shl r12d, 8
lea r10, [rax + rdi*4]
lea r10, [r10 + 1]
movzx r10d, byte [r10]
or r10d, r12d
lea r12, [rbx + 2]
cmp r12, rsi
jae 0x665630
lea r12, [rax + rdi*4]
lea r12, [r12 + 2]
movzx r12d, byte [r12]
lea r11, [rbx + 3]
nop word [rax + rax]
cmp r11, rsi
jb 0x665507
jmp 0x665625
mov rdx, qword [rsp + 0x180]
mov rbx, r12
mov r9, qword [rsp + 0xa0]
nop
jmp 0x664706
mov rax, r11
mov rcx, rsi
call fcn.00462e40
mov rax, r12
mov rcx, rsi
call fcn.00462e40
mov rax, r10
mov rcx, rsi
call fcn.00462e40
mov rax, rbx
mov rcx, rsi
call fcn.00462e40
mov qword [rsp + 0x148], r8
shl edi, 8
lea rdx, [rax + r8*2]
lea rdx, [rdx + 1]
movzx edx, byte [rdx]
or edi, edx
mov rbx, r8
mov rcx, r13
mov rax, r9
call fcn.0064adc0
mov rdx, qword [rsp + 0x148]
lea rbx, [rdx + 1]
mov rdx, qword [rsp + 0x90]
mov rax, qword [rsp + 0x190]
mov rcx, qword [rsp + 0xb0]
mov rsi, qword [rsp + 0x1a8]
mov r8, qword [rsp + 0x150]
mov rax, rsi
mov rcx, qword [rsp + 0x98]
mov rsi, r8
mov r9, qword [rsp + 0x190]
mov r10, qword [rsp + 0x1b0]
mov r11, qword [rsp + 0x1a0]
mov r12, qword [rsp + 0x1d0]
mov r13, qword [rsp + 0xb0]
cmp rbx, rdx
jge 0x66570c
mov r8, rbx
shl rbx, 1
cmp rbx, rsi
jae 0x665730
lea r15, [rax + r8*2]
movzx edi, byte [r15]
lea r15, [r8 + r8]
lea r15, [r15 + 1]
cmp r15, rsi
jb 0x665651
jmp 0x665725
mov rdx, qword [rsp + 0x180]
mov rbx, r12
mov r9, qword [rsp + 0xa0]
nop
jmp 0x664706
mov rax, r15
mov rcx, rsi
call fcn.00462e40
mov rax, rbx
mov rcx, rsi
call fcn.00462e40
mov qword [rsp + 0x148], r8
shl r12d, 8
lea r10, [rax + r8*2]
lea r10, [r10 + 1]
movzx esi, byte [r10]
or esi, r12d
cmp dx, si
mov r9d, 0xffffffff
mov r10d, 0
cmove r9w, r10w
mov rcx, rbx
mov edi, esi
mov rbx, r8
mov r8d, esi
mov rax, r15
call fcn.0064a780
mov rdx, qword [rsp + 0x148]
lea rdi, [rdx + 1]
mov rdx, qword [rsp + 0x90]
mov rax, qword [rsp + 0x178]
mov rcx, qword [rsp + 0xb0]
movzx r10d, word [rsp + 0x56]
mov r11, qword [rsp + 0x1a8]
mov r12, qword [rsp + 0x150]
mov rax, r11
mov rcx, qword [rsp + 0x98]
mov edx, r10d
mov rbx, qword [rsp + 0xb0]
mov rsi, r12
mov r10, qword [rsp + 0x1b0]
mov r11, qword [rsp + 0x1a0]
mov r12, qword [rsp + 0x1d0]
mov r13, qword [rsp + 0x90]
mov r15, qword [rsp + 0x178]
cmp rdi, r13
jge 0x66582b
mov r8, rdi
shl rdi, 1
cmp rdi, rsi
jae 0x665849
lea r12, [rax + r8*2]
movzx r12d, byte [r12]
lea r10, [r8 + r8]
lea r10, [r10 + 1]
nop dword [rax]
cmp r10, rsi
jb 0x66573b
jmp 0x66583e
mov rdx, r13
mov r9, qword [rsp + 0x190]
mov r13, rbx
jmp 0x66570c
mov rax, r10
mov rcx, rsi
call fcn.00462e40
mov rax, rdi
mov rcx, rsi
call fcn.00462e40
mov rax, r12
mov rcx, r9
call fcn.00462f00
mov rdx, qword [r9 + 8]
mov r13, qword [r9]
mov r15, qword [r9 + 0x10]
mov rbx, r12
mov r12, qword [rsp + 0xa0]
cmp r12, rdx
ja 0x6658ee
sub rdx, r12
cmp rdx, rsi
cmovg rdx, rsi
mov rsi, r12
sub r12, r15
sar r12, 0x3f
and r12, rsi
add r12, r13
cmp r12, rax
je 0x6658d7
mov rbx, rax
mov rcx, rdx
mov rax, r12
call fcn.004637c0
mov rcx, qword [rsp + 0x98]
mov rbx, qword [rsp + 0x1d0]
mov rsi, qword [rsp + 0xa0]
mov r9, qword [rsp + 0x170]
mov r10, qword [rsp + 0x1b0]
mov r11, qword [rsp + 0x1a0]
mov r12, qword [r9 + 0x18]
add r12, rsi
mov rdx, qword [rsp + 0x180]
mov r9, r12
jmp 0x664706
mov rax, r12
mov rcx, rdx
call fcn.00462f00
inc rdx
mov r10, rdi
mov r12, rbx
cmp rdx, r13
jge 0x66585f
mov r15, qword [r9 + 0x50]
mov rbx, r12
mov r12, qword [r9 + 0x48]
cmp rdx, rsi
jae 0x665945
mov rdi, r10
movzx r10d, byte [rdx + rax]
cmp r12, r10
jg 0x6658f9
inc r10
cmp r15, r10
jb 0x665936
mov qword [r9 + 0x48], r10
jmp 0x6658f9
mov rcx, r10
mov rdx, r15
nop dword [rax]
call fcn.00462ec0
mov rax, rdx
mov rcx, rsi
call fcn.00462e40
lea rdx, [rbx + 2]
mov r10, r8
mov r12, rdi
cmp rdx, r9
jge 0x665987
mov rbx, rdx
shr rdx, 0x3f
mov rdi, r12
lea r12, [rbx + rdx]
sar r12, 1
cmp r12, rsi
jae 0x665aa8
movzx r12d, byte [r12 + rax]
xor edx, edx
jmp 0x6659d2
mov r8, r10
jmp 0x665950
mov rdx, qword [rsp + 0x180]
mov rbx, r12
mov r9, qword [rsp + 0xa0]
jmp 0x664706
inc rdx
movzx r12d, byte [rsp + 0x41]
shl r12d, 4
mov r10, qword [rsp + 0x90]
mov r15, qword [rsp + 0xb0]
mov r9, r10
mov r10, r8
mov r11, qword [rsp + 0x1a0]
mov r13, qword [rsp + 0x170]
cmp rdx, 2
jge 0x665982
mov r8, r10
lea r10, [rdx + rbx]
nop
cmp r9, r10
jle 0x665950
mov byte [rsp + 0x41], r12b
shr r12b, 4
mov byte [rsp + 0x4d], r12b
mov r11, qword [r13 + 0x50]
movzx r12d, r12b
nop
cmp qword [r13 + 0x48], r12
jg 0x665a16
inc r12
cmp r11, r12
jb 0x665a9d
mov qword [r13 + 0x48], r12
mov r11, qword [r13 + 0x20]
mov r12, qword [r13 + 0x28]
mov r9, qword [r13 + 0x30]
mov r13, qword [r13 + 0x38]
cmp r11, r10
jg 0x665a85
cmp r9, r10
jle 0x665a85
cmp r15, r12
jl 0x665a85
cmp r15, r13
jge 0x665a85
nop
mov r9, qword [rsp + 0x170]
mov r13, qword [r9 + 8]
mov qword [rsp + 0x150], r13
mov r13, qword [r9]
sub r15, r12
mov r12, qword [r9 + 0x18]
imul r12, r15
sub r10, r11
add r10, r12
mov r11, qword [rsp + 0x150]
cmp r11, r10
jbe 0x665a92
movzx r11d, byte [rsp + 0x4d]
mov byte [r13 + r10], r11b
nop dword [rax + rax]
jmp 0x66599f
mov r9, qword [rsp + 0x170]
jmp 0x66599f
mov rax, r10
mov rcx, r11
call fcn.00462e40
mov rcx, r12
mov rdx, r11
call fcn.00462ec0
mov rax, r12
mov rcx, rsi
call fcn.00462e40
lea rdx, [rbx + 4]
mov r10, r8
mov r12, rdi
nop dword [rax]
cmp rdx, r9
jge 0x665af7
mov rbx, rdx
sar rdx, 0x3f
shr rdx, 0x3e
mov rdi, r12
lea r12, [rbx + rdx]
sar r12, 2
nop dword [rax + rax]
cmp r12, rsi
jae 0x665c1d
movzx r12d, byte [r12 + rax]
xor edx, edx
jmp 0x665b42
mov r8, r10
jmp 0x665ab3
mov rdx, qword [rsp + 0x180]
mov rbx, r12
mov r9, qword [rsp + 0xa0]
jmp 0x664706
inc rdx
movzx r12d, byte [rsp + 0x42]
shl r12d, 2
mov r10, qword [rsp + 0x90]
mov r15, qword [rsp + 0xb0]
mov r9, r10
mov r10, r8
mov r11, qword [rsp + 0x1a0]
mov r13, qword [rsp + 0x170]
cmp rdx, 4
jge 0x665af2
mov r8, r10
lea r10, [rdx + rbx]
cmp r9, r10
jle 0x665ab3
mov byte [rsp + 0x42], r12b
shr r12b, 6
mov byte [rsp + 0x4d], r12b
mov r11, qword [r13 + 0x50]
movzx r12d, r12b
cmp qword [r13 + 0x48], r12
jg 0x665b8d
inc r12
nop word [rax + rax]
cmp r11, r12
jb 0x665c12
mov qword [r13 + 0x48], r12
mov r11, qword [r13 + 0x20]
mov r12, qword [r13 + 0x28]
mov r9, qword [r13 + 0x30]
mov r13, qword [r13 + 0x38]
nop dword [rax]
cmp r11, r10
jg 0x665bfa
cmp r9, r10
jle 0x665bfa
cmp r15, r12
jl 0x665bfa
cmp r15, r13
jge 0x665bfa
nop
mov r9, qword [rsp + 0x170]
mov r13, qword [r9 + 8]
mov qword [rsp + 0x150], r13
mov r13, qword [r9]
sub r15, r12
mov r12, qword [r9 + 0x18]
imul r12, r15
sub r10, r11
add r10, r12
mov r11, qword [rsp + 0x150]
cmp r11, r10
jbe 0x665c07
movzx r11d, byte [rsp + 0x4d]
mov byte [r13 + r10], r11b
jmp 0x665b0f
mov r9, qword [rsp + 0x170]
jmp 0x665b0f
mov rax, r10
mov rcx, r11
call fcn.00462e40
mov rcx, r12
mov rdx, r11
call fcn.00462ec0
mov rax, r12
mov rcx, rsi
call fcn.00462e40
lea rdx, [rbx + 8]
mov r10, r8
mov r12, rdi
cmp rdx, r9
jge 0x665c64
mov rbx, rdx
sar rdx, 0x3f
shr rdx, 0x3d
mov rdi, r12
lea r12, [rbx + rdx]
sar r12, 3
cmp r12, rsi
jae 0x665d88
movzx r12d, byte [r12 + rax]
xor edx, edx
jmp 0x665cae
mov r8, r10
jmp 0x665c28
mov rdx, qword [rsp + 0x180]
mov rbx, r12
mov r9, qword [rsp + 0xa0]
jmp 0x664706
inc rdx
movzx r12d, byte [rsp + 0x43]
shl r12d, 1
mov r10, qword [rsp + 0x90]
mov r15, qword [rsp + 0xb0]
mov r9, r10
mov r10, r8
mov r11, qword [rsp + 0x1a0]
mov r13, qword [rsp + 0x170]
cmp rdx, 8
jge 0x665c5f
mov r8, r10
lea r10, [rdx + rbx]
nop dword [rax + rax]
cmp r9, r10
jle 0x665c28
mov byte [rsp + 0x43], r12b
shr r12b, 7
mov byte [rsp + 0x4d], r12b
mov r11, qword [r13 + 0x50]
movzx r12d, r12b
nop
cmp qword [r13 + 0x48], r12
jg 0x665cf6
inc r12
cmp r11, r12
jb 0x665d7d
mov qword [r13 + 0x48], r12
mov r11, qword [r13 + 0x20]
mov r12, qword [r13 + 0x28]
mov r9, qword [r13 + 0x30]
mov r13, qword [r13 + 0x38]
cmp r11, r10
jg 0x665d65
cmp r9, r10
jle 0x665d65
cmp r15, r12
jl 0x665d65
cmp r15, r13
jge 0x665d65
nop
mov r9, qword [rsp + 0x170]
mov r13, qword [r9 + 8]
mov qword [rsp + 0x150], r13
mov r13, qword [r9]
sub r15, r12
mov r12, qword [r9 + 0x18]
imul r12, r15
sub r10, r11
add r10, r12
mov r11, qword [rsp + 0x150]
cmp r11, r10
jbe 0x665d72
movzx r11d, byte [rsp + 0x4d]
mov byte [r13 + r10], r11b
nop dword [rax + rax]
jmp 0x665c7c
mov r9, qword [rsp + 0x170]
jmp 0x665c7c
mov rax, r10
mov rcx, r11
call fcn.00462e40
mov rcx, r12
mov rdx, r11
call fcn.00462ec0
mov rax, r12
mov rcx, rsi
call fcn.00462e40
mov byte [rbx + r13 + 3], 0xff
inc r8
add rbx, 4
lea r10, [r12 + 3]
mov r11, qword [rsp + 0x1a0]
mov r12, qword [rsp + 0x1d0]
mov qword [rsp + 0xb8], r10
mov r10, qword [rsp + 0x1b0]
cmp r8, r15
jge 0x665e3d
mov r12, qword [rsp + 0xb8]
cmp r12, rsi
jae 0x665e9b
movzx r10d, byte [r12 + rax]
cmp rbx, r9
jae 0x665e90
mov byte [r13 + rbx], r10b
lea r10, [r12 + 1]
cmp r10, rsi
jae 0x665e85
lea r10, [rbx + 1]
movzx r11d, byte [r12 + rax + 1]
cmp r9, r10
jbe 0x665e75
mov byte [rbx + r13 + 1], r11b
lea r10, [r12 + 2]
cmp r10, rsi
jae 0x665e6a
lea r10, [rbx + 2]
movzx r11d, byte [r12 + rax + 2]
cmp r9, r10
jbe 0x665e5f
mov byte [rbx + r13 + 2], r11b
lea r10, [rbx + 3]
cmp r9, r10
ja 0x665d93
jmp 0x665e54
mov r9, qword [rdx + 0x18]
add r9, rdi
mov rdx, qword [rsp + 0x180]
mov rbx, r12
jmp 0x664706
mov rax, r10
mov rcx, r9
call fcn.00462e40
mov rax, r10
mov rcx, r9
call fcn.00462e40
mov rax, r10
mov rcx, rsi
call fcn.00462e40
mov rax, r10
mov rcx, r9
nop dword [rax + rax]
call fcn.00462e40
mov rax, r10
mov rcx, rsi
call fcn.00462e40
mov rax, rbx
mov rcx, r9
call fcn.00462e40
mov rax, r12
mov rcx, rsi
call fcn.00462e40
movzx r9d, byte [rsp + 0x4c]
mov byte [r12 + r15 + 3], r9b
mov r9, qword [rsp + 0x80]
inc r9
lea r11, [r12 + 4]
add rdx, 3
movzx r12d, byte [rsp + 0x3d]
movzx r13d, byte [rsp + 0x3f]
movzx r10d, byte [rsp + 0x3e]
mov r12d, r13d
mov r13, r15
movzx r15d, byte [rsp + 0x3d]
mov qword [rsp + 0x80], r9
mov qword [rsp + 0xd0], r11
mov qword [rsp + 0xc0], rdx
mov rdx, qword [rsp + 0x180]
mov r9, qword [rsp + 0xa8]
mov r11, qword [rsp + 0x1a0]
mov r11, qword [rsp + 0x80]
nop dword [rax + rax]
cmp r11, r8
jge 0x665ffa
mov rdx, qword [rsp + 0xc0]
cmp rdx, rsi
jae 0x66606a
movzx r11d, byte [rdx + rax]
lea r13, [rdx + 1]
cmp r13, rsi
jae 0x66605f
movzx r13d, byte [rdx + rax + 1]
lea r9, [rdx + 2]
cmp r9, rsi
jae 0x666054
movzx r9d, byte [rdx + rax + 2]
cmp r11b, r15b
jne 0x665f8c
cmp r13b, r10b
jne 0x665f8c
cmp r9b, r12b
jne 0x665f8c
mov qword [rsp + 0x120], rax
xor eax, eax
mov byte [rsp + 0x4c], al
mov rax, qword [rsp + 0x120]
jmp 0x665fa5
mov qword [rsp + 0x118], rax
mov eax, 0xffffffff
mov byte [rsp + 0x4c], al
mov rax, qword [rsp + 0x118]
mov r12, qword [rsp + 0xd0]
mov r10, qword [rsp + 0xa8]
cmp r12, r10
jae 0x666049
mov r15, qword [rsp + 0x168]
mov byte [r15 + r12], r11b
lea r11, [r12 + 1]
cmp r10, r11
jbe 0x66603e
mov byte [r12 + r15 + 1], r13b
lea r11, [r12 + 2]
nop
cmp r10, r11
jbe 0x666033
mov byte [r12 + r15 + 2], r9b
lea r9, [r12 + 3]
cmp r10, r9
ja 0x665ea6
jmp 0x666028
mov r13, qword [rdx + 0x18]
mov rax, qword [rsp + 0xa0]
lea r9, [rax + r13]
mov rdx, qword [rsp + 0x160]
mov r10, rbx
mov r11, qword [rsp + 0x1a0]
mov r12, rdi
mov r15, r8
jmp 0x665e44
mov rax, r9
mov rcx, r10
call fcn.00462e40
mov rax, r11
mov rcx, r10
call fcn.00462e40
mov rax, r11
mov rcx, r10
call fcn.00462e40
mov rax, r12
mov rcx, r10
call fcn.00462e40
mov rax, r9
mov rcx, rsi
call fcn.00462e40
mov rax, r13
mov rcx, rsi
call fcn.00462e40
mov rax, rdx
mov rcx, rsi
call fcn.00462e40
mov qword [rsp + 0x148], rdi
lea rdx, [rax + rdi*2]
lea rdx, [rdx + 1]
movzx r9d, byte [rdx]
mov rbx, rdi
mov rcx, r15
mov edi, r8d
mov esi, edi
mov rax, r13
call fcn.0064a380
mov rdx, qword [rsp + 0x148]
lea rbx, [rdx + 1]
mov rdx, qword [rsp + 0x90]
mov rax, qword [rsp + 0x180]
mov rcx, qword [rsp + 0xb0]
mov r10, qword [rsp + 0x150]
mov r11, qword [rsp + 0x1a8]
mov rax, r11
mov rcx, qword [rsp + 0x98]
mov rsi, r10
mov r10, qword [rsp + 0x1b0]
mov r11, qword [rsp + 0x1a0]
mov r12, qword [rsp + 0x1d0]
mov r13, qword [rsp + 0x180]
mov r15, qword [rsp + 0xb0]
cmp rbx, rdx
jge 0x666133
mov rdi, rbx
shl rbx, 1
cmp rbx, rsi
jae 0x666151
lea r12, [rax + rdi*2]
movzx r8d, byte [r12]
lea r12, [rdi + rdi]
lea r12, [r12 + 1]
cmp r12, rsi
jb 0x666075
jmp 0x666146
mov rdx, r13
mov rbx, r12
mov r9, qword [rsp + 0xa0]
jmp 0x664706
mov rax, r12
mov rcx, rsi
call fcn.00462e40
mov rax, rbx
mov rcx, rsi
call fcn.00462e40
mov rdx, qword [rsp + 0x180]
jmp 0x664706
mov rax, r12
mov rcx, r9
call fcn.00462f00
mov qword [rsp + 0x88], rdi
mov rax, r15
mov rcx, rbx
mov esi, r8d
mov rbx, rdi
mov edi, esi
call fcn.0064a380
mov rdx, qword [rsp + 0x88]
lea rdi, [rdx + 1]
mov rdx, qword [rsp + 0x90]
mov rax, qword [rsp + 0x180]
mov rcx, qword [rsp + 0xb0]
movzx r10d, byte [rsp + 0x39]
mov r11, qword [rsp + 0x1a8]
mov r12, qword [rsp + 0x150]
mov rax, r11
mov rcx, qword [rsp + 0x98]
mov edx, r10d
mov rbx, qword [rsp + 0xb0]
mov rsi, r12
mov r10, qword [rsp + 0x1b0]
mov r11, qword [rsp + 0x1a0]
mov r12, qword [rsp + 0x1d0]
mov r13, qword [rsp + 0x90]
mov r15, qword [rsp + 0x180]
cmp rdi, r13
jge 0x666231
cmp rdi, rsi
jae 0x666249
movzx r8d, byte [rdi + rax]
cmp r8b, dl
jne 0x666226
xor r9d, r9d
jmp 0x666174
mov r9d, 0xffffffff
jmp 0x666174
mov rdx, qword [rsp + 0x198]
mov rbx, r12
mov r9, qword [rsp + 0xa0]
jmp 0x66615c
mov rax, rdi
mov rcx, rsi
call fcn.00462e40
lea rbx, [r15 + 2]
mov r10, r8
mov r12, rdi
nop
cmp rbx, rdx
jge 0x666295
mov r15, rbx
shr rbx, 0x3f
mov rdi, r12
lea r12, [r15 + rbx]
sar r12, 1
cmp r12, rsi
jae 0x66637b
mov qword [rsp + 0x150], r15
movzx r12d, byte [r12 + rax]
xor ebx, ebx
jmp 0x6662d5
mov r8, r10
jmp 0x666254
mov rdx, qword [rsp + 0x180]
mov rbx, r12
mov r9, qword [rsp + 0xa0]
jmp 0x664706
inc rbx
movzx r12d, byte [rsp + 0x44]
shl r12d, 4
mov r15, qword [rsp + 0x150]
mov rdx, qword [rsp + 0x90]
mov r10, r8
mov r11, qword [rsp + 0x1a0]
cmp rbx, 2
jge 0x666290
mov r8, r10
lea r10, [rbx + r15]
cmp rdx, r10
jle 0x666254
mov byte [rsp + 0x44], r12b
shr r12b, 4
mov byte [rsp + 0x4d], r12b
shl r12d, 4
movzx r11d, byte [rsp + 0x4d]
lea r11d, [r11 + r12]
mov byte [rsp + 0x40], r11b
mov r12, qword [r9 + 0x20]
mov r11, qword [r9 + 0x28]
mov rdx, qword [r9 + 0x30]
mov r15, qword [r9 + 0x38]
nop dword [rax]
cmp r12, r10
jg 0x6662ad
cmp rdx, r10
jle 0x6662ad
cmp r13, r11
jl 0x6662ad
cmp r13, r15
jge 0x6662ad
nop
mov rdx, qword [r9 + 8]
mov r15, qword [r9]
sub r13, r11
mov r11, qword [r9 + 0x18]
imul r11, r13
sub r10, r12
add r10, r11
cmp rdx, r10
jbe 0x666370
movzx edx, byte [rsp + 0x40]
mov byte [r15 + r10], dl
mov r13, qword [rsp + 0xb0]
jmp 0x6662ad
mov rax, r10
mov rcx, rdx
call fcn.00462e40
mov rax, r12
mov rcx, rsi
call fcn.00462e40
lea rdi, [r8 + 2]
mov r12, r9
cmp rdi, r15
jge 0x6663cf
mov r8, rdi
shr rdi, 0x3f
mov r9, r12
lea r12, [r8 + rdi]
sar r12, 1
cmp r12, rsi
jae 0x6664e5
mov qword [rsp + 0x148], r8
movzx r12d, byte [r12 + rax]
xor edi, edi
nop dword [rax + rax]
jmp 0x66648a
mov r10, qword [rsp + 0x1b0]
jmp 0x666386
mov rdx, r15
mov r9, qword [rsp + 0x198]
mov r13, rbx
nop dword [rax]
jmp 0x666295
mov rax, r13
mov rcx, rbx
mov edi, r11d
mov esi, edi
mov r8d, esi
mov r9d, r12d
mov rbx, r10
call fcn.0064a380
mov rdx, qword [rsp + 0x58]
lea rdi, [rdx + 1]
movzx r12d, byte [rsp + 0x45]
shl r12d, 4
mov rdx, qword [rsp + 0x148]
movzx r10d, byte [rsp + 0x3a]
mov rax, qword [rsp + 0x180]
mov r11, qword [rsp + 0x90]
mov rcx, qword [rsp + 0xb0]
mov rax, qword [rsp + 0x1a8]
mov rcx, qword [rsp + 0x98]
mov edx, r10d
mov rbx, qword [rsp + 0xb0]
mov rsi, qword [rsp + 0x150]
mov r8, qword [rsp + 0x148]
mov r9, qword [rsp + 0x1d0]
mov r10, qword [rsp + 0x1b0]
mov r11, qword [rsp + 0x1a0]
mov r13, qword [rsp + 0x180]
mov r15, qword [rsp + 0x90]
cmp rdi, 2
jge 0x666386
lea r10, [rdi + r8]
nop dword [rax + rax]
cmp r15, r10
jle 0x6663c5
mov qword [rsp + 0x58], rdi
mov byte [rsp + 0x45], r12b
shr r12b, 4
mov byte [rsp + 0x4d], r12b
shl r12d, 4
movzx r11d, byte [rsp + 0x4d]
lea r11d, [r11 + r12]
cmp dl, r11b
jne 0x6664d7
xor r12d, r12d
jmp 0x6663e5
mov r12d, 0xffffffff
nop dword [rax]
jmp 0x6663e5
mov rax, r12
mov rcx, rsi
call fcn.00462e40
lea rbx, [r15 + 4]
mov r10, r8
mov r12, rdi
cmp rbx, rdx
jge 0x666534
mov r15, rbx
sar rbx, 0x3f
shr rbx, 0x3e
mov rdi, r12
lea r12, [r15 + rbx]
sar r12, 2
cmp r12, rsi
jae 0x666614
mov qword [rsp + 0x150], r15
movzx r12d, byte [r12 + rax]
xor ebx, ebx
jmp 0x666579
mov r8, r10
jmp 0x6664f0
mov rdx, qword [rsp + 0x180]
mov rbx, r12
mov r9, qword [rsp + 0xa0]
jmp 0x664706
inc rbx
shl r11d, 2
mov r15, qword [rsp + 0x150]
mov rdx, qword [rsp + 0x90]
mov r13, qword [rsp + 0xb0]
mov r10, r8
mov r12d, r11d
mov r11, qword [rsp + 0x1a0]
cmp rbx, 4
jge 0x66652f
mov r8, r10
lea r10, [rbx + r15]
cmp rdx, r10
jle 0x6664f0
mov r11, qword [r9 + 0x20]
mov rdx, qword [r9 + 0x28]
mov r15, qword [r9 + 0x30]
mov r9, qword [r9 + 0x38]
nop
cmp r11, r10
jg 0x6665f9
cmp r15, r10
jle 0x6665f9
cmp r13, rdx
jl 0x6665f9
cmp r13, r9
jge 0x6665f9
mov byte [rsp + 0x46], r12b
nop
mov r9, qword [rsp + 0x198]
mov r15, qword [r9 + 8]
mov r12, qword [r9]
sub r13, rdx
mov rdx, qword [r9 + 0x18]
imul rdx, r13
sub r10, r11
add rdx, r10
cmp r15, rdx
jbe 0x666609
movzx r10d, byte [rsp + 0x46]
mov r11d, r10d
shr r10b, 6
imul r10d, r10d, 0x55
mov byte [r12 + rdx], r10b
jmp 0x66654c
mov r9, qword [rsp + 0x198]
mov r11d, r12d
jmp 0x66654c
mov rax, rdx
mov rcx, r15
call fcn.00462e40
mov rax, r12
mov rcx, rsi
call fcn.00462e40
lea rdi, [r8 + 4]
mov r12, r9
cmp rdi, r15
jge 0x666668
mov r8, rdi
sar rdi, 0x3f
shr rdi, 0x3e
mov r9, r12
lea r12, [r8 + rdi]
sar r12, 2
cmp r12, rsi
jae 0x66677b
mov qword [rsp + 0x148], r8
movzx r12d, byte [r12 + rax]
xor edi, edi
jmp 0x666723
mov r10, qword [rsp + 0x1b0]
jmp 0x66661f
mov rdx, r15
mov r9, qword [rsp + 0x198]
mov r13, rbx
jmp 0x666534
mov rax, r13
mov rcx, rbx
mov edi, r12d
mov esi, edi
mov r8d, esi
movzx r9d, byte [rsp + 0x4a]
mov rbx, r10
call fcn.0064a380
mov rdx, qword [rsp + 0x60]
lea rdi, [rdx + 1]
movzx r12d, byte [rsp + 0x47]
shl r12d, 2
mov rdx, qword [rsp + 0x148]
movzx r10d, byte [rsp + 0x3b]
mov rax, qword [rsp + 0x180]
mov r11, qword [rsp + 0x90]
mov rcx, qword [rsp + 0xb0]
mov rax, qword [rsp + 0x1a8]
mov rcx, qword [rsp + 0x98]
mov edx, r10d
mov rbx, qword [rsp + 0xb0]
mov rsi, qword [rsp + 0x150]
mov r8, qword [rsp + 0x148]
mov r9, qword [rsp + 0x1d0]
mov r10, qword [rsp + 0x1b0]
mov r11, qword [rsp + 0x1a0]
mov r13, qword [rsp + 0x180]
mov r15, qword [rsp + 0x90]
cmp rdi, 4
jge 0x66661f
lea r10, [rdi + r8]
cmp r15, r10
jle 0x66665e
mov qword [rsp + 0x60], rdi
mov byte [rsp + 0x47], r12b
shr r12b, 6
imul r12d, r12d, 0x55
cmp dl, r12b
jne 0x666765
mov qword [rsp + 0x108], rax
xor eax, eax
mov byte [rsp + 0x4a], al
nop
jmp 0x66667b
mov qword [rsp + 0x110], rax
mov eax, 0xffffffff
mov byte [rsp + 0x4a], al
jmp 0x66667b
mov rax, r12
mov rcx, rsi
call fcn.00462e40
lea rbx, [r15 + 8]
mov r10, r8
mov r12, rdi
cmp rbx, rdx
jge 0x6667ca
mov r15, rbx
sar rbx, 0x3f
shr rbx, 0x3d
mov rdi, r12
lea r12, [r15 + rbx]
sar r12, 3
cmp r12, rsi
jae 0x6668b0
mov qword [rsp + 0x150], r15
movzx r12d, byte [r12 + rax]
xor ebx, ebx
jmp 0x666811
mov r8, r10
jmp 0x666786
mov rdx, qword [rsp + 0x180]
mov rbx, r12
mov r9, qword [rsp + 0xa0]
nop dword [rax]
jmp 0x664706
inc rbx
shl r11d, 1
mov r15, qword [rsp + 0x150]
mov rdx, qword [rsp + 0x90]
mov r13, qword [rsp + 0xb0]
mov r10, r8
mov r12d, r11d
mov r11, qword [rsp + 0x1a0]
cmp rbx, 8
jge 0x6667c5
mov r8, r10
lea r10, [rbx + r15]
nop
cmp rdx, r10
jle 0x666786
mov r11, qword [r9 + 0x20]
mov rdx, qword [r9 + 0x28]
mov r15, qword [r9 + 0x30]
mov r9, qword [r9 + 0x38]
cmp r11, r10
jg 0x666893
nop
cmp r15, r10
jle 0x666893
cmp r13, rdx
jl 0x666893
cmp r13, r9
jge 0x666893
mov byte [rsp + 0x48], r12b
nop
mov r9, qword [rsp + 0x198]
mov r15, qword [r9 + 8]
mov r12, qword [r9]
sub r13, rdx
mov rdx, qword [r9 + 0x18]
imul rdx, r13
sub r10, r11
add rdx, r10
cmp r15, rdx
jbe 0x6668a5
movzx r10d, byte [rsp + 0x48]
mov r11d, r10d
shr r10b, 7
neg r10d
mov byte [r12 + rdx], r10b
jmp 0x6667e5
mov r9, qword [rsp + 0x198]
mov r11d, r12d
nop
jmp 0x6667e5
mov rax, rdx
mov rcx, r15
call fcn.00462e40
mov rax, r12
mov rcx, rsi
call fcn.00462e40
lea rdi, [r8 + 8]
mov r12, r9
cmp rdi, r15
jge 0x666907
mov r8, rdi
sar rdi, 0x3f
shr rdi, 0x3d
mov r9, r12
lea r12, [r8 + rdi]
sar r12, 3
nop dword [rax]
cmp r12, rsi
jae 0x666a1b
mov qword [rsp + 0x148], r8
movzx r12d, byte [r12 + rax]
xor edi, edi
jmp 0x6669c1
mov r10, qword [rsp + 0x1b0]
jmp 0x6668bb
mov rdx, r15
mov r9, qword [rsp + 0x198]
mov r13, rbx
jmp 0x6667ca
mov rax, r13
mov rcx, rbx
mov edi, r12d
mov esi, edi
mov r8d, esi
movzx r9d, byte [rsp + 0x4b]
mov rbx, r10
call fcn.0064a380
mov rdx, qword [rsp + 0x68]
lea rdi, [rdx + 1]
movzx r12d, byte [rsp + 0x49]
shl r12d, 1
mov rdx, qword [rsp + 0x148]
movzx r10d, byte [rsp + 0x3c]
mov rax, qword [rsp + 0x180]
mov r11, qword [rsp + 0x90]
mov rcx, qword [rsp + 0xb0]
mov rax, qword [rsp + 0x1a8]
mov rcx, qword [rsp + 0x98]
mov edx, r10d
mov rbx, qword [rsp + 0xb0]
mov rsi, qword [rsp + 0x150]
mov r8, qword [rsp + 0x148]
mov r9, qword [rsp + 0x1d0]
mov r10, qword [rsp + 0x1b0]
mov r11, qword [rsp + 0x1a0]
mov r13, qword [rsp + 0x180]
mov r15, qword [rsp + 0x90]
cmp rdi, 8
jge 0x6668bb
lea r10, [rdi + r8]
cmp r15, r10
jle 0x6668fd
mov qword [rsp + 0x68], rdi
mov byte [rsp + 0x49], r12b
shr r12b, 7
neg r12d
cmp dl, r12b
jne 0x666a05
mov qword [rsp + 0xf8], rax
xor eax, eax
mov byte [rsp + 0x4b], al
nop dword [rax]
jmp 0x66691a
mov qword [rsp + 0x100], rax
mov eax, 0xffffffff
mov byte [rsp + 0x4b], al
jmp 0x66691a
mov rax, r12
mov rcx, rsi
call fcn.00462e40
movzx r15d, byte [rdx + rdi]
shr r15b, 1
add r13d, r15d
mov byte [rax + rdx], r13b
inc rdx
cmp rdx, r12
jge 0x666a52
nop dword [rax]
cmp rdx, rsi
jae 0x666ad1
movzx r13d, byte [rdx + rax]
jb 0x666a26
jmp 0x666ac6
mov rdx, r12
jmp 0x666a80
mov rbx, r15
movzx r15d, byte [r15 + rdi]
add r15, r12
mov r8, r15
shr r15, 0x3f
add r15, r8
sar r15, 1
add r13d, r15d
mov byte [rax + rbx], r13b
lea r12, [rbx + 1]
nop word [rax + rax]
cmp r12, rsi
jge 0x66486f
jae 0x666abb
movzx r13d, byte [r12 + rax]
mov r15, r12
sub r12, rdx
cmp r12, rsi
jae 0x666ab0
movzx r12d, byte [r12 + rax]
cmp r15, rsi
jb 0x666a57
mov rax, r15
mov rcx, rsi
call fcn.00462e40
mov rax, r12
mov rcx, rsi
call fcn.00462e40
mov rax, r12
mov rcx, rsi
call fcn.00462e40
mov rax, rdx
mov rcx, rsi
call fcn.00462e40
mov rax, rdx
mov rcx, rsi
call fcn.00462e40
movzx r13d, byte [rdx + rax]
add r12d, r13d
mov byte [rax + rdx], r12b
inc rdx
cmp rdx, rsi
jge 0x66486f
movzx r12d, byte [rdx + rdi]
jb 0x666adc
mov rax, rdx
mov rcx, rsi
call fcn.00462e40
movzx r15d, byte [rdx + rax]
add r12d, r15d
mov byte [rax + r13], r12b
lea rdx, [r13 + 1]
cmp rdx, rsi
jge 0x66486f
nop
jae 0x666b3d
movzx r12d, byte [rdx + rax]
mov r13, rdx
sub rdx, rbx
cmp rdx, rsi
jb 0x666b06
mov rax, rdx
mov rcx, rsi
call fcn.00462e40
mov rax, rdx
mov rcx, rsi
call fcn.00462e40
mov eax, 1
call fcn.00462f00
mov eax, 1
call fcn.00462f00
nop dword [rax]
call fcn.004343c0
call fcn.004343c0
mov rax, rdi
mov rcx, r12
call fcn.00462e40
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
mov qword [rsp + 0x20], rdi
mov byte [rsp + 0x28], sil
call fcn.00460760
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
mov rdi, qword [rsp + 0x20]
movzx esi, byte [rsp + 0x28]
jmp fcn.00663d40