Function at 0x523e20
Capabilities:
Encode data using base64

Disassembly:
lea r12, [rsp - 0x160]
cmp r12, qword [r14 + 0x10]
jbe 0x5255df
sub rsp, 0x1e0
mov qword [rsp + 0x1d8], rbp
lea rbp, [rsp + 0x1d8]
mov qword [rsp + 0x1f8], rcx
mov qword [rsp + 0x1f0], rbx
mov qword [rsp + 0x1e8], rax
movups xmmword [rsp + 0x158], xmm15
movups xmmword [rsp + 0x168], xmm15
mov edi, 1
lea rcx, [0x00588c5b]
nop
call fcn.004ba640
test sil, sil
je 0x5241e5
mov qword [rsp + 0x50], rdi
mov qword [rsp + 0xd8], rcx
mov qword [rsp + 0x120], rax
mov qword [rsp + 0x88], rbx
test rbx, rbx
jne 0x523eb4
xor edx, edx
jmp 0x523ee8
lea rcx, [0x005b3358]
nop dword [rax + rax]
call fcn.004b9260
test rax, rax
setl dl
mov rax, qword [rsp + 0x120]
mov rcx, qword [rsp + 0xd8]
mov rbx, qword [rsp + 0x88]
mov rdi, qword [rsp + 0x50]
test dl, dl
je 0x5241d1
test rdi, rdi
jne 0x523ef9
xor edx, edx
jmp 0x523f2e
mov rax, rcx
mov rbx, rdi
lea rcx, [0x005b3358]
call fcn.004b9260
test rax, rax
setl dl
mov rax, qword [rsp + 0x120]
mov rcx, qword [rsp + 0xd8]
mov rbx, qword [rsp + 0x88]
mov rdi, qword [rsp + 0x50]
test dl, dl
je 0x5241d1
call fcn.004b8ac0
nop
mov rcx, qword [rsp + 0x158]
test rcx, rcx
je 0x523f5b
lea rdx, [rsp + 0x158]
cmp rcx, rdx
je 0x523f6b
jmp 0x5255cb
lea rdx, [rsp + 0x158]
mov qword [rsp + 0x158], rdx
mov r8, qword [rsp + 0x168]
lea r9, [r8 + rbx]
mov rcx, qword [rsp + 0x170]
mov r10, qword [rsp + 0x160]
cmp rcx, r9
jae 0x523fd1
mov qword [rsp + 0x68], rbx
mov qword [rsp + 0x110], rax
mov qword [rsp + 0xc8], r8
mov rax, r10
mov rdi, rbx
lea rsi, [0x00559b20]
mov rbx, r9
call fcn.00449d80
mov r8, qword [rsp + 0xc8]
mov r10, rax
mov r9, rbx
mov rax, qword [rsp + 0x110]
mov rbx, qword [rsp + 0x68]
mov qword [rsp + 0xc8], rcx
mov qword [rsp + 0xc0], r9
mov qword [rsp + 0x150], r10
lea rdx, [r10 + r8]
mov rsi, rax
mov rax, rdx
mov rdi, rbx
mov rbx, rsi
mov rcx, rdi
nop dword [rax]
call fcn.00464ec0
mov rdx, qword [rsp + 0xc0]
mov qword [rsp + 0x168], rdx
mov rdx, qword [rsp + 0xc8]
mov qword [rsp + 0x170], rdx
mov rdx, qword [rsp + 0x150]
mov qword [rsp + 0x160], rdx
nop
nop
mov rdx, qword [rsp + 0x158]
nop
test rdx, rdx
je 0x524057
lea r8, [rsp + 0x158]
cmp rdx, r8
je 0x52406f
jmp 0x5255b8
lea rdx, [rsp + 0x158]
mov qword [rsp + 0x158], rdx
lea r8, [rsp + 0x158]
mov rbx, qword [rsp + 0x168]
inc rbx
mov rax, qword [rsp + 0x160]
mov rcx, qword [rsp + 0x170]
cmp rcx, rbx
jae 0x5240b5
mov edi, 1
lea rsi, [0x00559b20]
nop dword [rax + rax]
call fcn.00449d80
mov qword [rsp + 0x170], rcx
mov qword [rsp + 0x160], rax
mov qword [rsp + 0x168], rbx
mov byte [rbx + rax - 1], 0x2f
mov rax, qword [rsp + 0xd8]
mov rbx, qword [rsp + 0x50]
call fcn.004b8ac0
nop
mov rcx, qword [rsp + 0x158]
nop dword [rax]
test rcx, rcx
je 0x5240f7
lea rdx, [rsp + 0x158]
cmp rcx, rdx
je 0x524107
jmp 0x5255a5
lea rdx, [rsp + 0x158]
mov qword [rsp + 0x158], rdx
mov rdx, qword [rsp + 0x168]
lea r8, [rdx + rbx]
mov rcx, qword [rsp + 0x170]
mov r9, qword [rsp + 0x160]
cmp rcx, r8
jae 0x52416d
mov qword [rsp + 0x108], rax
mov qword [rsp + 0x60], rbx
mov qword [rsp + 0xc8], rdx
mov rax, r9
mov rdi, rbx
lea rsi, [0x00559b20]
mov rbx, r8
call fcn.00449d80
mov rdx, qword [rsp + 0xc8]
mov r9, rax
mov r8, rbx
mov rax, qword [rsp + 0x108]
mov rbx, qword [rsp + 0x60]
mov qword [rsp + 0xc8], r8
mov qword [rsp + 0xc0], rcx
mov qword [rsp + 0x150], r9
add rdx, r9
mov rsi, rax
mov rax, rdx
mov rdi, rbx
mov rbx, rsi
mov rcx, rdi
call fcn.00464ec0
mov rdx, qword [rsp + 0xc8]
mov qword [rsp + 0x168], rdx
mov rdx, qword [rsp + 0xc0]
mov qword [rsp + 0x170], rdx
mov rdx, qword [rsp + 0x150]
mov qword [rsp + 0x160], rdx
jmp 0x52431f
xor eax, eax
xor ebx, ebx
mov rbp, qword [rsp + 0x1d8]
add rsp, 0x1e0
ret
mov rbx, qword [rsp + 0x1f0]
test rbx, rbx
je 0x5243a3
mov rax, qword [rsp + 0x1e8]
lea rcx, [0x005b3358]
call fcn.004b9260
test rax, rax
jge 0x5243a3
mov rax, qword [rsp + 0x1e8]
mov rbx, qword [rsp + 0x1f0]
call fcn.004b8ac0
nop
mov rcx, qword [rsp + 0x158]
test rcx, rcx
je 0x52424a
lea rdx, [rsp + 0x158]
nop
cmp rcx, rdx
je 0x52425a
jmp 0x525591
lea rdx, [rsp + 0x158]
mov qword [rsp + 0x158], rdx
mov rdx, qword [rsp + 0x168]
lea r8, [rdx + rbx]
mov rcx, qword [rsp + 0x170]
mov r9, qword [rsp + 0x160]
cmp rcx, r8
jae 0x5242c0
mov qword [rsp + 0x70], rbx
mov qword [rsp + 0x118], rax
mov qword [rsp + 0xc8], rdx
mov rax, r9
mov rdi, rbx
lea rsi, [0x00559b20]
mov rbx, r8
call fcn.00449d80
mov rdx, qword [rsp + 0xc8]
mov r9, rax
mov r8, rbx
mov rax, qword [rsp + 0x118]
mov rbx, qword [rsp + 0x70]
mov qword [rsp + 0xc8], rcx
mov qword [rsp + 0xc0], r8
mov qword [rsp + 0x150], r9
add rdx, r9
mov rsi, rax
mov rax, rdx
mov rdi, rbx
mov rbx, rsi
mov rcx, rdi
call fcn.00464ec0
mov rdx, qword [rsp + 0xc0]
mov qword [rsp + 0x168], rdx
mov rdx, qword [rsp + 0xc8]
mov qword [rsp + 0x170], rdx
mov rdx, qword [rsp + 0x150]
mov qword [rsp + 0x160], rdx
mov rdx, qword [rsp + 0x1f8]
test rdx, rdx
je 0x524331
mov rsi, qword [rdx]
jmp 0x524333
xor esi, esi
mov qword [rsp + 0xa0], rsi
lea rax, [0x005599a0]
xor ebx, ebx
mov rcx, rsi
call fcn.00449ca0
mov qword [rsp + 0x148], rax
lea rdi, [rsp + 0x178]
lea rdi, [rdi - 0x20]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.004647eb
mov rbp, qword [rbp]
mov rbx, qword [rsp + 0x1f8]
lea rcx, [rsp + 0x178]
lea rax, [0x00560f80]
call fcn.0040f5e0
mov rax, qword [rsp + 0xa0]
mov rcx, qword [rsp + 0x148]
xor edx, edx
jmp 0x5243dd
xor eax, eax
xor ebx, ebx
mov rbp, qword [rsp + 0x1d8]
add rsp, 0x1e0
ret
lea rax, [rsp + 0x178]
nop
call fcn.0040f860
mov rax, qword [rsp + 0xa0]
mov rcx, qword [rsp + 0x128]
mov rdx, qword [rsp + 0x98]
mov r8, qword [rsp + 0x178]
test r8, r8
je 0x52448a
mov r9, qword [r8]
mov r8, qword [r8 + 8]
lea rbx, [rdx + 1]
cmp rax, rbx
jae 0x524441
mov qword [rsp + 0xb0], r8
mov qword [rsp + 0x138], r9
mov edi, 1
lea rsi, [0x005599a0]
mov rdx, rax
mov rax, rcx
mov rcx, rdx
call fcn.00449d80
mov r8, qword [rsp + 0xb0]
mov r9, qword [rsp + 0x138]
mov rdx, rcx
mov rcx, rax
mov rax, rdx
mov qword [rsp + 0x128], rcx
mov qword [rsp + 0x98], rbx
mov qword [rsp + 0xa0], rax
lea rdx, [rbx - 1]
shl rdx, 4
mov qword [rcx + rdx + 8], r8
lea rdi, [rcx + rdx]
cmp dword [0x00739330], 0
jne 0x524480
mov qword [rcx + rdx], r9
jmp 0x5243b7
call fcn.00464220
jmp 0x5243b7
mov qword [rsp + 0x98], rdx
mov qword [rsp + 0x140], rcx
mov rbx, rdx
mov rdx, rax
mov rax, rcx
mov rcx, rdx
call fcn.0040ad20
mov rbx, rax
lea rax, [0x005e4018]
call fcn.0046b680
mov rdx, qword [rsp + 0x140]
xor eax, eax
jmp 0x5244dd
mov rdx, qword [rsp + 0x148]
add rdx, 0x10
mov rax, qword [rsp + 0xc8]
inc rax
mov rsi, qword [rsp + 0x98]
cmp rax, rsi
jge 0x524b7a
mov qword [rsp + 0xc8], rax
mov qword [rsp + 0x148], rdx
mov rdi, qword [rdx + 8]
mov qword [rsp + 0xa8], rdi
mov rcx, qword [rdx]
mov qword [rsp + 0x130], rcx
lea rax, [0x00560f80]
mov rbx, qword [rsp + 0x1f8]
call fcn.00411ec0
mov rdx, qword [rax + 8]
mov rsi, qword [rax]
nop
mov r8, qword [rsp + 0x158]
test r8, r8
je 0x524550
lea r9, [rsp + 0x158]
cmp r8, r9
je 0x524568
jmp 0x52557e
lea r8, [rsp + 0x158]
mov qword [rsp + 0x158], r8
lea r9, [rsp + 0x158]
mov qword [rsp + 0x48], rdx
mov qword [rsp + 0xd0], rsi
mov rbx, qword [rsp + 0x168]
inc rbx
mov rax, qword [rsp + 0x160]
mov rcx, qword [rsp + 0x170]
cmp rcx, rbx
jae 0x5245cb
mov edi, 1
lea rsi, [0x00559b20]
call fcn.00449d80
mov qword [rsp + 0x170], rcx
mov qword [rsp + 0x160], rax
mov rdx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0xd0]
lea r9, [rsp + 0x158]
mov qword [rsp + 0x168], rbx
mov byte [rbx + rax - 1], 0x3b
nop
nop
mov r8, qword [rsp + 0x158]
test r8, r8
je 0x5245f1
cmp r8, r9
je 0x5245f9
jmp 0x52556b
mov qword [rsp + 0x158], r9
mov rbx, qword [rsp + 0x168]
inc rbx
mov rax, qword [rsp + 0x160]
mov rcx, qword [rsp + 0x170]
cmp rcx, rbx
jae 0x52464f
mov edi, 1
lea rsi, [0x00559b20]
call fcn.00449d80
mov qword [rsp + 0x170], rcx
mov qword [rsp + 0x160], rax
mov rdx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0xd0]
lea r9, [rsp + 0x158]
mov qword [rsp + 0x168], rbx
mov byte [rbx + rax - 1], 0x20
mov rbx, qword [rsp + 0xa8]
test rbx, rbx
je 0x524b66
mov rax, qword [rsp + 0x130]
lea rcx, [0x005b3358]
nop dword [rax]
call fcn.004b9260
test rax, rax
jge 0x524b66
mov rax, qword [rsp + 0x130]
mov rbx, qword [rsp + 0xa8]
nop
call fcn.004b8ac0
nop
mov rcx, qword [rsp + 0x158]
test rcx, rcx
je 0x5246ca
lea rdx, [rsp + 0x158]
nop dword [rax + rax]
cmp rcx, rdx
je 0x5246da
jmp 0x525558
lea rdx, [rsp + 0x158]
mov qword [rsp + 0x158], rdx
mov r8, qword [rsp + 0x168]
lea r9, [r8 + rbx]
mov rcx, qword [rsp + 0x170]
mov r10, qword [rsp + 0x160]
cmp rcx, r9
jae 0x524740
mov qword [rsp + 0x100], rax
mov qword [rsp + 0x58], rbx
mov qword [rsp + 0xc0], r8
mov rax, r10
mov rdi, rbx
lea rsi, [0x00559b20]
mov rbx, r9
call fcn.00449d80
mov r8, qword [rsp + 0xc0]
mov r10, rax
mov r9, rbx
mov rax, qword [rsp + 0x100]
mov rbx, qword [rsp + 0x58]
mov qword [rsp + 0xc0], rcx
mov qword [rsp + 0x150], r10
mov qword [rsp + 0xb8], r9
lea rdx, [r10 + r8]
mov rsi, rax
mov rax, rdx
mov rdi, rbx
mov rbx, rsi
mov rcx, rdi
call fcn.00464ec0
mov rdx, qword [rsp + 0xb8]
mov qword [rsp + 0x168], rdx
mov rdx, qword [rsp + 0xc0]
mov qword [rsp + 0x170], rdx
mov rdx, qword [rsp + 0x150]
mov qword [rsp + 0x160], rdx
nop
mov rdx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0xd0]
xor eax, eax
jmp 0x524bba
cmp rax, rdx
jge 0x52486b
nop
nop
mov r8, qword [rsp + 0x158]
test r8, r8
je 0x5247df
lea r9, [rsp + 0x158]
cmp r8, r9
je 0x5247f7
jmp 0x525545
lea r8, [rsp + 0x158]
mov qword [rsp + 0x158], r8
lea r9, [rsp + 0x158]
mov rbx, qword [rsp + 0x168]
inc rbx
mov r8, qword [rsp + 0x160]
mov rcx, qword [rsp + 0x170]
cmp rcx, rbx
jae 0x52485b
mov rax, r8
mov edi, 1
lea rsi, [0x00559b20]
call fcn.00449d80
mov qword [rsp + 0x170], rcx
mov qword [rsp + 0x160], rax
mov rdx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0xd0]
lea r9, [rsp + 0x158]
mov r8, rax
mov rax, qword [rsp + 0xc0]
mov qword [rsp + 0x168], rbx
mov byte [rbx + r8 - 1], 0x2a
jmp 0x524873
lea r9, [rsp + 0x158]
nop
mov r8, qword [rsp + 0x158]
nop dword [rax]
test r8, r8
je 0x52488f
cmp r8, r9
je 0x524897
jmp 0x525532
mov qword [rsp + 0x158], r9
mov rbx, qword [rsp + 0x168]
inc rbx
mov r8, qword [rsp + 0x160]
mov rcx, qword [rsp + 0x170]
cmp rcx, rbx
jb 0x5248bc
cmp rax, rdx
jmp 0x524906
mov rax, r8
mov edi, 1
lea rsi, [0x00559b20]
call fcn.00449d80
mov qword [rsp + 0x170], rcx
mov qword [rsp + 0x160], rax
mov rdx, qword [rsp + 0xc0]
mov rcx, qword [rsp + 0x48]
cmp rdx, rcx
mov rdx, rcx
mov rsi, qword [rsp + 0xd0]
lea r9, [rsp + 0x158]
mov r8, rax
mov qword [rsp + 0x168], rbx
mov byte [rbx + r8 - 1], 0x3d
jge 0x5249c7
nop
mov r8, qword [rsp + 0x158]
test r8, r8
je 0x524932
cmp r8, r9
je 0x52493a
jmp 0x52551f
mov qword [rsp + 0x158], r9
mov rbx, qword [rsp + 0x168]
lea r8, [rbx + 7]
mov rcx, qword [rsp + 0x170]
mov rax, qword [rsp + 0x160]
cmp rcx, r8
jae 0x524997
mov qword [rsp + 0xc0], rbx
mov rbx, r8
mov edi, 7
lea rsi, [0x00559b20]
call fcn.00449d80
mov rdx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0xd0]
lea r9, [rsp + 0x158]
mov r8, rbx
mov rbx, qword [rsp + 0xc0]
mov dword [rax + rbx], 0x2d667475
mov dword [rax + rbx + 3], 0x2727382d
mov qword [rsp + 0x168], r8
mov qword [rsp + 0x170], rcx
mov qword [rsp + 0x160], rax
xor eax, eax
xor ecx, ecx
jmp 0x525009
test rdx, rdx
jne 0x5249d0
xor eax, eax
jmp 0x524a02
mov rax, rsi
mov rbx, rdx
lea rcx, [0x005b3358]
nop dword [rax]
call fcn.004b9260
test rax, rax
setl dl
mov rsi, qword [rsp + 0xd0]
lea r9, [rsp + 0x158]
mov eax, edx
mov rdx, qword [rsp + 0x48]
test al, al
jne 0x524a99
nop
mov r8, qword [rsp + 0x158]
test r8, r8
je 0x524a25
cmp r8, r9
je 0x524a2d
nop dword [rax]
jmp 0x524ff3
mov qword [rsp + 0x158], r9
mov rbx, qword [rsp + 0x168]
inc rbx
mov rax, qword [rsp + 0x160]
mov rcx, qword [rsp + 0x170]
cmp rcx, rbx
jae 0x524a83
mov edi, 1
lea rsi, [0x00559b20]
call fcn.00449d80
mov qword [rsp + 0x170], rcx
mov qword [rsp + 0x160], rax
mov rdx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0xd0]
lea r9, [rsp + 0x158]
mov qword [rsp + 0x168], rbx
mov byte [rbx + rax - 1], 0x22
xor eax, eax
xor ecx, ecx
jmp 0x524c33
nop
nop
mov r8, qword [rsp + 0x158]
test r8, r8
je 0x524ab2
cmp r8, r9
je 0x524aba
jmp 0x524c1d
mov qword [rsp + 0x158], r9
mov r8, qword [rsp + 0x168]
lea rbx, [rdx + r8]
mov rcx, qword [rsp + 0x170]
mov rax, qword [rsp + 0x160]
cmp rcx, rbx
jae 0x524b07
mov qword [rsp + 0xc0], r8
mov rdi, rdx
lea rsi, [0x00559b20]
call fcn.00449d80
mov rdx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0xd0]
mov r8, qword [rsp + 0xc0]
mov qword [rsp + 0xc0], rbx
mov qword [rsp + 0xb8], rcx
mov qword [rsp + 0x150], rax
lea rdi, [rax + r8]
mov rax, rdi
mov rbx, rsi
mov rcx, rdx
call fcn.00464ec0
mov rdx, qword [rsp + 0xc0]
mov qword [rsp + 0x168], rdx
mov rdx, qword [rsp + 0xb8]
mov qword [rsp + 0x170], rdx
mov rdx, qword [rsp + 0x150]
mov qword [rsp + 0x160], rdx
jmp 0x5244c6
xor eax, eax
xor ebx, ebx
mov rbp, qword [rsp + 0x1d8]
add rsp, 0x1e0
ret
mov rax, qword [rsp + 0x160]
mov rcx, rax
neg rax
mov rbx, qword [rsp + 0x168]
cmp rbx, rax
ja 0x524ba8
mov rax, rcx
mov rbp, qword [rsp + 0x1d8]
add rsp, 0x1e0
ret
test rcx, rcx
je 0x524bb2
call fcn.0045c2e0
call fcn.0045c320
mov rax, r9
mov qword [rsp + 0xc0], rax
cmp rax, rdx
jge 0x5247b8
movzx r8d, byte [rsi + rax]
cmp r8d, 0x80
jge 0x524bdf
lea r9, [rax + 1]
jmp 0x524c08
mov rbx, rdx
mov rcx, rax
mov rax, rsi
call fcn.0045c3e0
mov rdx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0xd0]
mov r8d, eax
mov r9, rbx
mov rax, qword [rsp + 0xc0]
lea r10d, [r8 - 0x20]
cmp r10d, 0x5e
jbe 0x524bb7
cmp r8d, 9
je 0x524bb7
jmp 0x5247b5
lea rax, [0x005599a0]
lea rbx, [0x005e2d20]
call fcn.004358e0
inc rax
cmp rax, rdx
jge 0x524e0c
movzx r8d, byte [rsi + rax]
cmp r8b, 0x22
je 0x524c4d
cmp r8b, 0x5c
jne 0x524c30
cmp rcx, rax
ja 0x524fe5
mov rdi, rax
sub rdi, rcx
mov r8, rdi
neg rdi
sar rdi, 0x3f
and rcx, rdi
lea rbx, [rcx + rsi]
nop
mov r10, qword [rsp + 0x158]
test r10, r10
je 0x524c8a
nop dword [rax + rax]
cmp r10, r9
je 0x524c92
jmp 0x524fce
mov qword [rsp + 0x158], r9
mov qword [rsp + 0x78], rax
mov r10, qword [rsp + 0x168]
lea r11, [r8 + r10]
mov rcx, qword [rsp + 0x170]
mov r12, qword [rsp + 0x160]
cmp rcx, r11
jae 0x524d03
mov qword [rsp + 0xc0], r10
mov qword [rsp + 0xb8], r8
mov qword [rsp + 0xe8], rbx
mov rax, r12
mov rbx, r11
mov rdi, r8
lea rsi, [0x00559b20]
call fcn.00449d80
mov r8, qword [rsp + 0xb8]
mov r10, qword [rsp + 0xc0]
mov r12, rax
mov r11, rbx
mov rbx, qword [rsp + 0xe8]
mov qword [rsp + 0xc0], r11
mov qword [rsp + 0xb8], rcx
mov qword [rsp + 0x150], r12
lea rax, [r12 + r10]
mov rcx, r8
call fcn.00464ec0
mov rdx, qword [rsp + 0xc0]
mov qword [rsp + 0x168], rdx
mov rdx, qword [rsp + 0xb8]
mov qword [rsp + 0x170], rdx
mov rdx, qword [rsp + 0x150]
mov qword [rsp + 0x160], rdx
nop
mov rdx, qword [rsp + 0x158]
test rdx, rdx
je 0x524d77
lea r8, [rsp + 0x158]
cmp rdx, r8
je 0x524d8f
jmp 0x524fbb
lea rdx, [rsp + 0x158]
mov qword [rsp + 0x158], rdx
lea r8, [rsp + 0x158]
mov rbx, qword [rsp + 0x168]
inc rbx
mov rax, qword [rsp + 0x160]
mov rcx, qword [rsp + 0x170]
cmp rcx, rbx
jae 0x524ddd
mov edi, 1
lea rsi, [0x00559b20]
nop dword [rax + rax]
call fcn.00449d80
mov qword [rsp + 0x170], rcx
mov qword [rsp + 0x160], rax
lea r8, [rsp + 0x158]
mov qword [rsp + 0x168], rbx
mov byte [rbx + rax - 1], 0x5c
mov rax, qword [rsp + 0x78]
mov rdx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0xd0]
lea r9, [rsp + 0x158]
mov rcx, rax
jmp 0x524c30
cmp rcx, rdx
ja 0x524fb0
sub rdx, rcx
mov rdi, rdx
neg rdx
sar rdx, 0x3f
and rcx, rdx
lea rbx, [rcx + rsi]
nop
mov rdx, qword [rsp + 0x158]
test rdx, rdx
je 0x524e45
cmp rdx, r9
je 0x524e4d
nop dword [rax]
jmp 0x524f9d
mov qword [rsp + 0x158], r9
mov rdx, qword [rsp + 0x168]
lea r8, [rdi + rdx]
mov rcx, qword [rsp + 0x170]
mov rax, qword [rsp + 0x160]
cmp rcx, r8
jae 0x524eb0
mov qword [rsp + 0xc0], rdx
mov qword [rsp + 0xb8], rdi
mov qword [rsp + 0xe0], rbx
mov rbx, r8
lea rsi, [0x00559b20]
call fcn.00449d80
mov rdx, qword [rsp + 0xc0]
mov rdi, qword [rsp + 0xb8]
mov r8, rbx
mov rbx, qword [rsp + 0xe0]
mov qword [rsp + 0xc0], rcx
mov qword [rsp + 0x150], rax
mov qword [rsp + 0xb8], r8
add rdx, rax
mov rax, rdx
mov rcx, rdi
call fcn.00464ec0
mov rdx, qword [rsp + 0xb8]
mov qword [rsp + 0x168], rdx
mov rdx, qword [rsp + 0xc0]
mov qword [rsp + 0x170], rdx
mov rdx, qword [rsp + 0x150]
mov qword [rsp + 0x160], rdx
nop
mov rdx, qword [rsp + 0x158]
test rdx, rdx
je 0x524f27
lea r8, [rsp + 0x158]
nop dword [rax]
cmp rdx, r8
je 0x524f37
jmp 0x524f8a
lea rdx, [rsp + 0x158]
mov qword [rsp + 0x158], rdx
mov rbx, qword [rsp + 0x168]
inc rbx
mov rax, qword [rsp + 0x160]
mov rcx, qword [rsp + 0x170]
cmp rcx, rbx
jae 0x524f78
mov edi, 1
lea rsi, [0x00559b20]
call fcn.00449d80
mov qword [rsp + 0x170], rcx
mov qword [rsp + 0x160], rax
mov qword [rsp + 0x168], rbx
mov byte [rbx + rax - 1], 0x22
jmp 0x5244c6
lea rax, [0x005599a0]
lea rbx, [0x005e2d20]
call fcn.004358e0
lea rax, [0x005599a0]
lea rbx, [0x005e2d20]
call fcn.004358e0
mov rax, rcx
mov rcx, rdx
call fcn.004645e0
lea rax, [0x005599a0]
lea rbx, [0x005e2d20]
call fcn.004358e0
lea rax, [0x005599a0]
lea rbx, [0x005e2d20]
nop dword [rax]
call fcn.004358e0
mov rdx, rax
mov rax, rcx
mov rcx, rdx
call fcn.004645e0
lea rax, [0x005599a0]
lea rbx, [0x005e2d20]
call fcn.004358e0
inc rax
cmp rax, rdx
jge 0x5253a5
mov qword [rsp + 0x90], rax
movzx r8d, byte [rsi + rax]
mov byte [rsp + 0x45], r8b
lea r10d, [r8 - 0x21]
cmp r10b, 0x5e
jb 0x525035
mov ebx, 1
jmp 0x5250ad
cmp r8b, 0x2a
jne 0x525042
mov ebx, 1
jmp 0x5250ad
cmp r8b, 0x27
jne 0x52504f
mov ebx, 1
jmp 0x5250ad
cmp r8b, 0x25
jne 0x52505c
mov ebx, 1
jmp 0x5250ad
mov qword [rsp + 0x80], rcx
nop
nop
lea rax, [0x0058bb47]
mov ebx, 0xf
mov ecx, r8d
call fcn.004b76a0
test rax, rax
setge dl
mov rax, qword [rsp + 0x90]
mov rcx, qword [rsp + 0x80]
mov rsi, qword [rsp + 0xd0]
movzx r8d, byte [rsp + 0x45]
lea r9, [rsp + 0x158]
mov ebx, edx
mov rdx, qword [rsp + 0x48]
test bl, bl
je 0x525006
cmp rcx, rax
ja 0x525511
mov rdi, rax
sub rdi, rcx
mov r10, rdi
neg rdi
sar rdi, 0x3f
and rcx, rdi
lea rbx, [rsi + rcx]
nop
mov r11, qword [rsp + 0x158]
nop
test r11, r11
je 0x5250ef
cmp r11, r9
je 0x5250f7
jmp 0x5254fe
mov qword [rsp + 0x158], r9
mov r11, qword [rsp + 0x168]
lea r12, [r11 + r10]
mov rcx, qword [rsp + 0x170]
mov r13, qword [rsp + 0x160]
cmp rcx, r12
jae 0x525163
mov qword [rsp + 0xc0], r10
mov qword [rsp + 0xf8], rbx
mov qword [rsp + 0xb8], r11
mov rax, r13
mov rbx, r12
mov rdi, r10
lea rsi, [0x00559b20]
call fcn.00449d80
mov r10, qword [rsp + 0xc0]
mov r11, qword [rsp + 0xb8]
mov r13, rax
mov r12, rbx
mov rbx, qword [rsp + 0xf8]
mov qword [rsp + 0xc0], r12
mov qword [rsp + 0xb8], rcx
mov qword [rsp + 0x150], r13
lea rax, [r13 + r11]
mov rcx, r10
call fcn.00464ec0
mov rdx, qword [rsp + 0xc0]
mov qword [rsp + 0x168], rdx
mov rdx, qword [rsp + 0xb8]
mov qword [rsp + 0x170], rdx
mov rdx, qword [rsp + 0x150]
mov qword [rsp + 0x160], rdx
nop
nop
mov rdx, qword [rsp + 0x158]
test rdx, rdx
je 0x5251d9
lea r8, [rsp + 0x158]
cmp rdx, r8
je 0x5251f1
jmp 0x5254eb
lea rdx, [rsp + 0x158]
mov qword [rsp + 0x158], rdx
lea r8, [rsp + 0x158]
mov rbx, qword [rsp + 0x168]
inc rbx
mov rax, qword [rsp + 0x160]
mov rcx, qword [rsp + 0x170]
cmp rcx, rbx
jae 0x52523d
mov edi, 1
lea rsi, [0x00559b20]
nop dword [rax]
call fcn.00449d80
mov qword [rsp + 0x170], rcx
mov qword [rsp + 0x160], rax
lea r8, [rsp + 0x158]
mov qword [rsp + 0x168], rbx
mov byte [rbx + rax - 1], 0x25
movzx edx, byte [rsp + 0x45]
mov r9d, edx
shr dl, 4
movzx edx, dl
lea r10, [0x0058c02b]
movzx edx, byte [r10 + rdx]
nop
mov r11, qword [rsp + 0x158]
test r11, r11
je 0x52527c
cmp r11, r8
je 0x525284
jmp 0x5254d8
mov qword [rsp + 0x158], r8
mov rbx, qword [rsp + 0x168]
inc rbx
mov rax, qword [rsp + 0x160]
mov rcx, qword [rsp + 0x170]
nop
cmp rcx, rbx
jae 0x5252e4
mov byte [rsp + 0x47], dl
mov edi, 1
lea rsi, [0x00559b20]
call fcn.00449d80
mov qword [rsp + 0x170], rcx
mov qword [rsp + 0x160], rax
movzx edx, byte [rsp + 0x47]
lea r8, [rsp + 0x158]
movzx r9d, byte [rsp + 0x45]
lea r10, [0x0058c02b]
mov qword [rsp + 0x168], rbx
mov byte [rbx + rax - 1], dl
and r9d, 0xf
movzx edx, byte [r9 + r10]
nop
mov r9, qword [rsp + 0x158]
test r9, r9
je 0x525311
cmp r9, r8
je 0x525319
jmp 0x5254c5
mov qword [rsp + 0x158], r8
mov rbx, qword [rsp + 0x168]
inc rbx
mov rax, qword [rsp + 0x160]
mov rcx, qword [rsp + 0x170]
cmp rcx, rbx
jae 0x52536b
mov byte [rsp + 0x46], dl
mov edi, 1
lea rsi, [0x00559b20]
call fcn.00449d80
mov qword [rsp + 0x170], rcx
mov qword [rsp + 0x160], rax
movzx edx, byte [rsp + 0x46]
lea r8, [rsp + 0x158]
mov qword [rsp + 0x168], rbx
mov byte [rbx + rax - 1], dl
mov rcx, qword [rsp + 0x90]
lea rdx, [rcx + 1]
mov rax, rcx
mov rsi, qword [rsp + 0xd0]
lea r9, [rsp + 0x158]
mov rcx, rdx
mov rdx, qword [rsp + 0x48]
nop
jmp 0x525006
cmp rcx, rdx
ja 0x5254b8
sub rdx, rcx
mov rdi, rdx
neg rdx
sar rdx, 0x3f
and rcx, rdx
lea rbx, [rsi + rcx]
nop
mov rdx, qword [rsp + 0x158]
test rdx, rdx
je 0x5253da
cmp rdx, r9
je 0x5253e2
jmp 0x5254a5
mov qword [rsp + 0x158], r9
mov rdx, qword [rsp + 0x168]
lea r8, [rdi + rdx]
mov rcx, qword [rsp + 0x170]
mov rax, qword [rsp + 0x160]
nop
cmp rcx, r8
jae 0x525447
mov qword [rsp + 0xc0], rdx
mov qword [rsp + 0xb8], rdi
mov qword [rsp + 0xf0], rbx
mov rbx, r8
lea rsi, [0x00559b20]
call fcn.00449d80
mov rdx, qword [rsp + 0xc0]
mov rdi, qword [rsp + 0xb8]
mov r8, rbx
mov rbx, qword [rsp + 0xf0]
mov qword [rsp + 0xc0], r8
mov qword [rsp + 0xb8], rcx
mov qword [rsp + 0x150], rax
add rdx, rax
mov rax, rdx
mov rcx, rdi
call fcn.00464ec0
mov rdx, qword [rsp + 0xc0]
mov qword [rsp + 0x168], rdx
mov rdx, qword [rsp + 0xb8]
mov qword [rsp + 0x170], rdx
mov rdx, qword [rsp + 0x150]
mov qword [rsp + 0x160], rdx
nop dword [rax]
jmp 0x5244c6
lea rax, [0x005599a0]
lea rbx, [0x005e2d20]
call fcn.004358e0
mov rax, rcx
mov rcx, rdx
nop
call fcn.004645e0
lea rax, [0x005599a0]
lea rbx, [0x005e2d20]
call fcn.004358e0
lea rax, [0x005599a0]
lea rbx, [0x005e2d20]
call fcn.004358e0
lea rax, [0x005599a0]
lea rbx, [0x005e2d20]
call fcn.004358e0
lea rax, [0x005599a0]
lea rbx, [0x005e2d20]
call fcn.004358e0
mov rdx, rax
mov rax, rcx
mov rcx, rdx
call fcn.004645e0
lea rax, [0x005599a0]
lea rbx, [0x005e2d20]
call fcn.004358e0
lea rax, [0x005599a0]
lea rbx, [0x005e2d20]
call fcn.004358e0
lea rax, [0x005599a0]
lea rbx, [0x005e2d20]
call fcn.004358e0
lea rax, [0x005599a0]
lea rbx, [0x005e2d20]
call fcn.004358e0
lea rax, [0x005599a0]
lea rbx, [0x005e2d20]
call fcn.004358e0
lea rax, [0x005599a0]
lea rbx, [0x005e2d20]
call fcn.004358e0
lea rax, [0x005599a0]
lea rbx, [0x005e2d20]
nop
call fcn.004358e0
lea rax, [0x005599a0]
lea rbx, [0x005e2d20]
call fcn.004358e0
lea rax, [0x005599a0]
lea rbx, [0x005e2d20]
call fcn.004358e0
lea rax, [0x005599a0]
lea rbx, [0x005e2d20]
call fcn.004358e0
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
call fcn.00461ec0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
jmp fcn.00523e20