Function at 0x604820
Capabilities:
Encode data using base64

Disassembly:
lea r12, [rsp - 0x170]
cmp r12, qword [r14 + 0x10]
jbe 0x605fc6
push rbp
mov rbp, rsp
sub rsp, 0x1e8
mov qword [rsp + 0x208], rcx
mov qword [rsp + 0x200], rbx
mov qword [rsp + 0x1f8], rax
movups xmmword [rsp + 0x138], xmm15
movups xmmword [rsp + 0x148], xmm15
mov edi, 1
lea rcx, [0x007207fa]
call fcn.004d7780
nop dword [rax + rax]
test sil, sil
je 0x604bc7
mov qword [rsp + 0xe8], rcx
mov qword [rsp + 0x50], rdi
mov qword [rsp + 0x98], rbx
mov qword [rsp + 0x130], rax
test rbx, rbx
jne 0x6048af
xor edx, edx
jmp 0x6048e0
lea rcx, [0x0078b4f8]
call fcn.004d6340
test rax, rax
setl dl
mov rax, qword [rsp + 0x130]
mov rcx, qword [rsp + 0xe8]
mov rbx, qword [rsp + 0x98]
mov rdi, qword [rsp + 0x50]
nop
test dl, dl
je 0x604bba
test rdi, rdi
jne 0x6048f1
xor edx, edx
jmp 0x604928
mov rax, rcx
mov rbx, rdi
lea rcx, [0x0078b4f8]
nop
call fcn.004d6340
test rax, rax
setl dl
mov rax, qword [rsp + 0x130]
mov rcx, qword [rsp + 0xe8]
mov rbx, qword [rsp + 0x98]
mov rdi, qword [rsp + 0x50]
test dl, dl
je 0x604bba
call fcn.004d5cc0
mov rcx, qword [rsp + 0x138]
nop
nop
test rcx, rcx
je 0x604957
lea rdx, [rsp + 0x138]
cmp rcx, rdx
je 0x604967
jmp 0x605fb1
lea rdx, [rsp + 0x138]
mov qword [rsp + 0x138], rdx
mov rcx, qword [rsp + 0x150]
mov rdx, qword [rsp + 0x148]
lea r8, [rbx + rdx]
mov r9, qword [rsp + 0x140]
cmp rcx, r8
jae 0x6049cd
mov qword [rsp + 0xd8], rdx
mov qword [rsp + 0x78], rbx
mov qword [rsp + 0x120], rax
mov rax, r9
mov rdi, rbx
lea rsi, [0x006bd080]
mov rbx, r8
call fcn.0044f7c0
mov rdx, qword [rsp + 0xd8]
mov r9, rax
mov r8, rbx
mov rax, qword [rsp + 0x120]
mov rbx, qword [rsp + 0x78]
mov qword [rsp + 0xd8], rcx
mov qword [rsp + 0xd0], r8
mov qword [rsp + 0x180], r9
add rdx, r9
mov rsi, rax
mov rax, rdx
mov rdi, rbx
mov rbx, rsi
mov rcx, rdi
call fcn.0046d560
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x148], rdx
mov rdx, qword [rsp + 0xd8]
mov qword [rsp + 0x150], rdx
mov rdx, qword [rsp + 0x180]
mov qword [rsp + 0x140], rdx
mov rdx, qword [rsp + 0x138]
nop
nop
test rdx, rdx
je 0x604a4d
lea r8, [rsp + 0x138]
cmp rdx, r8
je 0x604a5d
jmp 0x605f9e
lea rdx, [rsp + 0x138]
mov qword [rsp + 0x138], rdx
mov rcx, qword [rsp + 0x150]
mov rbx, qword [rsp + 0x148]
inc rbx
mov rax, qword [rsp + 0x140]
cmp rcx, rbx
jae 0x604a9e
mov edi, 1
lea rsi, [0x006bd080]
call fcn.0044f7c0
mov qword [rsp + 0x150], rcx
mov qword [rsp + 0x140], rax
mov qword [rsp + 0x148], rbx
mov byte [rbx + rax - 1], 0x2f
mov rax, qword [rsp + 0xe8]
mov rbx, qword [rsp + 0x50]
call fcn.004d5cc0
mov rcx, qword [rsp + 0x138]
nop
test rcx, rcx
je 0x604add
lea rdx, [rsp + 0x138]
cmp rcx, rdx
je 0x604aed
jmp 0x605f8b
lea rdx, [rsp + 0x138]
mov qword [rsp + 0x138], rdx
mov rcx, qword [rsp + 0x150]
mov rdx, qword [rsp + 0x148]
lea r8, [rdx + rbx]
mov r9, qword [rsp + 0x140]
cmp rcx, r8
jae 0x604b53
mov qword [rsp + 0x70], rbx
mov qword [rsp + 0x118], rax
mov qword [rsp + 0xd8], rdx
mov rax, r9
mov rdi, rbx
lea rsi, [0x006bd080]
mov rbx, r8
call fcn.0044f7c0
mov rdx, qword [rsp + 0xd8]
mov r9, rax
mov r8, rbx
mov rax, qword [rsp + 0x118]
mov rbx, qword [rsp + 0x70]
mov qword [rsp + 0xd8], rcx
mov qword [rsp + 0xd0], r8
mov qword [rsp + 0x180], r9
add rdx, r9
mov rsi, rax
mov rax, rdx
mov rdi, rbx
mov rbx, rsi
mov rcx, rdi
nop dword [rax]
call fcn.0046d560
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x148], rdx
mov rdx, qword [rsp + 0xd8]
mov qword [rsp + 0x150], rdx
mov rdx, qword [rsp + 0x180]
mov qword [rsp + 0x140], rdx
jmp 0x604d05
xor eax, eax
xor ebx, ebx
add rsp, 0x1e8
pop rbp
ret
mov rbx, qword [rsp + 0x200]
test rbx, rbx
je 0x604d89
mov rax, qword [rsp + 0x1f8]
lea rcx, [0x0078b4f8]
call fcn.004d6340
test rax, rax
jge 0x604d89
mov rax, qword [rsp + 0x1f8]
mov rbx, qword [rsp + 0x200]
call fcn.004d5cc0
mov rcx, qword [rsp + 0x138]
nop
test rcx, rcx
je 0x604c2a
lea rdx, [rsp + 0x138]
cmp rcx, rdx
je 0x604c3a
jmp 0x605f78
lea rdx, [rsp + 0x138]
mov qword [rsp + 0x138], rdx
mov rcx, qword [rsp + 0x150]
mov rdx, qword [rsp + 0x148]
lea r8, [rdx + rbx]
mov r9, qword [rsp + 0x140]
cmp rcx, r8
jae 0x604ca6
mov qword [rsp + 0x80], rbx
mov qword [rsp + 0x128], rax
mov qword [rsp + 0xd8], rdx
mov rax, r9
mov rdi, rbx
lea rsi, [0x006bd080]
mov rbx, r8
call fcn.0044f7c0
mov rdx, qword [rsp + 0xd8]
mov r9, rax
mov r8, rbx
mov rax, qword [rsp + 0x128]
mov rbx, qword [rsp + 0x80]
mov qword [rsp + 0xd8], rcx
mov qword [rsp + 0xd0], r8
mov qword [rsp + 0x180], r9
add rdx, r9
mov rsi, rax
mov rax, rdx
mov rdi, rbx
mov rbx, rsi
mov rcx, rdi
call fcn.0046d560
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x148], rdx
mov rdx, qword [rsp + 0xd8]
mov qword [rsp + 0x150], rdx
mov rdx, qword [rsp + 0x180]
mov qword [rsp + 0x140], rdx
mov rdx, qword [rsp + 0x208]
test rdx, rdx
je 0x604d17
mov rsi, qword [rdx]
jmp 0x604d19
xor esi, esi
mov qword [rsp + 0xb0], rsi
lea rax, [0x006bd000]
xor ebx, ebx
mov rcx, rsi
call fcn.0044f6e0
mov qword [rsp + 0x178], rax
lea rdi, [rsp + 0x188]
lea rdi, [rdi - 0x20]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.0046ce8b
mov rbp, qword [rbp]
mov rbx, qword [rsp + 0x208]
lea rcx, [rsp + 0x188]
lea rax, [0x006cd980]
call fcn.00410920
mov rax, qword [rsp + 0xb0]
mov rcx, qword [rsp + 0x178]
xor edx, edx
jmp 0x604dc7
xor eax, eax
xor ebx, ebx
add rsp, 0x1e8
pop rbp
ret
mov qword [rsp + 0x158], rcx
mov qword [rcx + rsi], rdx
lea rax, [rsp + 0x188]
call fcn.00410b40
mov rax, qword [rsp + 0xb0]
mov rcx, qword [rsp + 0x158]
mov rdx, qword [rsp + 0xa8]
mov r8, qword [rsp + 0x188]
test r8, r8
je 0x604e6a
lea rbx, [rdx + 1]
mov rdx, qword [r8]
mov r8, qword [r8 + 8]
cmp rax, rbx
jae 0x604e2b
mov qword [rsp + 0x168], rdx
mov qword [rsp + 0xc0], r8
mov edi, 1
lea rsi, [0x006bd000]
mov rdx, rax
mov rax, rcx
mov rcx, rdx
call fcn.0044f7c0
mov rdx, qword [rsp + 0x168]
mov r8, qword [rsp + 0xc0]
mov rsi, rcx
mov rcx, rax
mov rax, rsi
mov qword [rsp + 0xa8], rbx
mov qword [rsp + 0xb0], rax
lea rsi, [rbx - 1]
shl rsi, 4
mov qword [rcx + rsi + 8], r8
cmp dword [0x00a58b50], 0
je 0x604d96
call fcn.0046c800
mov qword [r11], rdx
mov rdi, qword [rcx + rsi]
mov qword [r11 + 8], rdi
jmp 0x604d96
mov qword [rsp + 0xa8], rdx
mov qword [rsp + 0x170], rcx
mov rbx, rdx
mov rdx, rax
mov rax, rcx
mov rcx, rdx
call fcn.004989a0
mov rdx, qword [rsp + 0x170]
mov rax, qword [rsp + 0xa8]
jmp 0x604eb4
mov rdx, qword [rsp + 0x178]
add rdx, 0x10
mov rax, qword [rsp + 0xd8]
dec rax
test rax, rax
jle 0x605556
mov qword [rsp + 0xd8], rax
mov qword [rsp + 0x178], rdx
mov rdi, qword [rdx + 8]
mov qword [rsp + 0xb8], rdi
mov rcx, qword [rdx]
mov qword [rsp + 0x160], rcx
lea rax, [0x006cd980]
mov rbx, qword [rsp + 0x208]
call fcn.004137e0
mov rdx, qword [rsp + 0x138]
mov rsi, qword [rax + 8]
mov r8, qword [rax]
nop
nop
test rdx, rdx
je 0x604f25
lea r9, [rsp + 0x138]
cmp rdx, r9
je 0x604f35
nop dword [rax + rax]
jmp 0x605f65
lea rdx, [rsp + 0x138]
mov qword [rsp + 0x138], rdx
mov qword [rsp + 0xe0], r8
mov qword [rsp + 0x48], rsi
mov rcx, qword [rsp + 0x150]
mov rbx, qword [rsp + 0x148]
inc rbx
mov rax, qword [rsp + 0x140]
nop dword [rax]
cmp rcx, rbx
jae 0x604f93
mov edi, 1
lea rsi, [0x006bd080]
call fcn.0044f7c0
mov qword [rsp + 0x150], rcx
mov qword [rsp + 0x140], rax
mov rsi, qword [rsp + 0x48]
mov r8, qword [rsp + 0xe0]
mov qword [rsp + 0x148], rbx
mov byte [rbx + rax - 1], 0x3b
mov rdx, qword [rsp + 0x138]
nop
nop
test rdx, rdx
je 0x604fc5
lea r9, [rsp + 0x138]
cmp rdx, r9
je 0x604fd5
nop dword [rax]
jmp 0x605f52
lea rdx, [rsp + 0x138]
mov qword [rsp + 0x138], rdx
mov rcx, qword [rsp + 0x150]
mov rbx, qword [rsp + 0x148]
inc rbx
mov rax, qword [rsp + 0x140]
cmp rcx, rbx
jae 0x605023
mov edi, 1
lea rsi, [0x006bd080]
call fcn.0044f7c0
mov qword [rsp + 0x150], rcx
mov qword [rsp + 0x140], rax
mov rsi, qword [rsp + 0x48]
mov r8, qword [rsp + 0xe0]
mov qword [rsp + 0x148], rbx
mov byte [rbx + rax - 1], 0x20
mov rbx, qword [rsp + 0xb8]
nop dword [rax + rax]
test rbx, rbx
je 0x605549
mov rax, qword [rsp + 0x160]
lea rcx, [0x0078b4f8]
call fcn.004d6340
nop dword [rax]
test rax, rax
jge 0x605549
mov rax, qword [rsp + 0x160]
mov rbx, qword [rsp + 0xb8]
call fcn.004d5cc0
mov rcx, qword [rsp + 0x138]
nop
test rcx, rcx
je 0x60509e
lea rdx, [rsp + 0x138]
cmp rcx, rdx
je 0x6050ae
jmp 0x605f3f
lea rdx, [rsp + 0x138]
mov qword [rsp + 0x138], rdx
mov rcx, qword [rsp + 0x150]
mov rdx, qword [rsp + 0x148]
lea r8, [rbx + rdx]
mov r9, qword [rsp + 0x140]
cmp rcx, r8
jae 0x605114
mov qword [rsp + 0xd0], rdx
mov qword [rsp + 0x68], rbx
mov qword [rsp + 0x110], rax
mov rax, r9
mov rdi, rbx
lea rsi, [0x006bd080]
mov rbx, r8
call fcn.0044f7c0
mov rdx, qword [rsp + 0xd0]
mov r9, rax
mov r8, rbx
mov rax, qword [rsp + 0x110]
mov rbx, qword [rsp + 0x68]
mov qword [rsp + 0xd0], r8
mov qword [rsp + 0x180], r9
mov qword [rsp + 0xc8], rcx
add rdx, r9
mov rsi, rax
mov rax, rdx
mov rdi, rbx
mov rbx, rsi
mov rcx, rdi
nop
call fcn.0046d560
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x148], rdx
mov rdx, qword [rsp + 0xc8]
mov qword [rsp + 0x150], rdx
mov rdx, qword [rsp + 0x180]
mov qword [rsp + 0x140], rdx
nop
mov rdx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0xe0]
xor eax, eax
jmp 0x60558d
cmp rax, rdx
jge 0x605231
mov r8, qword [rsp + 0x138]
nop
nop
nop dword [rax]
test r8, r8
je 0x6051b7
lea r9, [rsp + 0x138]
cmp r8, r9
je 0x6051c7
jmp 0x605f2c
lea r8, [rsp + 0x138]
mov qword [rsp + 0x138], r8
mov rcx, qword [rsp + 0x150]
mov rbx, qword [rsp + 0x148]
inc rbx
mov r8, qword [rsp + 0x140]
cmp rcx, rbx
jae 0x605223
mov rax, r8
mov edi, 1
lea rsi, [0x006bd080]
call fcn.0044f7c0
mov qword [rsp + 0x150], rcx
mov qword [rsp + 0x140], rax
mov rdx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0xe0]
mov r8, rax
mov rax, qword [rsp + 0xd0]
mov qword [rsp + 0x148], rbx
mov byte [rbx + r8 - 1], 0x2a
mov r8, qword [rsp + 0x138]
nop
nop
nop dword [rax + rax]
test r8, r8
je 0x605257
lea r9, [rsp + 0x138]
cmp r8, r9
je 0x605267
jmp 0x605f19
lea r8, [rsp + 0x138]
mov qword [rsp + 0x138], r8
mov rcx, qword [rsp + 0x150]
mov rbx, qword [rsp + 0x148]
inc rbx
mov r8, qword [rsp + 0x140]
cmp rcx, rbx
jb 0x60528c
cmp rax, rdx
jmp 0x6052d3
mov rax, r8
mov edi, 1
lea rsi, [0x006bd080]
nop dword [rax + rax]
call fcn.0044f7c0
mov qword [rsp + 0x150], rcx
mov qword [rsp + 0x140], rax
mov rdx, qword [rsp + 0xd0]
mov rcx, qword [rsp + 0x48]
cmp rdx, rcx
mov rdx, rcx
mov rsi, qword [rsp + 0xe0]
mov r8, rax
mov qword [rsp + 0x148], rbx
mov byte [rbx + r8 - 1], 0x3d
jge 0x60539f
mov r8, qword [rsp + 0x138]
nop
test r8, r8
je 0x60530a
lea r9, [rsp + 0x138]
nop dword [rax]
cmp r8, r9
je 0x60531a
jmp 0x605f06
lea r8, [rsp + 0x138]
mov qword [rsp + 0x138], r8
mov rbx, qword [rsp + 0x148]
lea r8, [rbx + 7]
mov rcx, qword [rsp + 0x150]
mov rax, qword [rsp + 0x140]
cmp rcx, r8
jae 0x60536f
mov qword [rsp + 0xd0], rbx
mov rbx, r8
mov edi, 7
lea rsi, [0x006bd080]
call fcn.0044f7c0
mov rdx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0xe0]
mov r8, rbx
mov rbx, qword [rsp + 0xd0]
mov dword [rax + rbx], 0x2d667475
mov dword [rax + rbx + 3], 0x2727382d
mov qword [rsp + 0x148], r8
mov qword [rsp + 0x150], rcx
mov qword [rsp + 0x140], rax
xor eax, eax
xor ecx, ecx
jmp 0x6059e0
nop
test rdx, rdx
jne 0x6053a9
xor eax, eax
jmp 0x6053d0
mov rax, rsi
mov rbx, rdx
lea rcx, [0x0078b4f8]
call fcn.004d6340
test rax, rax
setl dl
mov rsi, qword [rsp + 0xe0]
mov eax, edx
mov rdx, qword [rsp + 0x48]
test al, al
jne 0x60546c
mov r8, qword [rsp + 0x138]
nop
test r8, r8
je 0x6053f8
lea r9, [rsp + 0x138]
cmp r8, r9
je 0x605408
jmp 0x6059ca
lea r8, [rsp + 0x138]
mov qword [rsp + 0x138], r8
mov rcx, qword [rsp + 0x150]
mov rbx, qword [rsp + 0x148]
inc rbx
mov rax, qword [rsp + 0x140]
cmp rcx, rbx
jae 0x605456
mov edi, 1
lea rsi, [0x006bd080]
call fcn.0044f7c0
mov qword [rsp + 0x150], rcx
mov qword [rsp + 0x140], rax
mov rdx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0xe0]
mov qword [rsp + 0x148], rbx
mov byte [rbx + rax - 1], 0x22
xor eax, eax
xor ecx, ecx
jmp 0x60560b
mov r8, qword [rsp + 0x138]
nop
nop
test r8, r8
je 0x60548d
lea r9, [rsp + 0x138]
cmp r8, r9
je 0x60549d
jmp 0x6055f5
lea r8, [rsp + 0x138]
mov qword [rsp + 0x138], r8
mov rcx, qword [rsp + 0x150]
mov r8, qword [rsp + 0x148]
lea rbx, [rdx + r8]
mov rax, qword [rsp + 0x140]
cmp rcx, rbx
jae 0x6054ea
mov qword [rsp + 0xd0], r8
mov rdi, rdx
lea rsi, [0x006bd080]
call fcn.0044f7c0
mov rdx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0xe0]
mov r8, qword [rsp + 0xd0]
mov qword [rsp + 0xd0], rbx
mov qword [rsp + 0x180], rax
mov qword [rsp + 0xc8], rcx
lea rdi, [rax + r8]
mov rax, rdi
mov rbx, rsi
mov rcx, rdx
call fcn.0046d560
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x148], rdx
mov rdx, qword [rsp + 0xc8]
mov qword [rsp + 0x150], rdx
mov rdx, qword [rsp + 0x180]
mov qword [rsp + 0x140], rdx
jmp 0x604e9d
xor eax, eax
xor ebx, ebx
add rsp, 0x1e8
pop rbp
ret
mov rbx, qword [rsp + 0x148]
mov rax, qword [rsp + 0x140]
mov rcx, rax
neg rcx
cmp rbx, rcx
ja 0x60557a
add rsp, 0x1e8
pop rbp
ret
test rax, rax
je 0x605585
nop
call fcn.00462e60
call fcn.00462ea0
mov rax, r9
mov qword [rsp + 0xd0], rax
cmp rax, rdx
jge 0x60518d
movzx r8d, byte [rsi + rax]
cmp r8d, 0x80
jge 0x6055b2
lea r9, [rax + 1]
jmp 0x6055e0
mov rbx, rdx
mov rcx, rax
mov rax, rsi
nop dword [rax + rax]
call fcn.00463020
mov rdx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0xe0]
mov r8d, eax
mov r9, rbx
mov rax, qword [rsp + 0xd0]
lea r10d, [r8 - 0x20]
cmp r10d, 0x5e
jbe 0x60558a
cmp r8d, 9
je 0x60558a
jmp 0x60518a
lea rax, [0x006bd000]
lea rbx, [0x007dd1d0]
call fcn.004389c0
inc rax
cmp rax, rdx
jge 0x6057d6
movzx r8d, byte [rsi + rax]
cmp r8b, 0x22
je 0x605626
nop
cmp r8b, 0x5c
jne 0x605608
cmp rcx, rax
ja 0x6059bc
mov rdi, rax
sub rdi, rcx
mov r8, rdi
neg r8
sar r8, 0x3f
and rcx, r8
mov r8, qword [rsp + 0x138]
lea rbx, [rcx + rsi]
nop
test r8, r8
je 0x60566a
lea r9, [rsp + 0x138]
nop dword [rax]
cmp r8, r9
je 0x60567a
jmp 0x6059a9
lea r8, [rsp + 0x138]
mov qword [rsp + 0x138], r8
mov qword [rsp + 0x88], rax
mov rcx, qword [rsp + 0x150]
mov r8, qword [rsp + 0x148]
lea r9, [r8 + rdi]
mov r10, qword [rsp + 0x140]
nop
cmp rcx, r9
jae 0x6056e7
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0xf8], rbx
mov qword [rsp + 0xd0], r8
mov rax, r10
mov rbx, r9
lea rsi, [0x006bd080]
call fcn.0044f7c0
mov rdi, qword [rsp + 0x58]
mov r8, qword [rsp + 0xd0]
mov r10, rax
mov r9, rbx
mov rbx, qword [rsp + 0xf8]
mov qword [rsp + 0x180], r10
mov qword [rsp + 0xd0], r9
mov qword [rsp + 0xc8], rcx
lea rax, [r10 + r8]
mov rcx, rdi
call fcn.0046d560
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x148], rdx
mov rdx, qword [rsp + 0xc8]
mov qword [rsp + 0x150], rdx
mov rdx, qword [rsp + 0x180]
mov qword [rsp + 0x140], rdx
mov rdx, qword [rsp + 0x138]
nop
test rdx, rdx
je 0x60575b
lea r8, [rsp + 0x138]
cmp rdx, r8
je 0x60576b
jmp 0x605996
lea rdx, [rsp + 0x138]
mov qword [rsp + 0x138], rdx
mov rcx, qword [rsp + 0x150]
mov rbx, qword [rsp + 0x148]
inc rbx
mov rax, qword [rsp + 0x140]
cmp rcx, rbx
jae 0x6057ac
mov edi, 1
lea rsi, [0x006bd080]
call fcn.0044f7c0
mov qword [rsp + 0x150], rcx
mov qword [rsp + 0x140], rax
mov qword [rsp + 0x148], rbx
mov byte [rbx + rax - 1], 0x5c
mov rax, qword [rsp + 0x88]
mov rdx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0xe0]
mov rcx, rax
jmp 0x605608
cmp rcx, rdx
ja 0x60598b
sub rdx, rcx
mov rdi, rdx
neg rdx
sar rdx, 0x3f
and rcx, rdx
mov rdx, qword [rsp + 0x138]
lea rbx, [rcx + rsi]
nop
nop dword [rax]
test rdx, rdx
je 0x605817
lea r8, [rsp + 0x138]
cmp rdx, r8
je 0x605827
jmp 0x605978
lea rdx, [rsp + 0x138]
mov qword [rsp + 0x138], rdx
mov rcx, qword [rsp + 0x150]
mov rdx, qword [rsp + 0x148]
lea r8, [rdx + rdi]
mov rax, qword [rsp + 0x140]
cmp rcx, r8
jae 0x60588a
mov qword [rsp + 0xd0], rdi
mov qword [rsp + 0xf0], rbx
mov qword [rsp + 0xc8], rdx
mov rbx, r8
lea rsi, [0x006bd080]
call fcn.0044f7c0
mov rdx, qword [rsp + 0xc8]
mov rdi, qword [rsp + 0xd0]
mov r8, rbx
mov rbx, qword [rsp + 0xf0]
mov qword [rsp + 0xd0], rcx
mov qword [rsp + 0xc8], r8
mov qword [rsp + 0x180], rax
add rdx, rax
mov rax, rdx
mov rcx, rdi
call fcn.0046d560
mov rdx, qword [rsp + 0xc8]
mov qword [rsp + 0x148], rdx
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x150], rdx
mov rdx, qword [rsp + 0x180]
mov qword [rsp + 0x140], rdx
mov rdx, qword [rsp + 0x138]
nop
test rdx, rdx
je 0x6058fd
lea r8, [rsp + 0x138]
cmp rdx, r8
je 0x60590d
jmp 0x605965
lea rdx, [rsp + 0x138]
mov qword [rsp + 0x138], rdx
mov rcx, qword [rsp + 0x150]
mov rbx, qword [rsp + 0x148]
inc rbx
mov rax, qword [rsp + 0x140]
cmp rcx, rbx
jae 0x60594e
mov edi, 1
lea rsi, [0x006bd080]
call fcn.0044f7c0
mov qword [rsp + 0x150], rcx
mov qword [rsp + 0x140], rax
mov qword [rsp + 0x148], rbx
mov byte [rbx + rax - 1], 0x22
nop dword [rax + rax]
jmp 0x604e9d
lea rax, [0x006bd000]
lea rbx, [0x007dd1d0]
call fcn.004389c0
lea rax, [0x006bd000]
lea rbx, [0x007dd1d0]
call fcn.004389c0
mov rax, rcx
mov rcx, rdx
call fcn.0046cc60
lea rax, [0x006bd000]
lea rbx, [0x007dd1d0]
call fcn.004389c0
lea rax, [0x006bd000]
lea rbx, [0x007dd1d0]
call fcn.004389c0
mov rdx, rax
mov rax, rcx
mov rcx, rdx
call fcn.0046cc60
lea rax, [0x006bd000]
lea rbx, [0x007dd1d0]
call fcn.004389c0
inc rax
cmp rax, rdx
jge 0x605d80
mov qword [rsp + 0xa0], rax
movzx r8d, byte [rsi + rax]
mov byte [rsp + 0x45], r8b
lea r9d, [r8 - 0x21]
nop
cmp r9b, 0x5e
jb 0x605a0d
mov ebx, 1
jmp 0x605a83
cmp r8b, 0x2a
jne 0x605a20
mov ebx, 1
jmp 0x605a83
cmp r8b, 0x27
jne 0x605a2d
mov ebx, 1
jmp 0x605a83
cmp r8b, 0x25
jne 0x605a3a
mov ebx, 1
jmp 0x605a83
mov qword [rsp + 0x90], rcx
nop
nop
lea rax, [0x007241c3]
mov ebx, 0xf
mov ecx, r8d
call fcn.004d4620
test rax, rax
setge dl
mov rax, qword [rsp + 0xa0]
mov rcx, qword [rsp + 0x90]
mov rsi, qword [rsp + 0xe0]
movzx r8d, byte [rsp + 0x45]
mov ebx, edx
mov rdx, qword [rsp + 0x48]
test bl, bl
je 0x6059dd
cmp rcx, rax
ja 0x605ef8
mov rdi, rax
sub rdi, rcx
mov r9, rdi
neg r9
sar r9, 0x3f
and rcx, r9
mov r9, qword [rsp + 0x138]
lea rbx, [rsi + rcx]
nop
test r9, r9
je 0x605acb
lea r10, [rsp + 0x138]
cmp r9, r10
je 0x605adb
jmp 0x605ee5
lea r9, [rsp + 0x138]
mov qword [rsp + 0x138], r9
mov rcx, qword [rsp + 0x150]
mov r9, qword [rsp + 0x148]
lea r10, [r9 + rdi]
mov r11, qword [rsp + 0x140]
cmp rcx, r10
jae 0x605b40
mov qword [rsp + 0x60], rdi
mov qword [rsp + 0x108], rbx
mov qword [rsp + 0xd0], r9
mov rax, r11
mov rbx, r10
lea rsi, [0x006bd080]
nop
call fcn.0044f7c0
mov rdi, qword [rsp + 0x60]
mov r9, qword [rsp + 0xd0]
mov r11, rax
mov r10, rbx
mov rbx, qword [rsp + 0x108]
mov qword [rsp + 0xd0], rcx
mov qword [rsp + 0xc8], r10
mov qword [rsp + 0x180], r11
lea rax, [r11 + r9]
mov rcx, rdi
nop
call fcn.0046d560
mov rdx, qword [rsp + 0xc8]
mov qword [rsp + 0x148], rdx
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x150], rdx
mov rdx, qword [rsp + 0x180]
mov qword [rsp + 0x140], rdx
mov rdx, qword [rsp + 0x138]
nop
nop
nop
test rdx, rdx
je 0x605bb7
lea r8, [rsp + 0x138]
cmp rdx, r8
je 0x605bc7
jmp 0x605ecf
lea rdx, [rsp + 0x138]
mov qword [rsp + 0x138], rdx
mov rcx, qword [rsp + 0x150]
mov rbx, qword [rsp + 0x148]
inc rbx
mov rax, qword [rsp + 0x140]
cmp rcx, rbx
jae 0x605c08
mov edi, 1
lea rsi, [0x006bd080]
call fcn.0044f7c0
mov qword [rsp + 0x150], rcx
mov qword [rsp + 0x140], rax
mov qword [rsp + 0x148], rbx
mov byte [rbx + rax - 1], 0x25
movzx edx, byte [rsp + 0x45]
mov r8d, edx
shr dl, 4
movzx edx, dl
mov r9, qword [rsp + 0x138]
lea r10, [0x007246e0]
movzx edx, byte [r10 + rdx]
nop
test r9, r9
je 0x605c4f
lea r11, [rsp + 0x138]
cmp r9, r11
je 0x605c5f
jmp 0x605ebc
lea r9, [rsp + 0x138]
mov qword [rsp + 0x138], r9
mov rcx, qword [rsp + 0x150]
mov rbx, qword [rsp + 0x148]
inc rbx
mov rax, qword [rsp + 0x140]
cmp rcx, rbx
jae 0x605cb6
mov byte [rsp + 0x47], dl
mov edi, 1
lea rsi, [0x006bd080]
call fcn.0044f7c0
mov qword [rsp + 0x150], rcx
mov qword [rsp + 0x140], rax
movzx edx, byte [rsp + 0x47]
movzx r8d, byte [rsp + 0x45]
lea r10, [0x007246e0]
mov qword [rsp + 0x148], rbx
mov byte [rbx + rax - 1], dl
and r8d, 0xf
mov rdx, qword [rsp + 0x138]
movzx r8d, byte [r8 + r10]
nop
test rdx, rdx
je 0x605ceb
lea r9, [rsp + 0x138]
cmp rdx, r9
je 0x605cfb
jmp 0x605ea9
lea rdx, [rsp + 0x138]
mov qword [rsp + 0x138], rdx
mov rcx, qword [rsp + 0x150]
mov rbx, qword [rsp + 0x148]
inc rbx
mov rax, qword [rsp + 0x140]
cmp rcx, rbx
jae 0x605d47
mov byte [rsp + 0x46], r8b
mov edi, 1
lea rsi, [0x006bd080]
call fcn.0044f7c0
mov qword [rsp + 0x150], rcx
mov qword [rsp + 0x140], rax
movzx r8d, byte [rsp + 0x46]
mov qword [rsp + 0x148], rbx
mov byte [rbx + rax - 1], r8b
mov rcx, qword [rsp + 0xa0]
lea rdx, [rcx + 1]
mov rax, rcx
mov rsi, qword [rsp + 0xe0]
mov rcx, rdx
mov rdx, qword [rsp + 0x48]
jmp 0x6059dd
cmp rcx, rdx
ja 0x605e9e
sub rdx, rcx
mov rdi, rdx
neg rdx
sar rdx, 0x3f
and rcx, rdx
mov rdx, qword [rsp + 0x138]
lea rbx, [rsi + rcx]
nop
test rdx, rdx
je 0x605dbd
lea r8, [rsp + 0x138]
cmp rdx, r8
je 0x605dcd
jmp 0x605e8b
lea rdx, [rsp + 0x138]
mov qword [rsp + 0x138], rdx
mov rcx, qword [rsp + 0x150]
mov rdx, qword [rsp + 0x148]
lea r8, [rdi + rdx]
mov rax, qword [rsp + 0x140]
cmp rcx, r8
jae 0x605e30
mov qword [rsp + 0xd0], rdx
mov qword [rsp + 0xc8], rdi
mov qword [rsp + 0x100], rbx
mov rbx, r8
lea rsi, [0x006bd080]
call fcn.0044f7c0
mov rdx, qword [rsp + 0xd0]
mov rdi, qword [rsp + 0xc8]
mov r8, rbx
mov rbx, qword [rsp + 0x100]
mov qword [rsp + 0xd0], rcx
mov qword [rsp + 0x180], rax
mov qword [rsp + 0xc8], r8
add rdx, rax
mov rax, rdx
mov rcx, rdi
call fcn.0046d560
mov rdx, qword [rsp + 0xc8]
mov qword [rsp + 0x148], rdx
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x150], rdx
mov rdx, qword [rsp + 0x180]
mov qword [rsp + 0x140], rdx
jmp 0x604e9d
lea rax, [0x006bd000]
lea rbx, [0x007dd1d0]
call fcn.004389c0
mov rax, rcx
mov rcx, rdx
call fcn.0046cc60
lea rax, [0x006bd000]
lea rbx, [0x007dd1d0]
call fcn.004389c0
lea rax, [0x006bd000]
lea rbx, [0x007dd1d0]
call fcn.004389c0
lea rax, [0x006bd000]
lea rbx, [0x007dd1d0]
nop dword [rax]
call fcn.004389c0
lea rax, [0x006bd000]
lea rbx, [0x007dd1d0]
call fcn.004389c0
mov rdx, rax
mov rax, rcx
mov rcx, rdx
call fcn.0046cc60
lea rax, [0x006bd000]
lea rbx, [0x007dd1d0]
call fcn.004389c0
lea rax, [0x006bd000]
lea rbx, [0x007dd1d0]
call fcn.004389c0
lea rax, [0x006bd000]
lea rbx, [0x007dd1d0]
call fcn.004389c0
lea rax, [0x006bd000]
lea rbx, [0x007dd1d0]
call fcn.004389c0
lea rax, [0x006bd000]
lea rbx, [0x007dd1d0]
call fcn.004389c0
lea rax, [0x006bd000]
lea rbx, [0x007dd1d0]
call fcn.004389c0
lea rax, [0x006bd000]
lea rbx, [0x007dd1d0]
call fcn.004389c0
lea rax, [0x006bd000]
lea rbx, [0x007dd1d0]
call fcn.004389c0
lea rax, [0x006bd000]
lea rbx, [0x007dd1d0]
call fcn.004389c0
lea rax, [0x006bd000]
lea rbx, [0x007dd1d0]
nop
call fcn.004389c0
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
call fcn.0046a8c0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
jmp fcn.00604820