Function at 0x53e5a0
Capabilities:
Encode data using base64

Disassembly:
lea r12, [rsp - 0x170]
cmp r12, qword [r14 + 0x10]
jbe 0x53fd6c
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 + 0x148], xmm15
movups xmmword [rsp + 0x158], xmm15
mov edi, 1
lea rcx, [0x006fef7e]
call fcn.004d3a20
nop dword [rax + rax]
test sil, sil
je 0x53e957
mov qword [rsp + 0xe0], rcx
mov qword [rsp + 0x48], rdi
mov qword [rsp + 0x60], rbx
mov qword [rsp + 0xe8], rax
test rbx, rbx
jne 0x53e62c
xor edx, edx
jmp 0x53e660
lea rcx, [0x007331c0]
call fcn.004d25e0
test rax, rax
setl dl
mov rax, qword [rsp + 0xe8]
mov rcx, qword [rsp + 0xe0]
mov rbx, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x48]
nop dword [rax + rax]
test dl, dl
je 0x53e94a
test rdi, rdi
jne 0x53e671
xor edx, edx
jmp 0x53e6a5
mov rax, rcx
mov rbx, rdi
lea rcx, [0x007331c0]
nop
call fcn.004d25e0
test rax, rax
setl dl
mov rax, qword [rsp + 0xe8]
mov rcx, qword [rsp + 0xe0]
mov rbx, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x48]
test dl, dl
je 0x53e94a
call fcn.004d1f80
mov rcx, qword [rsp + 0x148]
nop
nop
nop dword [rax]
test rcx, rcx
je 0x53e6d7
lea rdx, [rsp + 0x148]
cmp rcx, rdx
je 0x53e6e7
jmp 0x53fd58
lea rdx, [rsp + 0x148]
mov qword [rsp + 0x148], rdx
mov rcx, qword [rsp + 0x160]
mov rdx, qword [rsp + 0x158]
lea r8, [rbx + rdx]
mov r9, qword [rsp + 0x150]
cmp rcx, r8
jae 0x53e753
mov qword [rsp + 0xd8], rdx
mov qword [rsp + 0x98], rbx
mov qword [rsp + 0x130], rax
mov rax, r9
mov rdi, rbx
lea rsi, [0x0069e040]
mov rbx, r8
call fcn.0044f4e0
mov rdx, qword [rsp + 0xd8]
mov r9, rax
mov r8, rbx
mov rax, qword [rsp + 0x130]
mov rbx, qword [rsp + 0x98]
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.0046cf80
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x158], rdx
mov rdx, qword [rsp + 0xd8]
mov qword [rsp + 0x160], rdx
mov rdx, qword [rsp + 0x180]
mov qword [rsp + 0x150], rdx
mov rdx, qword [rsp + 0x148]
nop
nop
nop
test rdx, rdx
je 0x53e7d7
lea r8, [rsp + 0x148]
cmp rdx, r8
je 0x53e7e7
jmp 0x53fd45
lea rdx, [rsp + 0x148]
mov qword [rsp + 0x148], rdx
mov rcx, qword [rsp + 0x160]
mov rbx, qword [rsp + 0x158]
inc rbx
mov rax, qword [rsp + 0x150]
cmp rcx, rbx
jae 0x53e828
mov edi, 1
lea rsi, [0x0069e040]
call fcn.0044f4e0
mov qword [rsp + 0x160], rcx
mov qword [rsp + 0x150], rax
mov qword [rsp + 0x158], rbx
mov byte [rbx + rax - 1], 0x2f
mov rax, qword [rsp + 0xe0]
mov rbx, qword [rsp + 0x48]
call fcn.004d1f80
mov rcx, qword [rsp + 0x148]
nop
test rcx, rcx
je 0x53e86a
lea rdx, [rsp + 0x148]
nop dword [rax]
cmp rcx, rdx
je 0x53e87a
jmp 0x53fd31
lea rdx, [rsp + 0x148]
mov qword [rsp + 0x148], rdx
mov rcx, qword [rsp + 0x160]
mov rdx, qword [rsp + 0x158]
lea r8, [rdx + rbx]
mov r9, qword [rsp + 0x150]
cmp rcx, r8
jae 0x53e8e6
mov qword [rsp + 0x90], rbx
mov qword [rsp + 0x128], rax
mov qword [rsp + 0xd8], rdx
mov rax, r9
mov rdi, rbx
lea rsi, [0x0069e040]
mov rbx, r8
call fcn.0044f4e0
mov rdx, qword [rsp + 0xd8]
mov r9, rax
mov r8, rbx
mov rax, qword [rsp + 0x128]
mov rbx, qword [rsp + 0x90]
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.0046cf80
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x158], rdx
mov rdx, qword [rsp + 0xd8]
mov qword [rsp + 0x160], rdx
mov rdx, qword [rsp + 0x180]
mov qword [rsp + 0x150], rdx
jmp 0x53ea9a
xor eax, eax
xor ebx, ebx
add rsp, 0x1e8
pop rbp
ret
mov rbx, qword [rsp + 0x200]
nop
test rbx, rbx
je 0x53eb23
mov rax, qword [rsp + 0x1f8]
lea rcx, [0x007331c0]
call fcn.004d25e0
nop dword [rax]
test rax, rax
jge 0x53eb23
mov rax, qword [rsp + 0x1f8]
mov rbx, qword [rsp + 0x200]
call fcn.004d1f80
mov rcx, qword [rsp + 0x148]
nop
nop
test rcx, rcx
je 0x53e9bf
lea rdx, [rsp + 0x148]
cmp rcx, rdx
je 0x53e9cf
jmp 0x53fd1e
lea rdx, [rsp + 0x148]
mov qword [rsp + 0x148], rdx
mov rcx, qword [rsp + 0x160]
mov rdx, qword [rsp + 0x158]
lea r8, [rdx + rbx]
mov r9, qword [rsp + 0x150]
cmp rcx, r8
jae 0x53ea3b
mov qword [rsp + 0xa0], rbx
mov qword [rsp + 0x138], rax
mov qword [rsp + 0xd8], rdx
mov rax, r9
mov rdi, rbx
lea rsi, [0x0069e040]
mov rbx, r8
call fcn.0044f4e0
mov rdx, qword [rsp + 0xd8]
mov r9, rax
mov r8, rbx
mov rax, qword [rsp + 0x138]
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.0046cf80
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x158], rdx
mov rdx, qword [rsp + 0xd8]
mov qword [rsp + 0x160], rdx
mov rdx, qword [rsp + 0x180]
mov qword [rsp + 0x150], rdx
mov rdx, qword [rsp + 0x208]
test rdx, rdx
je 0x53eaac
mov rsi, qword [rdx]
jmp 0x53eaae
xor esi, esi
mov qword [rsp + 0xc0], rsi
lea rax, [0x0069dfc0]
xor ebx, ebx
mov rcx, rsi
call fcn.0044f400
mov qword [rsp + 0x178], rax
lea rdi, [rsp + 0x188]
lea rdi, [rdi - 0x20]
nop dword [rax + rax]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.0046c8ab
mov rbp, qword [rbp]
mov rbx, qword [rsp + 0x208]
lea rcx, [rsp + 0x188]
lea rax, [0x006ae1e0]
call fcn.004108c0
mov rax, qword [rsp + 0xc0]
mov rcx, qword [rsp + 0x178]
xor edx, edx
jmp 0x53eb61
xor eax, eax
xor ebx, ebx
add rsp, 0x1e8
pop rbp
ret
mov qword [rsp + 0x168], rcx
mov qword [rcx + rsi], rdx
lea rax, [rsp + 0x188]
call fcn.00410ae0
mov rax, qword [rsp + 0xc0]
mov rcx, qword [rsp + 0x168]
mov rdx, qword [rsp + 0xb8]
mov r8, qword [rsp + 0x188]
test r8, r8
je 0x53ec05
lea rbx, [rdx + 1]
mov rdx, qword [r8]
mov r8, qword [r8 + 8]
nop dword [rax]
cmp rax, rbx
jae 0x53ebc2
mov qword [rsp + 0xf8], rdx
mov qword [rsp + 0x70], r8
mov edi, 1
lea rsi, [0x0069dfc0]
mov rdx, rax
mov rax, rcx
mov rcx, rdx
call fcn.0044f4e0
mov rdx, qword [rsp + 0xf8]
mov r8, qword [rsp + 0x70]
mov rsi, rcx
mov rcx, rax
mov rax, rsi
mov qword [rsp + 0xb8], rbx
mov qword [rsp + 0xc0], rax
lea rsi, [rbx - 1]
shl rsi, 4
mov qword [rcx + rsi + 8], r8
cmp dword [0x00a78ee0], 0
je 0x53eb30
call fcn.0046c200
mov qword [r11], rdx
mov rdi, qword [rcx + rsi]
mov qword [r11 + 8], rdi
nop dword [rax]
jmp 0x53eb30
mov qword [rsp + 0xb8], rdx
mov qword [rsp + 0x170], rcx
mov rbx, rdx
mov rdx, rax
mov rax, rcx
mov rcx, rdx
call fcn.004985e0
mov rdx, qword [rsp + 0x170]
mov rax, qword [rsp + 0xb8]
jmp 0x53ec4f
mov rdx, qword [rsp + 0x178]
add rdx, 0x10
mov rax, qword [rsp + 0xd8]
dec rax
test rax, rax
jle 0x53f2f6
mov qword [rsp + 0xd8], rax
mov qword [rsp + 0x178], rdx
mov rdi, qword [rdx + 8]
mov qword [rsp + 0x68], rdi
mov rcx, qword [rdx]
mov qword [rsp + 0xf0], rcx
lea rax, [0x006ae1e0]
mov rbx, qword [rsp + 0x208]
call fcn.00413780
mov rdx, qword [rsp + 0x148]
mov rsi, qword [rax + 8]
mov r8, qword [rax]
nop
nop
test rdx, rdx
je 0x53ecb8
lea r9, [rsp + 0x148]
cmp rdx, r9
je 0x53ecc8
jmp 0x53fd0b
lea rdx, [rsp + 0x148]
mov qword [rsp + 0x148], rdx
mov qword [rsp + 0x140], r8
mov qword [rsp + 0xa8], rsi
mov rcx, qword [rsp + 0x160]
mov rbx, qword [rsp + 0x158]
inc rbx
mov rax, qword [rsp + 0x150]
cmp rcx, rbx
jae 0x53ed29
mov edi, 1
lea rsi, [0x0069e040]
call fcn.0044f4e0
mov qword [rsp + 0x160], rcx
mov qword [rsp + 0x150], rax
mov rsi, qword [rsp + 0xa8]
mov r8, qword [rsp + 0x140]
mov qword [rsp + 0x158], rbx
mov byte [rbx + rax - 1], 0x3b
mov rdx, qword [rsp + 0x148]
nop
nop
test rdx, rdx
je 0x53ed57
lea r9, [rsp + 0x148]
cmp rdx, r9
je 0x53ed67
jmp 0x53fcf8
lea rdx, [rsp + 0x148]
mov qword [rsp + 0x148], rdx
mov rcx, qword [rsp + 0x160]
mov rbx, qword [rsp + 0x158]
inc rbx
mov rax, qword [rsp + 0x150]
cmp rcx, rbx
jae 0x53edb8
mov edi, 1
lea rsi, [0x0069e040]
call fcn.0044f4e0
mov qword [rsp + 0x160], rcx
mov qword [rsp + 0x150], rax
mov rsi, qword [rsp + 0xa8]
mov r8, qword [rsp + 0x140]
mov qword [rsp + 0x158], rbx
mov byte [rbx + rax - 1], 0x20
mov rbx, qword [rsp + 0x68]
test rbx, rbx
je 0x53f2e9
mov rax, qword [rsp + 0xf0]
lea rcx, [0x007331c0]
call fcn.004d25e0
test rax, rax
jge 0x53f2e9
mov rax, qword [rsp + 0xf0]
mov rbx, qword [rsp + 0x68]
nop dword [rax]
call fcn.004d1f80
mov rcx, qword [rsp + 0x148]
nop
nop
test rcx, rcx
je 0x53ee2a
lea rdx, [rsp + 0x148]
nop dword [rax]
cmp rcx, rdx
je 0x53ee3a
jmp 0x53fce5
lea rdx, [rsp + 0x148]
mov qword [rsp + 0x148], rdx
mov rcx, qword [rsp + 0x160]
mov rdx, qword [rsp + 0x158]
lea r8, [rbx + rdx]
mov r9, qword [rsp + 0x150]
cmp rcx, r8
jae 0x53eea6
mov qword [rsp + 0xd0], rdx
mov qword [rsp + 0x88], rbx
mov qword [rsp + 0x120], rax
mov rax, r9
mov rdi, rbx
lea rsi, [0x0069e040]
mov rbx, r8
call fcn.0044f4e0
mov rdx, qword [rsp + 0xd0]
mov r9, rax
mov r8, rbx
mov rax, qword [rsp + 0x120]
mov rbx, qword [rsp + 0x88]
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
call fcn.0046cf80
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x158], rdx
mov rdx, qword [rsp + 0xc8]
mov qword [rsp + 0x160], rdx
mov rdx, qword [rsp + 0x180]
mov qword [rsp + 0x150], rdx
nop
mov rdx, qword [rsp + 0xa8]
mov rsi, qword [rsp + 0x140]
xor eax, eax
jmp 0x53f332
cmp rax, rdx
jge 0x53efc7
mov r8, qword [rsp + 0x148]
nop
nop
test r8, r8
je 0x53ef4a
lea r9, [rsp + 0x148]
cmp r8, r9
je 0x53ef5a
jmp 0x53fcd2
lea r8, [rsp + 0x148]
mov qword [rsp + 0x148], r8
mov rcx, qword [rsp + 0x160]
mov rbx, qword [rsp + 0x158]
inc rbx
mov r8, qword [rsp + 0x150]
cmp rcx, rbx
jae 0x53efb9
mov rax, r8
mov edi, 1
lea rsi, [0x0069e040]
call fcn.0044f4e0
mov qword [rsp + 0x160], rcx
mov qword [rsp + 0x150], rax
mov rdx, qword [rsp + 0xa8]
mov rsi, qword [rsp + 0x140]
mov r8, rax
mov rax, qword [rsp + 0xd0]
mov qword [rsp + 0x158], rbx
mov byte [rbx + r8 - 1], 0x2a
mov r8, qword [rsp + 0x148]
nop
nop
test r8, r8
je 0x53efea
lea r9, [rsp + 0x148]
nop
cmp r8, r9
je 0x53effa
jmp 0x53fcbf
lea r8, [rsp + 0x148]
mov qword [rsp + 0x148], r8
mov rcx, qword [rsp + 0x160]
mov rbx, qword [rsp + 0x158]
inc rbx
mov r8, qword [rsp + 0x150]
cmp rcx, rbx
jb 0x53f01f
cmp rax, rdx
jmp 0x53f064
mov rax, r8
mov edi, 1
lea rsi, [0x0069e040]
call fcn.0044f4e0
mov qword [rsp + 0x160], rcx
mov qword [rsp + 0x150], rax
mov rdx, qword [rsp + 0xd0]
mov rcx, qword [rsp + 0xa8]
cmp rdx, rcx
mov rdx, rcx
mov rsi, qword [rsp + 0x140]
mov r8, rax
mov qword [rsp + 0x158], rbx
mov byte [rbx + r8 - 1], 0x3d
jge 0x53f130
mov r8, qword [rsp + 0x148]
nop
test r8, r8
je 0x53f098
lea r9, [rsp + 0x148]
cmp r8, r9
je 0x53f0a8
jmp 0x53fcac
lea r8, [rsp + 0x148]
mov qword [rsp + 0x148], r8
mov rbx, qword [rsp + 0x158]
lea r8, [rbx + 7]
mov rcx, qword [rsp + 0x160]
mov rax, qword [rsp + 0x150]
cmp rcx, r8
jae 0x53f100
mov qword [rsp + 0xd0], rbx
mov rbx, r8
mov edi, 7
lea rsi, [0x0069e040]
call fcn.0044f4e0
mov rdx, qword [rsp + 0xa8]
mov rsi, qword [rsp + 0x140]
mov r8, rbx
mov rbx, qword [rsp + 0xd0]
mov dword [rax + rbx], 0x2d667475
mov dword [rax + rbx + 3], 0x2727382d
mov qword [rsp + 0x158], r8
mov qword [rsp + 0x160], rcx
mov qword [rsp + 0x150], rax
xor eax, eax
xor ecx, ecx
jmp 0x53f780
test rdx, rdx
jne 0x53f139
xor eax, eax
jmp 0x53f163
mov rax, rsi
mov rbx, rdx
lea rcx, [0x007331c0]
call fcn.004d25e0
test rax, rax
setl dl
mov rsi, qword [rsp + 0x140]
mov eax, edx
mov rdx, qword [rsp + 0xa8]
test al, al
jne 0x53f205
mov r8, qword [rsp + 0x148]
nop
test r8, r8
je 0x53f18b
lea r9, [rsp + 0x148]
cmp r8, r9
je 0x53f19b
jmp 0x53f76a
lea r8, [rsp + 0x148]
mov qword [rsp + 0x148], r8
mov rcx, qword [rsp + 0x160]
mov rbx, qword [rsp + 0x158]
inc rbx
mov rax, qword [rsp + 0x150]
cmp rcx, rbx
jae 0x53f1ec
mov edi, 1
lea rsi, [0x0069e040]
call fcn.0044f4e0
mov qword [rsp + 0x160], rcx
mov qword [rsp + 0x150], rax
mov rdx, qword [rsp + 0xa8]
mov rsi, qword [rsp + 0x140]
mov qword [rsp + 0x158], rbx
mov byte [rbx + rax - 1], 0x22
xor eax, eax
xor ecx, ecx
nop dword [rax]
jmp 0x53f3b4
mov r8, qword [rsp + 0x148]
nop
nop
test r8, r8
je 0x53f22a
lea r9, [rsp + 0x148]
nop dword [rax]
cmp r8, r9
je 0x53f23a
jmp 0x53f39e
lea r8, [rsp + 0x148]
mov qword [rsp + 0x148], r8
mov rcx, qword [rsp + 0x160]
mov r8, qword [rsp + 0x158]
lea rbx, [rdx + r8]
mov rax, qword [rsp + 0x150]
cmp rcx, rbx
jae 0x53f28a
mov qword [rsp + 0xd0], r8
mov rdi, rdx
lea rsi, [0x0069e040]
call fcn.0044f4e0
mov rdx, qword [rsp + 0xa8]
mov rsi, qword [rsp + 0x140]
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.0046cf80
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x158], rdx
mov rdx, qword [rsp + 0xc8]
mov qword [rsp + 0x160], rdx
mov rdx, qword [rsp + 0x180]
mov qword [rsp + 0x150], rdx
jmp 0x53ec38
xor eax, eax
xor ebx, ebx
add rsp, 0x1e8
pop rbp
ret
mov rbx, qword [rsp + 0x158]
mov rax, qword [rsp + 0x150]
mov rcx, rax
neg rcx
nop
cmp rbx, rcx
ja 0x53f320
add rsp, 0x1e8
pop rbp
ret
test rax, rax
je 0x53f32a
call fcn.00462b40
call fcn.00462b80
mov rax, r9
mov qword [rsp + 0xd0], rax
nop word [rax + rax]
cmp rax, rdx
jge 0x53ef23
movzx r8d, byte [rsi + rax]
cmp r8d, 0x80
jge 0x53f35d
lea r9, [rax + 1]
jmp 0x53f389
mov rbx, rdx
mov rcx, rax
mov rax, rsi
call fcn.00462d00
mov rdx, qword [rsp + 0xa8]
mov rsi, qword [rsp + 0x140]
mov r8d, eax
mov r9, rbx
mov rax, qword [rsp + 0xd0]
lea r10d, [r8 - 0x20]
cmp r10d, 0x5e
jbe 0x53f32f
cmp r8d, 9
je 0x53f32f
jmp 0x53ef20
lea rax, [0x0069dfc0]
lea rbx, [0x00782460]
call fcn.00438720
inc rax
cmp rax, rdx
jge 0x53f576
movzx r8d, byte [rsi + rax]
cmp r8b, 0x22
je 0x53f3ce
cmp r8b, 0x5c
jne 0x53f3b1
cmp rcx, rax
ja 0x53f75c
mov rdi, rax
sub rdi, rcx
mov r8, rdi
neg r8
sar r8, 0x3f
and rcx, r8
mov r8, qword [rsp + 0x148]
lea rbx, [rcx + rsi]
nop
test r8, r8
je 0x53f40e
lea r9, [rsp + 0x148]
cmp r8, r9
je 0x53f41e
jmp 0x53f749
lea r8, [rsp + 0x148]
mov qword [rsp + 0x148], r8
mov qword [rsp + 0x50], rax
mov rcx, qword [rsp + 0x160]
mov r8, qword [rsp + 0x158]
lea r9, [r8 + rdi]
mov r10, qword [rsp + 0x150]
nop
cmp rcx, r9
jae 0x53f487
mov qword [rsp + 0x78], rdi
mov qword [rsp + 0x108], rbx
mov qword [rsp + 0xd0], r8
mov rax, r10
mov rbx, r9
lea rsi, [0x0069e040]
call fcn.0044f4e0
mov rdi, qword [rsp + 0x78]
mov r8, qword [rsp + 0xd0]
mov r10, rax
mov r9, rbx
mov rbx, qword [rsp + 0x108]
mov qword [rsp + 0x180], r10
mov qword [rsp + 0xd0], r9
mov qword [rsp + 0xc8], rcx
lea rax, [r10 + r8]
mov rcx, rdi
call fcn.0046cf80
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x158], rdx
mov rdx, qword [rsp + 0xc8]
mov qword [rsp + 0x160], rdx
mov rdx, qword [rsp + 0x180]
mov qword [rsp + 0x150], rdx
mov rdx, qword [rsp + 0x148]
nop
test rdx, rdx
je 0x53f4fb
lea r8, [rsp + 0x148]
cmp rdx, r8
je 0x53f50b
jmp 0x53f736
lea rdx, [rsp + 0x148]
mov qword [rsp + 0x148], rdx
mov rcx, qword [rsp + 0x160]
mov rbx, qword [rsp + 0x158]
inc rbx
mov rax, qword [rsp + 0x150]
cmp rcx, rbx
jae 0x53f54c
mov edi, 1
lea rsi, [0x0069e040]
call fcn.0044f4e0
mov qword [rsp + 0x160], rcx
mov qword [rsp + 0x150], rax
mov qword [rsp + 0x158], rbx
mov byte [rbx + rax - 1], 0x5c
mov rax, qword [rsp + 0x50]
mov rdx, qword [rsp + 0xa8]
mov rsi, qword [rsp + 0x140]
mov rcx, rax
jmp 0x53f3b1
cmp rcx, rdx
ja 0x53f72b
sub rdx, rcx
mov rdi, rdx
neg rdx
sar rdx, 0x3f
and rcx, rdx
mov rdx, qword [rsp + 0x148]
lea rbx, [rcx + rsi]
nop
nop dword [rax]
test rdx, rdx
je 0x53f5b7
lea r8, [rsp + 0x148]
cmp rdx, r8
je 0x53f5c7
jmp 0x53f718
lea rdx, [rsp + 0x148]
mov qword [rsp + 0x148], rdx
mov rcx, qword [rsp + 0x160]
mov rdx, qword [rsp + 0x158]
lea r8, [rdx + rdi]
mov rax, qword [rsp + 0x150]
cmp rcx, r8
jae 0x53f62a
mov qword [rsp + 0xd0], rdi
mov qword [rsp + 0x100], rbx
mov qword [rsp + 0xc8], rdx
mov rbx, r8
lea rsi, [0x0069e040]
call fcn.0044f4e0
mov rdx, qword [rsp + 0xc8]
mov rdi, qword [rsp + 0xd0]
mov r8, rbx
mov rbx, qword [rsp + 0x100]
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.0046cf80
mov rdx, qword [rsp + 0xc8]
mov qword [rsp + 0x158], rdx
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x160], rdx
mov rdx, qword [rsp + 0x180]
mov qword [rsp + 0x150], rdx
mov rdx, qword [rsp + 0x148]
nop
test rdx, rdx
je 0x53f69d
lea r8, [rsp + 0x148]
cmp rdx, r8
je 0x53f6ad
jmp 0x53f705
lea rdx, [rsp + 0x148]
mov qword [rsp + 0x148], rdx
mov rcx, qword [rsp + 0x160]
mov rbx, qword [rsp + 0x158]
inc rbx
mov rax, qword [rsp + 0x150]
cmp rcx, rbx
jae 0x53f6ee
mov edi, 1
lea rsi, [0x0069e040]
call fcn.0044f4e0
mov qword [rsp + 0x160], rcx
mov qword [rsp + 0x150], rax
mov qword [rsp + 0x158], rbx
mov byte [rbx + rax - 1], 0x22
nop dword [rax + rax]
jmp 0x53ec38
lea rax, [0x0069dfc0]
lea rbx, [0x00782460]
call fcn.00438720
lea rax, [0x0069dfc0]
lea rbx, [0x00782460]
call fcn.00438720
mov rax, rcx
mov rcx, rdx
call fcn.0046c660
lea rax, [0x0069dfc0]
lea rbx, [0x00782460]
call fcn.00438720
lea rax, [0x0069dfc0]
lea rbx, [0x00782460]
call fcn.00438720
mov rdx, rax
mov rax, rcx
mov rcx, rdx
call fcn.0046c660
lea rax, [0x0069dfc0]
lea rbx, [0x00782460]
call fcn.00438720
inc rax
cmp rax, rdx
jge 0x53fb25
mov qword [rsp + 0xb0], rax
movzx r8d, byte [rsi + rax]
mov byte [rsp + 0x45], r8b
lea r9d, [r8 - 0x21]
nop
cmp r9b, 0x5e
jb 0x53f7ad
mov ebx, 1
jmp 0x53f820
cmp r8b, 0x2a
jne 0x53f7c0
mov ebx, 1
jmp 0x53f820
cmp r8b, 0x27
jne 0x53f7cd
mov ebx, 1
jmp 0x53f820
cmp r8b, 0x25
jne 0x53f7da
mov ebx, 1
jmp 0x53f820
mov qword [rsp + 0x58], rcx
nop
nop
lea rax, [0x00702e9f]
mov ebx, 0xf
mov ecx, r8d
call fcn.004d10a0
test rax, rax
setge dl
mov rax, qword [rsp + 0xb0]
mov rcx, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x140]
movzx r8d, byte [rsp + 0x45]
mov ebx, edx
mov rdx, qword [rsp + 0xa8]
test bl, bl
je 0x53f77d
cmp rcx, rax
ja 0x53fc9e
mov rdi, rax
sub rdi, rcx
mov r9, rdi
neg r9
sar r9, 0x3f
and rcx, r9
mov r9, qword [rsp + 0x148]
lea rbx, [rsi + rcx]
nop
test r9, r9
je 0x53f86a
lea r10, [rsp + 0x148]
nop
cmp r9, r10
je 0x53f87a
jmp 0x53fc8b
lea r9, [rsp + 0x148]
mov qword [rsp + 0x148], r9
mov rcx, qword [rsp + 0x160]
mov r9, qword [rsp + 0x158]
lea r10, [r9 + rdi]
mov r11, qword [rsp + 0x150]
cmp rcx, r10
jae 0x53f8e3
mov qword [rsp + 0x80], rdi
mov qword [rsp + 0x118], rbx
mov qword [rsp + 0xd0], r9
mov rax, r11
mov rbx, r10
lea rsi, [0x0069e040]
call fcn.0044f4e0
mov rdi, qword [rsp + 0x80]
mov r9, qword [rsp + 0xd0]
mov r11, rax
mov r10, rbx
mov rbx, qword [rsp + 0x118]
mov qword [rsp + 0xd0], rcx
mov qword [rsp + 0xc8], r10
mov qword [rsp + 0x180], r11
lea rax, [r11 + r9]
mov rcx, rdi
call fcn.0046cf80
mov rdx, qword [rsp + 0xc8]
mov qword [rsp + 0x158], rdx
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x160], rdx
mov rdx, qword [rsp + 0x180]
mov qword [rsp + 0x150], rdx
mov rdx, qword [rsp + 0x148]
nop
nop
test rdx, rdx
je 0x53f958
lea r8, [rsp + 0x148]
cmp rdx, r8
je 0x53f968
jmp 0x53fc78
lea rdx, [rsp + 0x148]
mov qword [rsp + 0x148], rdx
mov rcx, qword [rsp + 0x160]
mov rbx, qword [rsp + 0x158]
inc rbx
mov rax, qword [rsp + 0x150]
cmp rcx, rbx
jae 0x53f9a9
mov edi, 1
lea rsi, [0x0069e040]
call fcn.0044f4e0
mov qword [rsp + 0x160], rcx
mov qword [rsp + 0x150], rax
mov qword [rsp + 0x158], 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 + 0x148]
lea r10, [0x0070311e]
movzx edx, byte [r10 + rdx]
nop
test r9, r9
je 0x53f9f0
lea r11, [rsp + 0x148]
cmp r9, r11
je 0x53fa00
jmp 0x53fc65
lea r9, [rsp + 0x148]
mov qword [rsp + 0x148], r9
mov rcx, qword [rsp + 0x160]
mov rbx, qword [rsp + 0x158]
inc rbx
mov rax, qword [rsp + 0x150]
nop dword [rax + rax]
cmp rcx, rbx
jae 0x53fa5c
mov byte [rsp + 0x47], dl
mov edi, 1
lea rsi, [0x0069e040]
call fcn.0044f4e0
mov qword [rsp + 0x160], rcx
mov qword [rsp + 0x150], rax
movzx edx, byte [rsp + 0x47]
movzx r8d, byte [rsp + 0x45]
lea r10, [0x0070311e]
mov qword [rsp + 0x158], rbx
mov byte [rbx + rax - 1], dl
and r8d, 0xf
mov rdx, qword [rsp + 0x148]
movzx r8d, byte [r8 + r10]
nop
test rdx, rdx
je 0x53fa91
lea r9, [rsp + 0x148]
cmp rdx, r9
je 0x53faa1
jmp 0x53fc51
lea rdx, [rsp + 0x148]
mov qword [rsp + 0x148], rdx
mov rcx, qword [rsp + 0x160]
mov rbx, qword [rsp + 0x158]
inc rbx
mov rax, qword [rsp + 0x150]
nop dword [rax]
cmp rcx, rbx
jae 0x53faf1
mov byte [rsp + 0x46], r8b
mov edi, 1
lea rsi, [0x0069e040]
call fcn.0044f4e0
mov qword [rsp + 0x160], rcx
mov qword [rsp + 0x150], rax
movzx r8d, byte [rsp + 0x46]
mov qword [rsp + 0x158], rbx
mov byte [rbx + rax - 1], r8b
mov rcx, qword [rsp + 0xb0]
lea rdx, [rcx + 1]
mov rax, rcx
mov rsi, qword [rsp + 0x140]
mov rcx, rdx
mov rdx, qword [rsp + 0xa8]
jmp 0x53f77d
cmp rcx, rdx
ja 0x53fc46
sub rdx, rcx
mov rdi, rdx
neg rdx
sar rdx, 0x3f
and rcx, rdx
mov rdx, qword [rsp + 0x148]
lea rbx, [rsi + rcx]
nop
test rdx, rdx
je 0x53fb65
lea r8, [rsp + 0x148]
cmp rdx, r8
je 0x53fb75
nop dword [rax]
jmp 0x53fc33
lea rdx, [rsp + 0x148]
mov qword [rsp + 0x148], rdx
mov rcx, qword [rsp + 0x160]
mov rdx, qword [rsp + 0x158]
lea r8, [rdi + rdx]
mov rax, qword [rsp + 0x150]
cmp rcx, r8
jae 0x53fbd8
mov qword [rsp + 0xd0], rdx
mov qword [rsp + 0xc8], rdi
mov qword [rsp + 0x110], rbx
mov rbx, r8
lea rsi, [0x0069e040]
call fcn.0044f4e0
mov rdx, qword [rsp + 0xd0]
mov rdi, qword [rsp + 0xc8]
mov r8, rbx
mov rbx, qword [rsp + 0x110]
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.0046cf80
mov rdx, qword [rsp + 0xc8]
mov qword [rsp + 0x158], rdx
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x160], rdx
mov rdx, qword [rsp + 0x180]
mov qword [rsp + 0x150], rdx
jmp 0x53ec38
lea rax, [0x0069dfc0]
lea rbx, [0x00782460]
call fcn.00438720
mov rax, rcx
mov rcx, rdx
call fcn.0046c660
lea rax, [0x0069dfc0]
lea rbx, [0x00782460]
nop
call fcn.00438720
lea rax, [0x0069dfc0]
lea rbx, [0x00782460]
call fcn.00438720
lea rax, [0x0069dfc0]
lea rbx, [0x00782460]
call fcn.00438720
lea rax, [0x0069dfc0]
lea rbx, [0x00782460]
call fcn.00438720
mov rdx, rax
mov rax, rcx
mov rcx, rdx
call fcn.0046c660
lea rax, [0x0069dfc0]
lea rbx, [0x00782460]
call fcn.00438720
lea rax, [0x0069dfc0]
lea rbx, [0x00782460]
call fcn.00438720
lea rax, [0x0069dfc0]
lea rbx, [0x00782460]
call fcn.00438720
lea rax, [0x0069dfc0]
lea rbx, [0x00782460]
call fcn.00438720
lea rax, [0x0069dfc0]
lea rbx, [0x00782460]
call fcn.00438720
lea rax, [0x0069dfc0]
lea rbx, [0x00782460]
call fcn.00438720
lea rax, [0x0069dfc0]
lea rbx, [0x00782460]
call fcn.00438720
lea rax, [0x0069dfc0]
lea rbx, [0x00782460]
nop
call fcn.00438720
lea rax, [0x0069dfc0]
lea rbx, [0x00782460]
call fcn.00438720
lea rax, [0x0069dfc0]
lea rbx, [0x00782460]
call fcn.00438720
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
nop dword [rax + rax]
call fcn.0046a2c0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
jmp fcn.0053e5a0