Function at 0x52d860
Capabilities:
Encode data using base64

Disassembly:
lea r12, [rsp - 0x170]
cmp r12, qword [r14 + 0x10]
jbe 0x52f02c
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 + 0xf8], xmm15
movups xmmword [rsp + 0x108], xmm15
mov edi, 1
lea rcx, str.___LMC:_i_____80_:01.__M___________n__s____Pn___n__n___n__t__25LlLtLuMn__n___ip53A4V1V6V2V3V5A3osid0b0x0X0o
call fcn.00477460
nop dword [rax + rax]
test sil, sil
je 0x52dc17
mov qword [rsp + 0xe8], rcx
mov qword [rsp + 0x68], rdi
mov qword [rsp + 0x60], rbx
mov qword [rsp + 0xe0], rax
test rbx, rbx
jne 0x52d8ec
xor edx, edx
jmp 0x52d920
lea rcx, [0x005c3470]
call fcn.0047ff80
test rax, rax
setl dl
mov rax, qword [rsp + 0xe0]
mov rcx, qword [rsp + 0xe8]
mov rbx, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x68]
nop dword [rax + rax]
test dl, dl
je 0x52dc0a
test rdi, rdi
jne 0x52d931
xor edx, edx
jmp 0x52d965
mov rax, rcx
mov rbx, rdi
lea rcx, [0x005c3470]
nop
call fcn.0047ff80
test rax, rax
setl dl
mov rax, qword [rsp + 0xe0]
mov rcx, qword [rsp + 0xe8]
mov rbx, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x68]
test dl, dl
je 0x52dc0a
call fcn.0047f900
mov rcx, qword [rsp + 0xf8]
nop
nop
nop dword [rax]
test rcx, rcx
je 0x52d997
lea rdx, [rsp + 0xf8]
cmp rcx, rdx
je 0x52d9a7
jmp 0x52f018
lea rdx, [rsp + 0xf8]
mov qword [rsp + 0xf8], rdx
mov rcx, qword [rsp + 0x110]
mov rdx, qword [rsp + 0x108]
lea r8, [rdx + rbx]
mov r9, qword [rsp + 0x100]
cmp rcx, r8
jae 0x52da13
mov qword [rsp + 0xa8], rbx
mov qword [rsp + 0x150], rax
mov qword [rsp + 0xd8], rdx
mov rax, r9
mov rdi, rbx
lea rsi, [0x00560b60]
mov rbx, r8
call fcn.0046a960
mov rdx, qword [rsp + 0xd8]
mov r9, rax
mov r8, rbx
mov rax, qword [rsp + 0x150]
mov rbx, qword [rsp + 0xa8]
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.00471d20
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x108], rdx
mov rdx, qword [rsp + 0xd8]
mov qword [rsp + 0x110], rdx
mov rdx, qword [rsp + 0x180]
mov qword [rsp + 0x100], rdx
mov rdx, qword [rsp + 0xf8]
nop
nop
nop
test rdx, rdx
je 0x52da97
lea r8, [rsp + 0xf8]
cmp rdx, r8
je 0x52daa7
jmp 0x52f005
lea rdx, [rsp + 0xf8]
mov qword [rsp + 0xf8], rdx
mov rcx, qword [rsp + 0x110]
mov rbx, qword [rsp + 0x108]
inc rbx
mov rax, qword [rsp + 0x100]
cmp rcx, rbx
jae 0x52dae8
mov edi, 1
lea rsi, [0x00560b60]
call fcn.0046a960
mov qword [rsp + 0x110], rcx
mov qword [rsp + 0x100], rax
mov qword [rsp + 0x108], rbx
mov byte [rbx + rax - 1], 0x2f
mov rax, qword [rsp + 0xe8]
mov rbx, qword [rsp + 0x68]
call fcn.0047f900
mov rcx, qword [rsp + 0xf8]
nop
test rcx, rcx
je 0x52db2a
lea rdx, [rsp + 0xf8]
nop dword [rax]
cmp rcx, rdx
je 0x52db3a
jmp 0x52eff1
lea rdx, [rsp + 0xf8]
mov qword [rsp + 0xf8], rdx
mov rcx, qword [rsp + 0x110]
mov rdx, qword [rsp + 0x108]
lea r8, [rdx + rbx]
mov r9, qword [rsp + 0x100]
cmp rcx, r8
jae 0x52dba6
mov qword [rsp + 0xa0], rbx
mov qword [rsp + 0x148], rax
mov qword [rsp + 0xd8], rdx
mov rax, r9
mov rdi, rbx
lea rsi, [0x00560b60]
mov rbx, r8
call fcn.0046a960
mov rdx, qword [rsp + 0xd8]
mov r9, rax
mov r8, rbx
mov rax, qword [rsp + 0x148]
mov rbx, qword [rsp + 0xa0]
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.00471d20
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x108], rdx
mov rdx, qword [rsp + 0xd8]
mov qword [rsp + 0x110], rdx
mov rdx, qword [rsp + 0x180]
mov qword [rsp + 0x100], rdx
jmp 0x52dd5a
xor eax, eax
xor ebx, ebx
add rsp, 0x1e8
pop rbp
ret
mov rbx, qword [rsp + 0x200]
nop
test rbx, rbx
je 0x52dde2
mov rax, qword [rsp + 0x1f8]
lea rcx, [0x005c3470]
call fcn.0047ff80
nop dword [rax]
test rax, rax
jge 0x52dde2
mov rax, qword [rsp + 0x1f8]
mov rbx, qword [rsp + 0x200]
call fcn.0047f900
mov rcx, qword [rsp + 0xf8]
nop
nop
test rcx, rcx
je 0x52dc7f
lea rdx, [rsp + 0xf8]
cmp rcx, rdx
je 0x52dc8f
jmp 0x52efde
lea rdx, [rsp + 0xf8]
mov qword [rsp + 0xf8], rdx
mov rcx, qword [rsp + 0x110]
mov rdx, qword [rsp + 0x108]
lea r8, [rdx + rbx]
mov r9, qword [rsp + 0x100]
cmp rcx, r8
jae 0x52dcfb
mov qword [rsp + 0xb0], rbx
mov qword [rsp + 0x158], rax
mov qword [rsp + 0xd8], rdx
mov rax, r9
mov rdi, rbx
lea rsi, [0x00560b60]
mov rbx, r8
call fcn.0046a960
mov rdx, qword [rsp + 0xd8]
mov r9, rax
mov r8, rbx
mov rax, qword [rsp + 0x158]
mov rbx, qword [rsp + 0xb0]
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.00471d20
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x108], rdx
mov rdx, qword [rsp + 0xd8]
mov qword [rsp + 0x110], rdx
mov rdx, qword [rsp + 0x180]
mov qword [rsp + 0x100], rdx
mov rdx, qword [rsp + 0x208]
test rdx, rdx
je 0x52dd6c
mov rsi, qword [rdx]
jmp 0x52dd6e
xor esi, esi
mov qword [rsp + 0x78], rsi
lea rax, [0x00560ae0]
xor ebx, ebx
mov rcx, rsi
nop
call fcn.0046a880
mov qword [rsp + 0x178], rax
lea rdi, [rsp + 0x188]
lea rdi, [rdi - 0x20]
nop dword [rax]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.0047164b
mov rbp, qword [rbp]
mov rbx, qword [rsp + 0x208]
lea rcx, [rsp + 0x188]
lea rax, [0x0056a200]
call fcn.00466140
xor eax, eax
mov rcx, qword [rsp + 0x78]
mov rdx, qword [rsp + 0x178]
nop
jmp 0x52de1a
xor eax, eax
xor ebx, ebx
add rsp, 0x1e8
pop rbp
ret
mov qword [rsp + 0xf0], rdx
mov qword [rdx + rsi], r8
lea rax, [rsp + 0x188]
call fcn.00466360
mov rax, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x78]
mov rdx, qword [rsp + 0xf0]
mov r10, qword [rsp + 0x188]
test r10, r10
je 0x52deab
lea rbx, [rax + 1]
mov r8, qword [r10]
mov r9, qword [r10 + 8]
cmp rcx, rbx
jae 0x52de72
mov qword [rsp + 0x160], r8
mov qword [rsp + 0xb8], r9
mov rax, rdx
mov edi, 1
lea rsi, [0x00560ae0]
call fcn.0046a960
mov r8, qword [rsp + 0x160]
mov r9, qword [rsp + 0xb8]
mov rdx, rax
mov qword [rsp + 0x70], rbx
mov qword [rsp + 0x78], rcx
lea rsi, [rbx - 1]
shl rsi, 4
mov qword [rdx + rsi + 8], r9
cmp dword [0x011d4520], 0
je 0x52ddef
call fcn.00470fa0
mov qword [r11], r8
mov rdi, qword [rdx + rsi]
mov qword [r11 + 8], rdi
jmp 0x52ddef
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x170], rdx
lea r10, [0x005f1240]
bsr r9, rax
mov r11, 0xffffffffffffffff
cmove r9, r11
inc r9
mov rbx, rdx
mov rdi, rcx
xor esi, esi
mov r8, rax
mov rax, r10
mov rcx, r8
call fcn.004b4be0
mov rdx, qword [rsp + 0x170]
mov rax, qword [rsp + 0x70]
jmp 0x52df0d
mov rdx, qword [rsp + 0x178]
add rdx, 0x10
mov rax, qword [rsp + 0xd8]
dec rax
test rax, rax
jle 0x52e5b6
mov qword [rsp + 0xd8], rax
mov qword [rsp + 0x178], rdx
mov rdi, qword [rdx + 8]
mov qword [rsp + 0x80], rdi
mov rcx, qword [rdx]
mov qword [rsp + 0x118], rcx
lea rax, [0x0056a200]
mov rbx, qword [rsp + 0x208]
call fcn.0040fc20
mov rdx, qword [rsp + 0xf8]
mov rsi, qword [rax + 8]
mov r8, qword [rax]
nop
nop
test rdx, rdx
je 0x52df79
lea r9, [rsp + 0xf8]
cmp rdx, r9
je 0x52df89
jmp 0x52efcb
lea rdx, [rsp + 0xf8]
mov qword [rsp + 0xf8], rdx
mov qword [rsp + 0xc0], rsi
mov qword [rsp + 0x168], r8
mov rcx, qword [rsp + 0x110]
mov rbx, qword [rsp + 0x108]
inc rbx
mov rax, qword [rsp + 0x100]
cmp rcx, rbx
jae 0x52dfea
mov edi, 1
lea rsi, [0x00560b60]
call fcn.0046a960
mov qword [rsp + 0x110], rcx
mov qword [rsp + 0x100], rax
mov rsi, qword [rsp + 0xc0]
mov r8, qword [rsp + 0x168]
mov qword [rsp + 0x108], rbx
mov byte [rbx + rax - 1], 0x3b
mov rdx, qword [rsp + 0xf8]
nop
nop
test rdx, rdx
je 0x52e018
lea r9, [rsp + 0xf8]
cmp rdx, r9
je 0x52e028
jmp 0x52efb8
lea rdx, [rsp + 0xf8]
mov qword [rsp + 0xf8], rdx
mov rcx, qword [rsp + 0x110]
mov rbx, qword [rsp + 0x108]
inc rbx
mov rax, qword [rsp + 0x100]
cmp rcx, rbx
jae 0x52e079
mov edi, 1
lea rsi, [0x00560b60]
call fcn.0046a960
mov qword [rsp + 0x110], rcx
mov qword [rsp + 0x100], rax
mov rsi, qword [rsp + 0xc0]
mov r8, qword [rsp + 0x168]
mov qword [rsp + 0x108], rbx
mov byte [rbx + rax - 1], 0x20
mov rbx, qword [rsp + 0x80]
test rbx, rbx
je 0x52e5a9
mov rax, qword [rsp + 0x118]
lea rcx, [0x005c3470]
call fcn.0047ff80
test rax, rax
jge 0x52e5a9
mov rax, qword [rsp + 0x118]
mov rbx, qword [rsp + 0x80]
call fcn.0047f900
mov rcx, qword [rsp + 0xf8]
nop
nop
test rcx, rcx
je 0x52e0ea
lea rdx, [rsp + 0xf8]
cmp rcx, rdx
je 0x52e0fa
jmp 0x52efa5
lea rdx, [rsp + 0xf8]
mov qword [rsp + 0xf8], rdx
mov rcx, qword [rsp + 0x110]
mov rdx, qword [rsp + 0x108]
lea r8, [rbx + rdx]
mov r9, qword [rsp + 0x100]
cmp rcx, r8
jae 0x52e166
mov qword [rsp + 0xd0], rdx
mov qword [rsp + 0x98], rbx
mov qword [rsp + 0x140], rax
mov rax, r9
mov rdi, rbx
lea rsi, [0x00560b60]
mov rbx, r8
call fcn.0046a960
mov rdx, qword [rsp + 0xd0]
mov r9, rax
mov r8, rbx
mov rax, qword [rsp + 0x140]
mov rbx, qword [rsp + 0x98]
mov qword [rsp + 0xd0], rcx
mov qword [rsp + 0xc8], 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.00471d20
mov rdx, qword [rsp + 0xc8]
mov qword [rsp + 0x108], rdx
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x110], rdx
mov rdx, qword [rsp + 0x180]
mov qword [rsp + 0x100], rdx
nop
mov rdx, qword [rsp + 0xc0]
mov rsi, qword [rsp + 0x168]
xor eax, eax
jmp 0x52e5f2
cmp rax, rdx
jge 0x52e287
mov r8, qword [rsp + 0xf8]
nop
nop
test r8, r8
je 0x52e20a
lea r9, [rsp + 0xf8]
cmp r8, r9
je 0x52e21a
jmp 0x52ef92
lea r8, [rsp + 0xf8]
mov qword [rsp + 0xf8], r8
mov rcx, qword [rsp + 0x110]
mov rbx, qword [rsp + 0x108]
inc rbx
mov r8, qword [rsp + 0x100]
cmp rcx, rbx
jae 0x52e279
mov rax, r8
mov edi, 1
lea rsi, [0x00560b60]
call fcn.0046a960
mov qword [rsp + 0x110], rcx
mov qword [rsp + 0x100], rax
mov rdx, qword [rsp + 0xc0]
mov rsi, qword [rsp + 0x168]
mov r8, rax
mov rax, qword [rsp + 0xd0]
mov qword [rsp + 0x108], rbx
mov byte [rbx + r8 - 1], 0x2a
mov r8, qword [rsp + 0xf8]
nop
nop
test r8, r8
je 0x52e2aa
lea r9, [rsp + 0xf8]
nop
cmp r8, r9
je 0x52e2ba
jmp 0x52ef7f
lea r8, [rsp + 0xf8]
mov qword [rsp + 0xf8], r8
mov rcx, qword [rsp + 0x110]
mov rbx, qword [rsp + 0x108]
inc rbx
mov r8, qword [rsp + 0x100]
cmp rcx, rbx
jb 0x52e2df
cmp rax, rdx
jmp 0x52e324
mov rax, r8
mov edi, 1
lea rsi, [0x00560b60]
call fcn.0046a960
mov qword [rsp + 0x110], rcx
mov qword [rsp + 0x100], rax
mov rdx, qword [rsp + 0xd0]
mov rcx, qword [rsp + 0xc0]
cmp rdx, rcx
mov rdx, rcx
mov rsi, qword [rsp + 0x168]
mov r8, rax
mov qword [rsp + 0x108], rbx
mov byte [rbx + r8 - 1], 0x3d
jge 0x52e3f0
mov r8, qword [rsp + 0xf8]
nop
test r8, r8
je 0x52e358
lea r9, [rsp + 0xf8]
cmp r8, r9
je 0x52e368
jmp 0x52ef6c
lea r8, [rsp + 0xf8]
mov qword [rsp + 0xf8], r8
mov rbx, qword [rsp + 0x108]
lea r8, [rbx + 7]
mov rcx, qword [rsp + 0x110]
mov rax, qword [rsp + 0x100]
cmp rcx, r8
jae 0x52e3c0
mov qword [rsp + 0xd0], rbx
mov rbx, r8
mov edi, 7
lea rsi, [0x00560b60]
call fcn.0046a960
mov rdx, qword [rsp + 0xc0]
mov rsi, qword [rsp + 0x168]
mov r8, rbx
mov rbx, qword [rsp + 0xd0]
mov dword [rax + rbx], 0x2d667475
mov dword [rax + rbx + 3], 0x2727382d
mov qword [rsp + 0x108], r8
mov qword [rsp + 0x110], rcx
mov qword [rsp + 0x100], rax
xor eax, eax
xor ecx, ecx
jmp 0x52ea4f
test rdx, rdx
jne 0x52e3f9
xor eax, eax
jmp 0x52e423
mov rax, rsi
mov rbx, rdx
lea rcx, [0x005c3470]
call fcn.0047ff80
test rax, rax
setl dl
mov rsi, qword [rsp + 0x168]
mov eax, edx
mov rdx, qword [rsp + 0xc0]
test al, al
jne 0x52e4c5
mov r8, qword [rsp + 0xf8]
nop
test r8, r8
je 0x52e44b
lea r9, [rsp + 0xf8]
cmp r8, r9
je 0x52e45b
jmp 0x52ea39
lea r8, [rsp + 0xf8]
mov qword [rsp + 0xf8], r8
mov rcx, qword [rsp + 0x110]
mov rbx, qword [rsp + 0x108]
inc rbx
mov rax, qword [rsp + 0x100]
cmp rcx, rbx
jae 0x52e4ac
mov edi, 1
lea rsi, [0x00560b60]
call fcn.0046a960
mov qword [rsp + 0x110], rcx
mov qword [rsp + 0x100], rax
mov rdx, qword [rsp + 0xc0]
mov rsi, qword [rsp + 0x168]
mov qword [rsp + 0x108], rbx
mov byte [rbx + rax - 1], 0x22
xor eax, eax
xor ecx, ecx
nop dword [rax]
jmp 0x52e674
mov r8, qword [rsp + 0xf8]
nop
nop
test r8, r8
je 0x52e4ea
lea r9, [rsp + 0xf8]
nop dword [rax]
cmp r8, r9
je 0x52e4fa
jmp 0x52e65e
lea r8, [rsp + 0xf8]
mov qword [rsp + 0xf8], r8
mov rcx, qword [rsp + 0x110]
mov r8, qword [rsp + 0x108]
lea rbx, [rdx + r8]
mov rax, qword [rsp + 0x100]
cmp rcx, rbx
jae 0x52e54a
mov qword [rsp + 0xd0], r8
mov rdi, rdx
lea rsi, [0x00560b60]
call fcn.0046a960
mov rdx, qword [rsp + 0xc0]
mov rsi, qword [rsp + 0x168]
mov r8, qword [rsp + 0xd0]
mov qword [rsp + 0x180], rax
mov qword [rsp + 0xd0], rcx
mov qword [rsp + 0xc8], rbx
lea rdi, [rax + r8]
mov rax, rdi
mov rbx, rsi
mov rcx, rdx
call fcn.00471d20
mov rdx, qword [rsp + 0xc8]
mov qword [rsp + 0x108], rdx
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x110], rdx
mov rdx, qword [rsp + 0x180]
mov qword [rsp + 0x100], rdx
jmp 0x52def6
xor eax, eax
xor ebx, ebx
add rsp, 0x1e8
pop rbp
ret
mov rbx, qword [rsp + 0x108]
mov rax, qword [rsp + 0x100]
mov rcx, rax
neg rcx
nop
cmp rbx, rcx
ja 0x52e5e0
add rsp, 0x1e8
pop rbp
ret
test rax, rax
je 0x52e5ea
call fcn.00461660
call fcn.004616a0
mov rax, r9
mov qword [rsp + 0xd0], rax
nop word [rax + rax]
cmp rax, rdx
jge 0x52e1e3
movzx r8d, byte [rsi + rax]
cmp r8d, 0x80
jge 0x52e61d
lea r9, [rax + 1]
jmp 0x52e649
mov rbx, rdx
mov rcx, rax
mov rax, rsi
call fcn.00461820
mov rdx, qword [rsp + 0xc0]
mov rsi, qword [rsp + 0x168]
mov r8d, eax
mov r9, rbx
mov rax, qword [rsp + 0xd0]
lea r10d, [r8 - 0x20]
cmp r10d, 0x5e
jbe 0x52e5ef
cmp r8d, 9
je 0x52e5ef
jmp 0x52e1e0
lea rax, [0x00560ae0]
lea rbx, [0x005eeda0]
call fcn.00469240
inc rax
cmp rax, rdx
jge 0x52e845
movzx r8d, byte [rsi + rax]
cmp r8b, 0x22
je 0x52e68e
cmp r8b, 0x5c
jne 0x52e671
cmp rcx, rax
ja 0x52ea2b
mov rdi, rax
sub rdi, rcx
mov r8, rdi
neg r8
sar r8, 0x3f
and rcx, r8
mov r8, qword [rsp + 0xf8]
lea rbx, [rcx + rsi]
nop
test r8, r8
je 0x52e6ce
lea r9, [rsp + 0xf8]
cmp r8, r9
je 0x52e6de
jmp 0x52ea18
lea r8, [rsp + 0xf8]
mov qword [rsp + 0xf8], r8
mov qword [rsp + 0x50], rax
mov rcx, qword [rsp + 0x110]
mov r8, qword [rsp + 0x108]
lea r9, [r8 + rdi]
mov r10, qword [rsp + 0x100]
nop
cmp rcx, r9
jae 0x52e74d
mov qword [rsp + 0x88], rdi
mov qword [rsp + 0x128], rbx
mov qword [rsp + 0xd0], r8
mov rax, r10
mov rbx, r9
lea rsi, [0x00560b60]
call fcn.0046a960
mov rdi, qword [rsp + 0x88]
mov r8, qword [rsp + 0xd0]
mov r10, rax
mov r9, rbx
mov rbx, qword [rsp + 0x128]
mov qword [rsp + 0x180], r10
mov qword [rsp + 0xd0], r9
mov qword [rsp + 0xc8], rcx
lea rax, [r10 + r8]
mov rcx, rdi
call fcn.00471d20
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x108], rdx
mov rdx, qword [rsp + 0xc8]
mov qword [rsp + 0x110], rdx
mov rdx, qword [rsp + 0x180]
mov qword [rsp + 0x100], rdx
mov rdx, qword [rsp + 0xf8]
nop
test rdx, rdx
je 0x52e7c5
lea r8, [rsp + 0xf8]
cmp rdx, r8
je 0x52e7d5
nop dword [rax]
jmp 0x52ea05
lea rdx, [rsp + 0xf8]
mov qword [rsp + 0xf8], rdx
mov rcx, qword [rsp + 0x110]
mov rbx, qword [rsp + 0x108]
inc rbx
mov rax, qword [rsp + 0x100]
cmp rcx, rbx
jae 0x52e816
mov edi, 1
lea rsi, [0x00560b60]
call fcn.0046a960
mov qword [rsp + 0x110], rcx
mov qword [rsp + 0x100], rax
mov qword [rsp + 0x108], rbx
mov byte [rbx + rax - 1], 0x5c
mov rax, qword [rsp + 0x50]
mov rdx, qword [rsp + 0xc0]
mov rsi, qword [rsp + 0x168]
mov rcx, rax
nop dword [rax + rax]
jmp 0x52e671
cmp rcx, rdx
ja 0x52e9f8
sub rdx, rcx
mov rdi, rdx
neg rdx
sar rdx, 0x3f
and rcx, rdx
mov rdx, qword [rsp + 0xf8]
lea rbx, [rcx + rsi]
nop
test rdx, rdx
je 0x52e885
lea r8, [rsp + 0xf8]
cmp rdx, r8
je 0x52e895
nop dword [rax]
jmp 0x52e9e5
lea rdx, [rsp + 0xf8]
mov qword [rsp + 0xf8], rdx
mov rcx, qword [rsp + 0x110]
mov rdx, qword [rsp + 0x108]
lea r8, [rdx + rdi]
mov rax, qword [rsp + 0x100]
cmp rcx, r8
jae 0x52e8f8
mov qword [rsp + 0xd0], rdi
mov qword [rsp + 0x120], rbx
mov qword [rsp + 0xc8], rdx
mov rbx, r8
lea rsi, [0x00560b60]
call fcn.0046a960
mov rdx, qword [rsp + 0xc8]
mov rdi, qword [rsp + 0xd0]
mov r8, rbx
mov rbx, qword [rsp + 0x120]
mov qword [rsp + 0x180], rax
mov qword [rsp + 0xd0], rcx
mov qword [rsp + 0xc8], r8
add rdx, rax
mov rax, rdx
mov rcx, rdi
call fcn.00471d20
mov rdx, qword [rsp + 0xc8]
mov qword [rsp + 0x108], rdx
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x110], rdx
mov rdx, qword [rsp + 0x180]
mov qword [rsp + 0x100], rdx
mov rdx, qword [rsp + 0xf8]
nop
test rdx, rdx
je 0x52e96b
lea r8, [rsp + 0xf8]
cmp rdx, r8
je 0x52e97b
jmp 0x52e9ce
lea rdx, [rsp + 0xf8]
mov qword [rsp + 0xf8], rdx
mov rcx, qword [rsp + 0x110]
mov rbx, qword [rsp + 0x108]
inc rbx
mov rax, qword [rsp + 0x100]
cmp rcx, rbx
jae 0x52e9bc
mov edi, 1
lea rsi, [0x00560b60]
call fcn.0046a960
mov qword [rsp + 0x110], rcx
mov qword [rsp + 0x100], rax
mov qword [rsp + 0x108], rbx
mov byte [rbx + rax - 1], 0x22
jmp 0x52def6
lea rax, [0x00560ae0]
lea rbx, [0x005eeda0]
nop dword [rax]
call fcn.00469240
lea rax, [0x00560ae0]
lea rbx, [0x005eeda0]
call fcn.00469240
mov rax, rcx
mov rcx, rdx
nop
call fcn.00471400
lea rax, [0x00560ae0]
lea rbx, [0x005eeda0]
call fcn.00469240
lea rax, [0x00560ae0]
lea rbx, [0x005eeda0]
call fcn.00469240
mov rdx, rax
mov rax, rcx
mov rcx, rdx
call fcn.00471400
lea rax, [0x00560ae0]
lea rbx, [0x005eeda0]
call fcn.00469240
inc rax
cmp rax, rdx
jge 0x52ede5
mov qword [rsp + 0x48], rax
movzx r8d, byte [rsi + rax]
mov byte [rsp + 0x45], r8b
lea r9d, [r8 - 0x21]
cmp r9b, 0x5e
jb 0x52ea78
mov ebx, 1
jmp 0x52eae2
cmp r8b, 0x2a
jne 0x52ea85
mov ebx, 1
jmp 0x52eae2
cmp r8b, 0x27
jne 0x52ea92
mov ebx, 1
jmp 0x52eae2
cmp r8b, 0x25
jne 0x52ea9f
mov ebx, 1
jmp 0x52eae2
mov qword [rsp + 0x58], rcx
nop
nop
lea rax, [0x0059c11b]
mov ebx, 0xf
mov ecx, r8d
call fcn.0047e780
test rax, rax
setge dl
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x168]
movzx r8d, byte [rsp + 0x45]
mov ebx, edx
mov rdx, qword [rsp + 0xc0]
test bl, bl
je 0x52ea4c
cmp rcx, rax
ja 0x52ef5e
mov rdi, rax
sub rdi, rcx
mov r9, rdi
neg r9
sar r9, 0x3f
and rcx, r9
mov r9, qword [rsp + 0xf8]
lea rbx, [rsi + rcx]
nop
test r9, r9
je 0x52eb2a
lea r10, [rsp + 0xf8]
cmp r9, r10
je 0x52eb3a
jmp 0x52ef4b
lea r9, [rsp + 0xf8]
mov qword [rsp + 0xf8], r9
mov rcx, qword [rsp + 0x110]
mov r9, qword [rsp + 0x108]
lea r10, [r9 + rdi]
mov r11, qword [rsp + 0x100]
cmp rcx, r10
jae 0x52eba3
mov qword [rsp + 0x90], rdi
mov qword [rsp + 0x138], rbx
mov qword [rsp + 0xd0], r9
mov rax, r11
mov rbx, r10
lea rsi, [0x00560b60]
call fcn.0046a960
mov rdi, qword [rsp + 0x90]
mov r9, qword [rsp + 0xd0]
mov r11, rax
mov r10, rbx
mov rbx, qword [rsp + 0x138]
mov qword [rsp + 0xd0], rcx
mov qword [rsp + 0xc8], r10
mov qword [rsp + 0x180], r11
lea rax, [r11 + r9]
mov rcx, rdi
call fcn.00471d20
mov rdx, qword [rsp + 0xc8]
mov qword [rsp + 0x108], rdx
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x110], rdx
mov rdx, qword [rsp + 0x180]
mov qword [rsp + 0x100], rdx
mov rdx, qword [rsp + 0xf8]
nop
nop
test rdx, rdx
je 0x52ec18
lea r8, [rsp + 0xf8]
cmp rdx, r8
je 0x52ec28
jmp 0x52ef38
lea rdx, [rsp + 0xf8]
mov qword [rsp + 0xf8], rdx
mov rcx, qword [rsp + 0x110]
mov rbx, qword [rsp + 0x108]
inc rbx
mov rax, qword [rsp + 0x100]
cmp rcx, rbx
jae 0x52ec69
mov edi, 1
lea rsi, [0x00560b60]
call fcn.0046a960
mov qword [rsp + 0x110], rcx
mov qword [rsp + 0x100], rax
mov qword [rsp + 0x108], 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 + 0xf8]
lea r10, [0x0059c4ac]
movzx edx, byte [r10 + rdx]
nop
test r9, r9
je 0x52ecb0
lea r11, [rsp + 0xf8]
cmp r9, r11
je 0x52ecc0
jmp 0x52ef25
lea r9, [rsp + 0xf8]
mov qword [rsp + 0xf8], r9
mov rcx, qword [rsp + 0x110]
mov rbx, qword [rsp + 0x108]
inc rbx
mov rax, qword [rsp + 0x100]
nop dword [rax + rax]
cmp rcx, rbx
jae 0x52ed1c
mov byte [rsp + 0x47], dl
mov edi, 1
lea rsi, [0x00560b60]
call fcn.0046a960
mov qword [rsp + 0x110], rcx
mov qword [rsp + 0x100], rax
movzx edx, byte [rsp + 0x47]
movzx r8d, byte [rsp + 0x45]
lea r10, [0x0059c4ac]
mov qword [rsp + 0x108], rbx
mov byte [rbx + rax - 1], dl
and r8d, 0xf
mov rdx, qword [rsp + 0xf8]
movzx r8d, byte [r8 + r10]
nop
test rdx, rdx
je 0x52ed51
lea r9, [rsp + 0xf8]
cmp rdx, r9
je 0x52ed61
jmp 0x52ef11
lea rdx, [rsp + 0xf8]
mov qword [rsp + 0xf8], rdx
mov rcx, qword [rsp + 0x110]
mov rbx, qword [rsp + 0x108]
inc rbx
mov rax, qword [rsp + 0x100]
nop dword [rax]
cmp rcx, rbx
jae 0x52edb1
mov byte [rsp + 0x46], r8b
mov edi, 1
lea rsi, [0x00560b60]
call fcn.0046a960
mov qword [rsp + 0x110], rcx
mov qword [rsp + 0x100], rax
movzx r8d, byte [rsp + 0x46]
mov qword [rsp + 0x108], rbx
mov byte [rbx + rax - 1], r8b
mov rcx, qword [rsp + 0x48]
lea rdx, [rcx + 1]
mov rax, rcx
mov rsi, qword [rsp + 0x168]
mov rcx, rdx
mov rdx, qword [rsp + 0xc0]
nop dword [rax]
jmp 0x52ea4c
cmp rcx, rdx
ja 0x52ef06
sub rdx, rcx
mov rdi, rdx
neg rdx
sar rdx, 0x3f
and rcx, rdx
mov rdx, qword [rsp + 0xf8]
lea rbx, [rsi + rcx]
nop
test rdx, rdx
je 0x52ee25
lea r8, [rsp + 0xf8]
cmp rdx, r8
je 0x52ee35
nop dword [rax]
jmp 0x52eef3
lea rdx, [rsp + 0xf8]
mov qword [rsp + 0xf8], rdx
mov rcx, qword [rsp + 0x110]
mov rdx, qword [rsp + 0x108]
lea r8, [rdi + rdx]
mov rax, qword [rsp + 0x100]
cmp rcx, r8
jae 0x52ee98
mov qword [rsp + 0xd0], rdx
mov qword [rsp + 0xc8], rdi
mov qword [rsp + 0x130], rbx
mov rbx, r8
lea rsi, [0x00560b60]
call fcn.0046a960
mov rdx, qword [rsp + 0xd0]
mov rdi, qword [rsp + 0xc8]
mov r8, rbx
mov rbx, qword [rsp + 0x130]
mov qword [rsp + 0xd0], r8
mov qword [rsp + 0xc8], rcx
mov qword [rsp + 0x180], rax
add rdx, rax
mov rax, rdx
mov rcx, rdi
call fcn.00471d20
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x108], rdx
mov rdx, qword [rsp + 0xc8]
mov qword [rsp + 0x110], rdx
mov rdx, qword [rsp + 0x180]
mov qword [rsp + 0x100], rdx
jmp 0x52def6
lea rax, [0x00560ae0]
lea rbx, [0x005eeda0]
call fcn.00469240
mov rax, rcx
mov rcx, rdx
call fcn.00471400
lea rax, [0x00560ae0]
lea rbx, [0x005eeda0]
nop
call fcn.00469240
lea rax, [0x00560ae0]
lea rbx, [0x005eeda0]
call fcn.00469240
lea rax, [0x00560ae0]
lea rbx, [0x005eeda0]
call fcn.00469240
lea rax, [0x00560ae0]
lea rbx, [0x005eeda0]
call fcn.00469240
mov rdx, rax
mov rax, rcx
mov rcx, rdx
call fcn.00471400
lea rax, [0x00560ae0]
lea rbx, [0x005eeda0]
call fcn.00469240
lea rax, [0x00560ae0]
lea rbx, [0x005eeda0]
call fcn.00469240
lea rax, [0x00560ae0]
lea rbx, [0x005eeda0]
call fcn.00469240
lea rax, [0x00560ae0]
lea rbx, [0x005eeda0]
call fcn.00469240
lea rax, [0x00560ae0]
lea rbx, [0x005eeda0]
call fcn.00469240
lea rax, [0x00560ae0]
lea rbx, [0x005eeda0]
call fcn.00469240
lea rax, [0x00560ae0]
lea rbx, [0x005eeda0]
call fcn.00469240
lea rax, [0x00560ae0]
lea rbx, [0x005eeda0]
nop
call fcn.00469240
lea rax, [0x00560ae0]
lea rbx, [0x005eeda0]
call fcn.00469240
lea rax, [0x00560ae0]
lea rbx, [0x005eeda0]
call fcn.00469240
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
nop dword [rax + rax]
call fcn.0046f060
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
jmp fcn.0052d860