Function at 0x528bc0
Capabilities:
Encode data using base64

Disassembly:
lea r12, [rsp - 0x168]
cmp r12, qword [r14 + 0x10]
jbe 0x52a3bf
sub rsp, 0x1e8
mov qword [rsp + 0x1e0], rbp
lea rbp, [rsp + 0x1e0]
mov qword [rsp + 0x200], rcx
mov qword [rsp + 0x1f8], rbx
mov qword [rsp + 0x1f0], rax
movups xmmword [rsp + 0x160], xmm15
movups xmmword [rsp + 0x170], xmm15
mov edi, 1
lea rcx, [0x0057cc3e]
nop
call fcn.004add40
test sil, sil
je 0x528f72
mov qword [rsp + 0x50], rdi
mov qword [rsp + 0x80], rbx
mov qword [rsp + 0x128], rax
mov qword [rsp + 0xe0], rcx
test rbx, rbx
jne 0x528c54
xor edx, edx
jmp 0x528c88
lea rcx, [0x005a69b8]
nop dword [rax + rax]
call fcn.004ad340
test rax, rax
setl dl
mov rax, qword [rsp + 0x128]
mov rcx, qword [rsp + 0xe0]
mov rbx, qword [rsp + 0x80]
mov rdi, qword [rsp + 0x50]
test dl, dl
je 0x528f5e
test rdi, rdi
jne 0x528c99
xor edx, edx
jmp 0x528cce
mov rax, rcx
mov rbx, rdi
lea rcx, [0x005a69b8]
call fcn.004ad340
test rax, rax
setl dl
mov rax, qword [rsp + 0x128]
mov rcx, qword [rsp + 0xe0]
mov rbx, qword [rsp + 0x80]
mov rdi, qword [rsp + 0x50]
test dl, dl
je 0x528f5e
call fcn.004ace40
nop
mov rcx, qword [rsp + 0x160]
test rcx, rcx
je 0x528cfb
lea rdx, [rsp + 0x160]
cmp rcx, rdx
je 0x528d0b
jmp 0x52a3ab
lea rdx, [rsp + 0x160]
mov qword [rsp + 0x160], rdx
mov rcx, qword [rsp + 0x170]
lea rsi, [rcx + rbx]
mov qword [rsp + 0xd0], rsi
mov rdi, qword [rsp + 0x178]
mov r8, qword [rsp + 0x168]
cmp rdi, rsi
jae 0x528d73
mov qword [rsp + 0x118], rax
mov qword [rsp + 0x68], rbx
mov qword [rsp + 0xc8], rcx
lea rax, [0x00553660]
mov rbx, r8
call fcn.0044a960
mov rbx, qword [rsp + 0x68]
mov r8, rax
mov rdi, rcx
mov rax, qword [rsp + 0x118]
mov rcx, qword [rsp + 0xc8]
mov qword [rsp + 0xc8], rdi
mov qword [rsp + 0x158], r8
lea rdx, [r8 + rcx]
mov rcx, rbx
mov rbx, rax
mov rax, rdx
call fcn.00463f40
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x170], rdx
mov rdx, qword [rsp + 0xc8]
mov qword [rsp + 0x178], rdx
mov rdx, qword [rsp + 0x158]
mov qword [rsp + 0x168], rdx
nop
nop
mov rdx, qword [rsp + 0x160]
test rdx, rdx
je 0x528dea
lea r8, [rsp + 0x160]
nop dword [rax]
cmp rdx, r8
je 0x528e02
jmp 0x52a398
lea rdx, [rsp + 0x160]
mov qword [rsp + 0x160], rdx
lea r8, [rsp + 0x160]
mov rsi, qword [rsp + 0x170]
lea rdx, [rsi + 1]
mov rbx, qword [rsp + 0x168]
mov rdi, qword [rsp + 0x178]
nop
cmp rdi, rdx
jae 0x528e4d
lea rax, [0x00553660]
mov rcx, rsi
mov rsi, rdx
call fcn.0044a960
mov qword [rsp + 0x178], rcx
mov qword [rsp + 0x168], rax
mov rsi, rbx
mov rbx, rax
lea rcx, [rsi + 1]
mov qword [rsp + 0x170], rcx
mov byte [rbx + rsi], 0x2f
mov rax, qword [rsp + 0xe0]
mov rbx, qword [rsp + 0x50]
call fcn.004ace40
nop
mov rcx, qword [rsp + 0x160]
test rcx, rcx
je 0x528e8f
lea rdx, [rsp + 0x160]
cmp rcx, rdx
je 0x528e9f
jmp 0x52a385
lea rdx, [rsp + 0x160]
mov qword [rsp + 0x160], rdx
mov rcx, qword [rsp + 0x170]
lea rsi, [rcx + rbx]
mov qword [rsp + 0xd0], rsi
mov rdi, qword [rsp + 0x178]
mov rdx, qword [rsp + 0x168]
cmp rdi, rsi
jae 0x528f07
mov qword [rsp + 0x110], rax
mov qword [rsp + 0x60], rbx
mov qword [rsp + 0xc8], rcx
lea rax, [0x00553660]
mov rbx, rdx
call fcn.0044a960
mov rbx, qword [rsp + 0x60]
mov rdx, rax
mov rdi, rcx
mov rax, qword [rsp + 0x110]
mov rcx, qword [rsp + 0xc8]
mov qword [rsp + 0xc8], rdi
mov qword [rsp + 0x158], rdx
lea rsi, [rdx + rcx]
mov rcx, rbx
mov rbx, rax
mov rax, rsi
call fcn.00463f40
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x170], rdx
mov rdx, qword [rsp + 0xc8]
mov qword [rsp + 0x178], rdx
mov rdx, qword [rsp + 0x158]
mov qword [rsp + 0x168], rdx
jmp 0x5290a8
xor eax, eax
xor ebx, ebx
mov rbp, qword [rsp + 0x1e0]
add rsp, 0x1e8
ret
mov rbx, qword [rsp + 0x1f8]
nop word [rax + rax]
test rbx, rbx
je 0x52912c
mov rax, qword [rsp + 0x1f0]
lea rcx, [0x005a69b8]
call fcn.004ad340
nop dword [rax]
test rax, rax
jge 0x52912c
mov rax, qword [rsp + 0x1f0]
mov rbx, qword [rsp + 0x1f8]
call fcn.004ace40
nop
mov rcx, qword [rsp + 0x160]
test rcx, rcx
je 0x528fde
lea rdx, [rsp + 0x160]
cmp rcx, rdx
je 0x528fee
jmp 0x52a371
lea rdx, [rsp + 0x160]
mov qword [rsp + 0x160], rdx
mov rcx, qword [rsp + 0x170]
lea rsi, [rcx + rbx]
mov qword [rsp + 0xd0], rsi
mov rdi, qword [rsp + 0x178]
mov rdx, qword [rsp + 0x168]
cmp rdi, rsi
jae 0x529056
mov qword [rsp + 0x120], rax
mov qword [rsp + 0x70], rbx
mov qword [rsp + 0xc8], rcx
lea rax, [0x00553660]
mov rbx, rdx
call fcn.0044a960
mov rbx, qword [rsp + 0x70]
mov rdx, rax
mov rdi, rcx
mov rax, qword [rsp + 0x120]
mov rcx, qword [rsp + 0xc8]
mov qword [rsp + 0xc8], rdi
mov qword [rsp + 0x158], rdx
lea rsi, [rdx + rcx]
mov rcx, rbx
mov rbx, rax
mov rax, rsi
call fcn.00463f40
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x170], rdx
mov rdx, qword [rsp + 0xc8]
mov qword [rsp + 0x178], rdx
mov rdx, qword [rsp + 0x158]
mov qword [rsp + 0x168], rdx
mov rdx, qword [rsp + 0x200]
test rdx, rdx
je 0x5290ba
mov rsi, qword [rdx]
jmp 0x5290bc
xor esi, esi
mov qword [rsp + 0x98], rsi
lea rax, [0x005534e0]
xor ebx, ebx
mov rcx, rsi
call fcn.0044a800
mov qword [rsp + 0x150], rax
lea rdi, [rsp + 0x180]
lea rdi, [rdi - 0x20]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.0046386b
mov rbp, qword [rbp]
mov rbx, qword [rsp + 0x200]
lea rcx, [rsp + 0x180]
lea rax, [0x0055a640]
call fcn.0040f1e0
xor eax, eax
mov rcx, qword [rsp + 0x98]
mov rdx, qword [rsp + 0x150]
jmp 0x529166
xor eax, eax
xor ebx, ebx
mov rbp, qword [rsp + 0x1e0]
add rsp, 0x1e8
nop
ret
lea rax, [rsp + 0x180]
call fcn.0040f460
mov rax, qword [rsp + 0x90]
mov rcx, qword [rsp + 0x98]
mov rdx, qword [rsp + 0x130]
mov qword [rsp + 0x90], rax
mov r8, qword [rsp + 0x180]
test r8, r8
je 0x529215
mov r9, qword [r8]
mov r8, qword [r8 + 8]
lea rsi, [rax + 1]
cmp rcx, rsi
jae 0x5291d3
mov qword [rsp + 0xa8], r8
mov qword [rsp + 0x140], r9
mov rbx, rdx
mov rdi, rcx
mov rcx, rax
lea rax, [0x005534e0]
call fcn.0044a960
lea rsi, [rbx + 1]
mov r8, qword [rsp + 0xa8]
mov r9, qword [rsp + 0x140]
mov rdx, rax
mov rax, qword [rsp + 0x90]
mov qword [rsp + 0x130], rdx
mov qword [rsp + 0x90], rsi
mov qword [rsp + 0x98], rcx
shl rax, 4
mov qword [rdx + rax + 8], r8
lea rdi, [rdx + rax]
cmp dword [0x0071cae0], 0
nop
jne 0x52920b
mov qword [rdx + rax], r9
jmp 0x529141
call fcn.004632a0
jmp 0x529141
mov qword [rsp + 0x148], rdx
mov rbx, rax
mov rax, rdx
call fcn.0040aaa0
mov rbx, rax
lea rax, [0x005d9a08]
call fcn.004894a0
mov rdx, qword [rsp + 0x90]
nop
test rdx, rdx
je 0x529251
mov rax, qword [rsp + 0x148]
xor ecx, ecx
jmp 0x529280
mov rax, qword [rsp + 0x168]
mov rbx, qword [rsp + 0x170]
mov rbp, qword [rsp + 0x1e0]
add rsp, 0x1e8
ret
mov rax, qword [rsp + 0x148]
add rax, 0x10
mov rcx, rdx
mov qword [rsp + 0xd0], rcx
mov qword [rsp + 0x148], rax
mov rdi, qword [rax + 8]
mov qword [rsp + 0xa0], rdi
mov rdx, qword [rax]
mov qword [rsp + 0x138], rdx
mov rbx, qword [rsp + 0x200]
lea rax, [0x0055a640]
mov rcx, rdx
call fcn.00411ae0
mov rdx, qword [rax + 8]
mov rsi, qword [rax]
nop
mov r8, qword [rsp + 0x160]
test r8, r8
je 0x5292ea
lea r9, [rsp + 0x160]
nop dword [rax + rax]
cmp r8, r9
je 0x529302
jmp 0x52a35e
lea r8, [rsp + 0x160]
mov qword [rsp + 0x160], r8
lea r9, [rsp + 0x160]
mov qword [rsp + 0x48], rdx
mov qword [rsp + 0xd8], rsi
mov rcx, qword [rsp + 0x170]
lea r8, [rcx + 1]
mov rbx, qword [rsp + 0x168]
mov rdi, qword [rsp + 0x178]
cmp rdi, r8
jae 0x52936a
lea rax, [0x00553660]
mov rsi, r8
call fcn.0044a960
mov qword [rsp + 0x178], rcx
mov qword [rsp + 0x168], rax
mov rdx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0xd8]
lea r9, [rsp + 0x160]
mov rcx, rbx
mov rbx, rax
lea r8, [rcx + 1]
mov qword [rsp + 0x170], r8
mov byte [rbx + rcx], 0x3b
nop
nop
mov r8, qword [rsp + 0x160]
test r8, r8
je 0x529393
cmp r8, r9
je 0x52939b
jmp 0x52a34b
mov qword [rsp + 0x160], r9
mov rcx, qword [rsp + 0x170]
lea r8, [rcx + 1]
mov rbx, qword [rsp + 0x168]
mov rdi, qword [rsp + 0x178]
cmp rdi, r8
jae 0x5293f6
lea rax, [0x00553660]
mov rsi, r8
call fcn.0044a960
mov qword [rsp + 0x178], rcx
mov qword [rsp + 0x168], rax
mov rdx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0xd8]
lea r9, [rsp + 0x160]
mov rcx, rbx
mov rbx, rax
lea rdi, [rcx + 1]
mov qword [rsp + 0x170], rdi
mov byte [rbx + rcx], 0x20
mov rbx, qword [rsp + 0xa0]
test rbx, rbx
je 0x529936
mov rax, qword [rsp + 0x138]
lea rcx, [0x005a69b8]
call fcn.004ad340
test rax, rax
jge 0x529936
mov rax, qword [rsp + 0x138]
mov rbx, qword [rsp + 0xa0]
call fcn.004ace40
nop
mov rcx, qword [rsp + 0x160]
test rcx, rcx
je 0x52946a
lea rdx, [rsp + 0x160]
nop
cmp rcx, rdx
je 0x52947a
jmp 0x52a338
lea rdx, [rsp + 0x160]
mov qword [rsp + 0x160], rdx
mov rcx, qword [rsp + 0x170]
lea rsi, [rcx + rbx]
mov qword [rsp + 0xc8], rsi
mov rdi, qword [rsp + 0x178]
mov r8, qword [rsp + 0x168]
nop
cmp rdi, rsi
jae 0x5294e4
mov qword [rsp + 0x58], rbx
mov qword [rsp + 0x108], rax
mov qword [rsp + 0xc0], rcx
lea rax, [0x00553660]
mov rbx, r8
call fcn.0044a960
mov rbx, qword [rsp + 0x58]
mov r8, rax
mov rdi, rcx
mov rax, qword [rsp + 0x108]
mov rcx, qword [rsp + 0xc0]
mov qword [rsp + 0xc0], rdi
mov qword [rsp + 0x158], r8
lea rdx, [r8 + rcx]
mov rcx, rbx
mov rbx, rax
mov rax, rdx
call fcn.00463f40
mov rdx, qword [rsp + 0xc8]
mov qword [rsp + 0x170], rdx
mov rdx, qword [rsp + 0xc0]
mov qword [rsp + 0x178], rdx
mov rdx, qword [rsp + 0x158]
mov qword [rsp + 0x168], rdx
nop
mov rdx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0xd8]
xor eax, eax
jmp 0x52994d
cmp rax, rdx
jge 0x529604
nop
nop
mov r8, qword [rsp + 0x160]
nop
test r8, r8
je 0x529577
lea r9, [rsp + 0x160]
cmp r8, r9
je 0x52958f
jmp 0x52a325
lea r8, [rsp + 0x160]
mov qword [rsp + 0x160], r8
lea r9, [rsp + 0x160]
mov rcx, qword [rsp + 0x170]
lea r8, [rcx + 1]
mov rbx, qword [rsp + 0x168]
mov rdi, qword [rsp + 0x178]
cmp rdi, r8
jae 0x5295f2
lea rax, [0x00553660]
mov rsi, r8
call fcn.0044a960
mov qword [rsp + 0x178], rcx
mov qword [rsp + 0x168], rax
mov rdx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0xd8]
lea r9, [rsp + 0x160]
mov rcx, rbx
mov rbx, rax
mov rax, qword [rsp + 0xc8]
lea r8, [rcx + 1]
mov qword [rsp + 0x170], r8
mov byte [rbx + rcx], 0x2a
jmp 0x52960c
lea r9, [rsp + 0x160]
nop
mov r8, qword [rsp + 0x160]
test r8, r8
je 0x529625
cmp r8, r9
je 0x52962d
nop
jmp 0x52a312
mov qword [rsp + 0x160], r9
mov rcx, qword [rsp + 0x170]
lea r8, [rcx + 1]
mov rbx, qword [rsp + 0x168]
mov rdi, qword [rsp + 0x178]
cmp rdi, r8
jae 0x529690
lea rax, [0x00553660]
mov rsi, r8
call fcn.0044a960
mov qword [rsp + 0x178], rcx
mov qword [rsp + 0x168], rax
mov rdx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0xd8]
lea r9, [rsp + 0x160]
mov rcx, rbx
mov rbx, rax
mov rax, qword [rsp + 0xc8]
lea r8, [rcx + 1]
mov qword [rsp + 0x170], r8
mov byte [rbx + rcx], 0x3d
cmp rax, rdx
jge 0x529768
nop
mov r8, qword [rsp + 0x160]
test r8, r8
je 0x5296c5
cmp r8, r9
je 0x5296cd
nop dword [rax]
jmp 0x52a2ff
mov qword [rsp + 0x160], r9
mov rcx, qword [rsp + 0x170]
lea r8, [rcx + 7]
mov rdi, qword [rsp + 0x178]
mov rbx, qword [rsp + 0x168]
cmp rdi, r8
jae 0x529738
mov qword [rsp + 0xc8], r8
mov qword [rsp + 0xc0], rcx
lea rax, [0x00553660]
mov rsi, r8
call fcn.0044a960
mov rdx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0xd8]
mov r8, qword [rsp + 0xc8]
lea r9, [rsp + 0x160]
mov rbx, rax
mov rdi, rcx
mov rcx, qword [rsp + 0xc0]
mov dword [rbx + rcx], 0x2d667475
mov dword [rbx + rcx + 3], 0x2727382d
mov qword [rsp + 0x170], r8
mov qword [rsp + 0x178], rdi
mov qword [rsp + 0x168], rbx
xor eax, eax
xor ecx, ecx
jmp 0x529db0
test rdx, rdx
jne 0x529771
xor eax, eax
jmp 0x5297a2
mov rax, rsi
mov rbx, rdx
lea rcx, [0x005a69b8]
nop
call fcn.004ad340
test rax, rax
setl dl
mov rsi, qword [rsp + 0xd8]
lea r9, [rsp + 0x160]
mov eax, edx
mov rdx, qword [rsp + 0x48]
test al, al
jne 0x529845
nop
mov r8, qword [rsp + 0x160]
test r8, r8
je 0x5297c5
cmp r8, r9
je 0x5297cd
nop dword [rax]
jmp 0x529d9a
mov qword [rsp + 0x160], r9
mov rcx, qword [rsp + 0x170]
lea r8, [rcx + 1]
mov rbx, qword [rsp + 0x168]
mov rdi, qword [rsp + 0x178]
cmp rdi, r8
jae 0x529828
lea rax, [0x00553660]
mov rsi, r8
call fcn.0044a960
mov qword [rsp + 0x178], rcx
mov qword [rsp + 0x168], rax
mov rdx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0xd8]
lea r9, [rsp + 0x160]
mov rcx, rbx
mov rbx, rax
lea r8, [rcx + 1]
mov qword [rsp + 0x170], r8
mov byte [rbx + rcx], 0x22
xor eax, eax
xor ecx, ecx
nop dword [rax]
jmp 0x5299cb
nop
nop
mov r8, qword [rsp + 0x160]
test r8, r8
je 0x52985e
cmp r8, r9
je 0x529866
jmp 0x5299b5
mov qword [rsp + 0x160], r9
mov rcx, qword [rsp + 0x170]
lea r8, [rdx + rcx]
mov qword [rsp + 0xc8], r8
mov rdi, qword [rsp + 0x178]
mov rbx, qword [rsp + 0x168]
cmp rdi, r8
jae 0x5298c1
mov qword [rsp + 0xc0], rcx
lea rax, [0x00553660]
mov rsi, r8
call fcn.0044a960
mov rdx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0xd8]
mov rbx, rax
mov rdi, rcx
mov rcx, qword [rsp + 0xc0]
mov qword [rsp + 0xc0], rdi
mov qword [rsp + 0x158], rbx
lea rax, [rbx + rcx]
mov rcx, rdx
mov rbx, rsi
nop dword [rax + rax]
call fcn.00463f40
mov rdx, qword [rsp + 0xc8]
mov qword [rsp + 0x170], rdx
mov rdx, qword [rsp + 0xc0]
mov qword [rsp + 0x178], rdx
mov rdx, qword [rsp + 0x158]
mov qword [rsp + 0x168], rdx
mov rdx, qword [rsp + 0xd0]
inc rdx
mov rsi, qword [rsp + 0x90]
cmp rsi, rdx
jg 0x529271
jmp 0x529251
xor eax, eax
xor ebx, ebx
mov rbp, qword [rsp + 0x1e0]
add rsp, 0x1e8
ret
mov rax, r9
mov qword [rsp + 0xc8], rax
cmp rax, rdx
jge 0x52954e
movzx r8d, byte [rsi + rax]
cmp r8d, 0x80
jge 0x529972
lea r9, [rax + 1]
jmp 0x5299a0
mov rbx, rdx
mov rcx, rax
mov rax, rsi
nop dword [rax + rax]
call fcn.0045cd00
mov rdx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0xd8]
mov r8d, eax
mov r9, rbx
mov rax, qword [rsp + 0xc8]
lea r10d, [r8 - 0x20]
cmp r10d, 0x5e
jbe 0x52994a
cmp r8d, 9
je 0x52994a
jmp 0x52954b
lea rax, [0x005534e0]
lea rbx, [0x005d8c20]
call fcn.00436740
inc rax
cmp rax, rdx
jge 0x529bad
movzx r8d, byte [rsi + rax]
cmp r8b, 0x22
je 0x5299e6
nop
cmp r8b, 0x5c
jne 0x5299c8
cmp rcx, rax
ja 0x529d8c
mov r8, rax
sub rax, rcx
mov r10, rax
neg rax
sar rax, 0x3f
and rcx, rax
lea rbx, [rcx + rsi]
nop
mov r11, qword [rsp + 0x160]
test r11, r11
je 0x529a1e
cmp r11, r9
je 0x529a26
jmp 0x529d79
mov qword [rsp + 0x160], r9
mov qword [rsp + 0xc8], r8
mov rcx, qword [rsp + 0x170]
lea r11, [r10 + rcx]
mov qword [rsp + 0xc0], r11
mov rdi, qword [rsp + 0x178]
mov r12, qword [rsp + 0x168]
cmp rdi, r11
jae 0x529aa3
mov qword [rsp + 0xb8], rcx
mov qword [rsp + 0xb0], r10
mov qword [rsp + 0xf0], rbx
lea rax, [0x00553660]
mov rbx, r12
mov rsi, r11
nop dword [rax]
call fcn.0044a960
mov rbx, qword [rsp + 0xf0]
mov r10, qword [rsp + 0xb0]
mov r12, rax
mov rdi, rcx
mov rcx, qword [rsp + 0xb8]
mov qword [rsp + 0xb8], rdi
mov qword [rsp + 0x158], r12
lea rax, [r12 + rcx]
mov rcx, r10
call fcn.00463f40
mov rdx, qword [rsp + 0xc0]
mov qword [rsp + 0x170], rdx
mov rdx, qword [rsp + 0xb8]
mov qword [rsp + 0x178], rdx
mov rdx, qword [rsp + 0x158]
mov qword [rsp + 0x168], rdx
nop
mov rdx, qword [rsp + 0x160]
test rdx, rdx
je 0x529b0f
lea r8, [rsp + 0x160]
cmp rdx, r8
je 0x529b27
jmp 0x529d66
lea rdx, [rsp + 0x160]
mov qword [rsp + 0x160], rdx
lea r8, [rsp + 0x160]
mov rsi, qword [rsp + 0x170]
lea rdx, [rsi + 1]
mov rbx, qword [rsp + 0x168]
mov rdi, qword [rsp + 0x178]
cmp rdi, rdx
jae 0x529b78
lea rax, [0x00553660]
mov rcx, rsi
mov rsi, rdx
call fcn.0044a960
mov qword [rsp + 0x178], rcx
mov qword [rsp + 0x168], rax
lea r8, [rsp + 0x160]
mov rsi, rbx
mov rbx, rax
lea rdx, [rsi + 1]
mov qword [rsp + 0x170], rdx
mov byte [rbx + rsi], 0x5c
mov rax, qword [rsp + 0xc8]
mov rdx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0xd8]
lea r9, [rsp + 0x160]
mov rcx, rax
jmp 0x5299c8
cmp rcx, rdx
ja 0x529d5b
sub rdx, rcx
mov r8, rdx
neg rdx
sar rdx, 0x3f
and rcx, rdx
lea rbx, [rcx + rsi]
nop
mov rdx, qword [rsp + 0x160]
test rdx, rdx
je 0x529be5
cmp rdx, r9
je 0x529bed
nop dword [rax]
jmp 0x529d48
mov qword [rsp + 0x160], r9
mov rcx, qword [rsp + 0x170]
lea rsi, [r8 + rcx]
mov qword [rsp + 0xc8], rsi
mov rdi, qword [rsp + 0x178]
mov rdx, qword [rsp + 0x168]
cmp rdi, rsi
jae 0x529c5b
mov qword [rsp + 0xc0], rcx
mov qword [rsp + 0xb8], r8
mov qword [rsp + 0xe8], rbx
lea rax, [0x00553660]
mov rbx, rdx
call fcn.0044a960
mov rbx, qword [rsp + 0xe8]
mov r8, qword [rsp + 0xb8]
mov rdx, rax
mov rdi, rcx
mov rcx, qword [rsp + 0xc0]
mov qword [rsp + 0xc0], rdi
mov qword [rsp + 0x158], rdx
lea rax, [rdx + rcx]
mov rcx, r8
call fcn.00463f40
mov rdx, qword [rsp + 0xc8]
mov qword [rsp + 0x170], rdx
mov rdx, qword [rsp + 0xc0]
mov qword [rsp + 0x178], rdx
mov rdx, qword [rsp + 0x158]
mov qword [rsp + 0x168], rdx
nop
mov rdx, qword [rsp + 0x160]
test rdx, rdx
je 0x529cc7
lea r8, [rsp + 0x160]
nop dword [rax]
cmp rdx, r8
je 0x529cd7
jmp 0x529d35
lea rdx, [rsp + 0x160]
mov qword [rsp + 0x160], rdx
mov rsi, qword [rsp + 0x170]
lea rdx, [rsi + 1]
mov rbx, qword [rsp + 0x168]
mov rdi, qword [rsp + 0x178]
cmp rdi, rdx
jae 0x529d20
lea rax, [0x00553660]
mov rcx, rsi
mov rsi, rdx
call fcn.0044a960
mov qword [rsp + 0x178], rcx
mov qword [rsp + 0x168], rax
mov rsi, rbx
mov rbx, rax
lea rdx, [rsi + 1]
mov qword [rsp + 0x170], rdx
mov byte [rbx + rsi], 0x22
jmp 0x529915
lea rax, [0x005534e0]
lea rbx, [0x005d8c20]
call fcn.00436740
lea rax, [0x005534e0]
lea rbx, [0x005d8c20]
call fcn.00436740
mov rax, rcx
mov rcx, rdx
call fcn.00463660
lea rax, [0x005534e0]
lea rbx, [0x005d8c20]
call fcn.00436740
lea rax, [0x005534e0]
lea rbx, [0x005d8c20]
call fcn.00436740
mov rdx, rax
mov rax, rcx
mov rcx, rdx
call fcn.00463660
lea rax, [0x005534e0]
lea rbx, [0x005d8c20]
call fcn.00436740
inc rax
cmp rax, rdx
jge 0x52a187
mov qword [rsp + 0x88], rax
movzx r8d, byte [rsi + rax]
mov byte [rsp + 0x45], r8b
lea r10d, [r8 - 0x21]
cmp r10b, 0x5e
jb 0x529de0
mov ebx, 1
jmp 0x529e60
cmp r8b, 0x2a
jne 0x529ded
mov ebx, 1
jmp 0x529e60
cmp r8b, 0x27
jne 0x529e00
mov ebx, 1
jmp 0x529e60
cmp r8b, 0x25
jne 0x529e0d
mov ebx, 1
jmp 0x529e60
mov qword [rsp + 0x78], rcx
nop
nop
lea rax, [0x0057fa68]
mov ebx, 0xf
mov ecx, r8d
call fcn.004abee0
test rax, rax
setge dl
mov rax, qword [rsp + 0x88]
mov rcx, qword [rsp + 0x78]
mov rsi, qword [rsp + 0xd8]
movzx r8d, byte [rsp + 0x45]
lea r9, [rsp + 0x160]
mov ebx, edx
mov rdx, qword [rsp + 0x48]
nop dword [rax + rax]
test bl, bl
je 0x529dad
cmp rcx, rax
ja 0x52a2f1
mov r10, rax
sub rax, rcx
mov r11, rax
neg rax
sar rax, 0x3f
and rcx, rax
lea rbx, [rsi + rcx]
nop
mov r12, qword [rsp + 0x160]
test r12, r12
je 0x529ea5
cmp r12, r9
je 0x529ead
nop dword [rax + rax]
jmp 0x52a2de
mov qword [rsp + 0x160], r9
mov rcx, qword [rsp + 0x170]
lea r12, [rcx + r11]
mov qword [rsp + 0xc8], r12
mov rdi, qword [rsp + 0x178]
mov r13, qword [rsp + 0x168]
cmp rdi, r12
jae 0x529f23
mov qword [rsp + 0xc0], r11
mov qword [rsp + 0x100], rbx
mov qword [rsp + 0xb8], rcx
lea rax, [0x00553660]
mov rbx, r13
mov rsi, r12
nop dword [rax + rax]
call fcn.0044a960
mov rbx, qword [rsp + 0x100]
mov r11, qword [rsp + 0xc0]
mov r13, rax
mov rdi, rcx
mov rcx, qword [rsp + 0xb8]
mov qword [rsp + 0xc0], rdi
mov qword [rsp + 0x158], r13
lea rax, [r13 + rcx]
mov rcx, r11
nop dword [rax + rax]
call fcn.00463f40
mov rdx, qword [rsp + 0xc8]
mov qword [rsp + 0x170], rdx
mov rdx, qword [rsp + 0xc0]
mov qword [rsp + 0x178], rdx
mov rdx, qword [rsp + 0x158]
mov qword [rsp + 0x168], rdx
nop
nop
mov rdx, qword [rsp + 0x160]
nop
test rdx, rdx
je 0x529f97
lea r8, [rsp + 0x160]
cmp rdx, r8
je 0x529faf
jmp 0x52a2cb
lea rdx, [rsp + 0x160]
mov qword [rsp + 0x160], rdx
lea r8, [rsp + 0x160]
mov rsi, qword [rsp + 0x170]
lea rdx, [rsi + 1]
mov rbx, qword [rsp + 0x168]
mov rdi, qword [rsp + 0x178]
cmp rdi, rdx
jae 0x52a003
lea rax, [0x00553660]
mov rcx, rsi
mov rsi, rdx
nop dword [rax]
call fcn.0044a960
mov qword [rsp + 0x178], rcx
mov qword [rsp + 0x168], rax
lea r8, [rsp + 0x160]
mov rsi, rbx
mov rbx, rax
lea rdx, [rsi + 1]
mov qword [rsp + 0x170], rdx
mov byte [rbx + rsi], 0x25
movzx edx, byte [rsp + 0x45]
mov r9d, edx
shr dl, 4
movzx edx, dl
lea r10, [0x0057ff6a]
movzx edx, byte [r10 + rdx]
nop
mov r11, qword [rsp + 0x160]
test r11, r11
je 0x52a04a
nop dword [rax + rax]
cmp r11, r8
je 0x52a052
jmp 0x52a2b8
mov qword [rsp + 0x160], r8
mov rsi, qword [rsp + 0x170]
lea r11, [rsi + 1]
mov rbx, qword [rsp + 0x168]
mov rdi, qword [rsp + 0x178]
cmp rdi, r11
jae 0x52a0b9
mov byte [rsp + 0x47], dl
lea rax, [0x00553660]
mov rcx, rsi
mov rsi, r11
call fcn.0044a960
mov qword [rsp + 0x178], rcx
mov qword [rsp + 0x168], rax
movzx edx, byte [rsp + 0x47]
lea r8, [rsp + 0x160]
movzx r9d, byte [rsp + 0x45]
lea r10, [0x0057ff6a]
mov rsi, rbx
mov rbx, rax
lea r11, [rsi + 1]
mov qword [rsp + 0x170], r11
mov byte [rbx + rsi], dl
and r9d, 0xf
movzx edx, byte [r9 + r10]
nop
mov r9, qword [rsp + 0x160]
test r9, r9
je 0x52a0ea
nop
cmp r9, r8
je 0x52a0f2
jmp 0x52a2a5
mov qword [rsp + 0x160], r8
mov rsi, qword [rsp + 0x170]
lea r9, [rsi + 1]
mov rbx, qword [rsp + 0x168]
mov rdi, qword [rsp + 0x178]
cmp rdi, r9
jae 0x52a14c
mov byte [rsp + 0x46], dl
lea rax, [0x00553660]
mov rcx, rsi
mov rsi, r9
call fcn.0044a960
mov qword [rsp + 0x178], rcx
mov qword [rsp + 0x168], rax
movzx edx, byte [rsp + 0x46]
lea r8, [rsp + 0x160]
mov rsi, rbx
mov rbx, rax
lea r9, [rsi + 1]
mov qword [rsp + 0x170], r9
mov byte [rbx + rsi], dl
mov rcx, qword [rsp + 0x88]
lea rdx, [rcx + 1]
mov rax, rcx
mov rsi, qword [rsp + 0xd8]
lea r9, [rsp + 0x160]
mov rcx, rdx
mov rdx, qword [rsp + 0x48]
jmp 0x529dad
cmp rcx, rdx
ja 0x52a298
sub rdx, rcx
mov r8, rdx
neg rdx
sar rdx, 0x3f
and rcx, rdx
lea rbx, [rsi + rcx]
nop
mov rdx, qword [rsp + 0x160]
test rdx, rdx
je 0x52a1bc
cmp rdx, r9
je 0x52a1c4
jmp 0x52a285
mov qword [rsp + 0x160], r9
mov rcx, qword [rsp + 0x170]
lea rsi, [r8 + rcx]
mov qword [rsp + 0xc8], rsi
mov rdi, qword [rsp + 0x178]
mov rdx, qword [rsp + 0x168]
cmp rdi, rsi
jae 0x52a232
mov qword [rsp + 0xc0], rcx
mov qword [rsp + 0xb8], r8
mov qword [rsp + 0xf8], rbx
lea rax, [0x00553660]
mov rbx, rdx
call fcn.0044a960
mov rbx, qword [rsp + 0xf8]
mov r8, qword [rsp + 0xb8]
mov rdx, rax
mov rdi, rcx
mov rcx, qword [rsp + 0xc0]
mov qword [rsp + 0xc0], rdi
mov qword [rsp + 0x158], rdx
lea rax, [rdx + rcx]
mov rcx, r8
call fcn.00463f40
mov rdx, qword [rsp + 0xc8]
mov qword [rsp + 0x170], rdx
mov rdx, qword [rsp + 0xc0]
mov qword [rsp + 0x178], rdx
mov rdx, qword [rsp + 0x158]
mov qword [rsp + 0x168], rdx
nop
jmp 0x529915
lea rax, [0x005534e0]
lea rbx, [0x005d8c20]
call fcn.00436740
mov rax, rcx
mov rcx, rdx
nop
call fcn.00463660
lea rax, [0x005534e0]
lea rbx, [0x005d8c20]
call fcn.00436740
lea rax, [0x005534e0]
lea rbx, [0x005d8c20]
call fcn.00436740
lea rax, [0x005534e0]
lea rbx, [0x005d8c20]
call fcn.00436740
lea rax, [0x005534e0]
lea rbx, [0x005d8c20]
call fcn.00436740
mov rdx, rax
mov rax, rcx
mov rcx, rdx
call fcn.00463660
lea rax, [0x005534e0]
lea rbx, [0x005d8c20]
call fcn.00436740
lea rax, [0x005534e0]
lea rbx, [0x005d8c20]
call fcn.00436740
lea rax, [0x005534e0]
lea rbx, [0x005d8c20]
call fcn.00436740
lea rax, [0x005534e0]
lea rbx, [0x005d8c20]
call fcn.00436740
lea rax, [0x005534e0]
lea rbx, [0x005d8c20]
call fcn.00436740
lea rax, [0x005534e0]
lea rbx, [0x005d8c20]
call fcn.00436740
lea rax, [0x005534e0]
lea rbx, [0x005d8c20]
nop
call fcn.00436740
lea rax, [0x005534e0]
lea rbx, [0x005d8c20]
call fcn.00436740
lea rax, [0x005534e0]
lea rbx, [0x005d8c20]
call fcn.00436740
lea rax, [0x005534e0]
lea rbx, [0x005d8c20]
call fcn.00436740
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
call fcn.00460ec0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
jmp fcn.00528bc0