Function at 0x519000
Capabilities:
Encode data using base64

Disassembly:
lea r12, [rsp - 0x170]
cmp r12, qword [r14 + 0x10]
jbe 0x51a76c
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 + 0x150], xmm15
movups xmmword [rsp + 0x160], xmm15
mov edi, 1
lea rcx, [0x0058a25e]
call fcn.0046d420
nop dword [rax + rax]
test sil, sil
je 0x5193b7
mov qword [rsp + 0xe0], rcx
mov qword [rsp + 0x48], rdi
mov qword [rsp + 0x60], rbx
mov qword [rsp + 0xf0], rax
test rbx, rbx
jne 0x51908c
xor edx, edx
jmp 0x5190c0
lea rcx, [0x005b0f18]
call fcn.0046c220
test rax, rax
setl dl
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rsp + 0xe0]
mov rbx, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x48]
nop dword [rax + rax]
test dl, dl
je 0x5193aa
test rdi, rdi
jne 0x5190d1
xor edx, edx
jmp 0x519105
mov rax, rcx
mov rbx, rdi
lea rcx, [0x005b0f18]
nop
call fcn.0046c220
test rax, rax
setl dl
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rsp + 0xe0]
mov rbx, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x48]
test dl, dl
je 0x5193aa
call fcn.0046bc00
mov rcx, qword [rsp + 0x150]
nop
nop
nop dword [rax]
test rcx, rcx
je 0x519137
lea rdx, [rsp + 0x150]
cmp rcx, rdx
je 0x519147
jmp 0x51a758
lea rdx, [rsp + 0x150]
mov qword [rsp + 0x150], rdx
mov rcx, qword [rsp + 0x168]
mov rdx, qword [rsp + 0x160]
lea r8, [rbx + rdx]
mov r9, qword [rsp + 0x158]
cmp rcx, r8
jae 0x5191b3
mov qword [rsp + 0xd8], rdx
mov qword [rsp + 0xb0], rbx
mov qword [rsp + 0x140], rax
mov rax, r9
mov rdi, rbx
lea rsi, [0x00551280]
mov rbx, r8
call fcn.004445a0
mov rdx, qword [rsp + 0xd8]
mov r9, rax
mov r8, rbx
mov rax, qword [rsp + 0x140]
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
nop dword [rax]
call fcn.0045b660
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x160], rdx
mov rdx, qword [rsp + 0xd8]
mov qword [rsp + 0x168], rdx
mov rdx, qword [rsp + 0x180]
mov qword [rsp + 0x158], rdx
mov rdx, qword [rsp + 0x150]
nop
nop
nop
test rdx, rdx
je 0x519237
lea r8, [rsp + 0x150]
cmp rdx, r8
je 0x519247
jmp 0x51a745
lea rdx, [rsp + 0x150]
mov qword [rsp + 0x150], rdx
mov rcx, qword [rsp + 0x168]
mov rbx, qword [rsp + 0x160]
inc rbx
mov rax, qword [rsp + 0x158]
cmp rcx, rbx
jae 0x519288
mov edi, 1
lea rsi, [0x00551280]
call fcn.004445a0
mov qword [rsp + 0x168], rcx
mov qword [rsp + 0x158], rax
mov qword [rsp + 0x160], rbx
mov byte [rbx + rax - 1], 0x2f
mov rax, qword [rsp + 0xe0]
mov rbx, qword [rsp + 0x48]
call fcn.0046bc00
mov rcx, qword [rsp + 0x150]
nop
test rcx, rcx
je 0x5192ca
lea rdx, [rsp + 0x150]
nop dword [rax]
cmp rcx, rdx
je 0x5192da
jmp 0x51a731
lea rdx, [rsp + 0x150]
mov qword [rsp + 0x150], rdx
mov rcx, qword [rsp + 0x168]
mov rdx, qword [rsp + 0x160]
lea r8, [rbx + rdx]
mov r9, qword [rsp + 0x158]
cmp rcx, r8
jae 0x519346
mov qword [rsp + 0x138], rax
mov qword [rsp + 0xd8], rdx
mov qword [rsp + 0xa8], rbx
mov rax, r9
mov rdi, rbx
lea rsi, [0x00551280]
mov rbx, r8
call fcn.004445a0
mov rdx, qword [rsp + 0xd8]
mov r9, rax
mov r8, rbx
mov rax, qword [rsp + 0x138]
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
call fcn.0045b660
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x160], rdx
mov rdx, qword [rsp + 0xd8]
mov qword [rsp + 0x168], rdx
mov rdx, qword [rsp + 0x180]
mov qword [rsp + 0x158], rdx
jmp 0x5194fa
xor eax, eax
xor ebx, ebx
add rsp, 0x1e8
pop rbp
ret
mov rbx, qword [rsp + 0x200]
nop
test rbx, rbx
je 0x519582
mov rax, qword [rsp + 0x1f8]
lea rcx, [0x005b0f18]
call fcn.0046c220
nop dword [rax]
test rax, rax
jge 0x519582
mov rax, qword [rsp + 0x1f8]
mov rbx, qword [rsp + 0x200]
call fcn.0046bc00
mov rcx, qword [rsp + 0x150]
nop
nop
test rcx, rcx
je 0x51941f
lea rdx, [rsp + 0x150]
cmp rcx, rdx
je 0x51942f
jmp 0x51a71e
lea rdx, [rsp + 0x150]
mov qword [rsp + 0x150], rdx
mov rcx, qword [rsp + 0x168]
mov rdx, qword [rsp + 0x160]
lea r8, [rdx + rbx]
mov r9, qword [rsp + 0x158]
cmp rcx, r8
jae 0x51949b
mov qword [rsp + 0xb8], rbx
mov qword [rsp + 0x148], rax
mov qword [rsp + 0xd8], rdx
mov rax, r9
mov rdi, rbx
lea rsi, [0x00551280]
mov rbx, r8
call fcn.004445a0
mov rdx, qword [rsp + 0xd8]
mov r9, rax
mov r8, rbx
mov rax, qword [rsp + 0x148]
mov rbx, qword [rsp + 0xb8]
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.0045b660
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x160], rdx
mov rdx, qword [rsp + 0xd8]
mov qword [rsp + 0x168], rdx
mov rdx, qword [rsp + 0x180]
mov qword [rsp + 0x158], rdx
mov rdx, qword [rsp + 0x208]
test rdx, rdx
je 0x51950c
mov rsi, qword [rdx]
jmp 0x51950e
xor esi, esi
mov qword [rsp + 0x58], rsi
lea rax, [0x00551200]
xor ebx, ebx
mov rcx, rsi
nop
call fcn.004444c0
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.0045af8b
mov rbp, qword [rbp]
mov rbx, qword [rsp + 0x208]
lea rcx, [rsp + 0x188]
lea rax, [0x0055a280]
call fcn.0040e500
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x178]
xor edx, edx
nop
jmp 0x5195ba
xor eax, eax
xor ebx, ebx
add rsp, 0x1e8
pop rbp
ret
mov qword [rsp + 0xe8], rcx
mov qword [rcx + rsi], rdx
lea rax, [rsp + 0x188]
call fcn.0040e720
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0xe8]
mov rdx, qword [rsp + 0x50]
mov r8, qword [rsp + 0x188]
test r8, r8
je 0x519655
lea rbx, [rdx + 1]
mov rdx, qword [r8]
mov r8, qword [r8 + 8]
cmp rax, rbx
jae 0x51961b
mov qword [rsp + 0x68], r8
mov qword [rsp + 0xf8], rdx
mov edi, 1
lea rsi, [0x00551200]
mov rdx, rax
mov rax, rcx
mov rcx, rdx
nop dword [rax]
call fcn.004445a0
mov rdx, qword [rsp + 0xf8]
mov r8, qword [rsp + 0x68]
mov rsi, rcx
mov rcx, rax
mov rax, rsi
mov qword [rsp + 0x50], rbx
mov qword [rsp + 0x58], rax
lea rsi, [rbx - 1]
shl rsi, 4
mov qword [rcx + rsi + 8], r8
cmp dword [0x0074e130], 0
je 0x51958f
nop
call fcn.0045aa80
mov qword [r11], rdx
mov rdi, qword [rcx + rsi]
mov qword [r11 + 8], rdi
jmp 0x51958f
mov qword [rsp + 0x50], rdx
mov qword [rsp + 0x170], rcx
mov rbx, rdx
mov rdx, rax
mov rax, rcx
mov rcx, rdx
call fcn.00495900
mov rdx, qword [rsp + 0x170]
mov rax, qword [rsp + 0x50]
jmp 0x5196a0
mov rdx, qword [rsp + 0x178]
add rdx, 0x10
mov rax, qword [rsp + 0xd8]
dec rax
nop dword [rax]
test rax, rax
jle 0x519d36
mov qword [rsp + 0xd8], rax
mov qword [rsp + 0x178], rdx
mov rdi, qword [rdx + 8]
mov qword [rsp + 0x70], rdi
mov rcx, qword [rdx]
mov qword [rsp + 0x100], rcx
lea rax, [0x0055a280]
mov rbx, qword [rsp + 0x208]
nop dword [rax]
call fcn.00410dc0
mov rdx, qword [rsp + 0x150]
mov rsi, qword [rax + 8]
mov r8, qword [rax]
nop
nop
test rdx, rdx
je 0x51970d
lea r9, [rsp + 0x150]
cmp rdx, r9
je 0x51971d
jmp 0x51a70b
lea rdx, [rsp + 0x150]
mov qword [rsp + 0x150], rdx
mov qword [rsp + 0x108], r8
mov qword [rsp + 0x78], rsi
mov rcx, qword [rsp + 0x168]
mov rbx, qword [rsp + 0x160]
inc rbx
mov rax, qword [rsp + 0x158]
cmp rcx, rbx
jae 0x519778
mov edi, 1
lea rsi, [0x00551280]
call fcn.004445a0
mov qword [rsp + 0x168], rcx
mov qword [rsp + 0x158], rax
mov rsi, qword [rsp + 0x78]
mov r8, qword [rsp + 0x108]
mov qword [rsp + 0x160], rbx
mov byte [rbx + rax - 1], 0x3b
mov rdx, qword [rsp + 0x150]
nop
nop
test rdx, rdx
je 0x5197aa
lea r9, [rsp + 0x150]
nop dword [rax]
cmp rdx, r9
je 0x5197ba
jmp 0x51a6f8
lea rdx, [rsp + 0x150]
mov qword [rsp + 0x150], rdx
mov rcx, qword [rsp + 0x168]
mov rbx, qword [rsp + 0x160]
inc rbx
mov rax, qword [rsp + 0x158]
cmp rcx, rbx
jae 0x519808
mov edi, 1
lea rsi, [0x00551280]
call fcn.004445a0
mov qword [rsp + 0x168], rcx
mov qword [rsp + 0x158], rax
mov rsi, qword [rsp + 0x78]
mov r8, qword [rsp + 0x108]
mov qword [rsp + 0x160], rbx
mov byte [rbx + rax - 1], 0x20
mov rbx, qword [rsp + 0x70]
nop word [rax + rax]
test rbx, rbx
je 0x519d29
mov rax, qword [rsp + 0x100]
lea rcx, [0x005b0f18]
call fcn.0046c220
nop dword [rax]
test rax, rax
jge 0x519d29
mov rax, qword [rsp + 0x100]
mov rbx, qword [rsp + 0x70]
call fcn.0046bc00
mov rcx, qword [rsp + 0x150]
nop
nop
test rcx, rcx
je 0x51987c
lea rdx, [rsp + 0x150]
cmp rcx, rdx
je 0x51988c
jmp 0x51a6e5
lea rdx, [rsp + 0x150]
mov qword [rsp + 0x150], rdx
mov rcx, qword [rsp + 0x168]
mov rdx, qword [rsp + 0x160]
lea r8, [rdx + rbx]
mov r9, qword [rsp + 0x158]
cmp rcx, r8
jae 0x5198f8
mov qword [rsp + 0xa0], rbx
mov qword [rsp + 0x130], rax
mov qword [rsp + 0xd0], rdx
mov rax, r9
mov rdi, rbx
lea rsi, [0x00551280]
mov rbx, r8
call fcn.004445a0
mov rdx, qword [rsp + 0xd0]
mov r9, rax
mov r8, rbx
mov rax, qword [rsp + 0x130]
mov rbx, qword [rsp + 0xa0]
mov qword [rsp + 0xd0], rcx
mov qword [rsp + 0x180], r9
mov qword [rsp + 0xc8], r8
add rdx, r9
mov rsi, rax
mov rax, rdx
mov rdi, rbx
mov rbx, rsi
mov rcx, rdi
call fcn.0045b660
mov rdx, qword [rsp + 0xc8]
mov qword [rsp + 0x160], rdx
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x168], rdx
mov rdx, qword [rsp + 0x180]
mov qword [rsp + 0x158], rdx
nop
mov rdx, qword [rsp + 0x78]
mov rsi, qword [rsp + 0x108]
xor eax, eax
jmp 0x519d72
cmp rax, rdx
jge 0x519a11
mov r8, qword [rsp + 0x150]
nop
nop
nop
test r8, r8
je 0x519997
lea r9, [rsp + 0x150]
cmp r8, r9
je 0x5199a7
jmp 0x51a6d1
lea r8, [rsp + 0x150]
mov qword [rsp + 0x150], r8
mov rcx, qword [rsp + 0x168]
mov rbx, qword [rsp + 0x160]
inc rbx
mov r8, qword [rsp + 0x158]
cmp rcx, rbx
jae 0x519a03
mov rax, r8
mov edi, 1
lea rsi, [0x00551280]
call fcn.004445a0
mov qword [rsp + 0x168], rcx
mov qword [rsp + 0x158], rax
mov rdx, qword [rsp + 0x78]
mov rsi, qword [rsp + 0x108]
mov r8, rax
mov rax, qword [rsp + 0xd0]
mov qword [rsp + 0x160], rbx
mov byte [rbx + r8 - 1], 0x2a
mov r8, qword [rsp + 0x150]
nop
nop
nop dword [rax + rax]
test r8, r8
je 0x519a37
lea r9, [rsp + 0x150]
cmp r8, r9
je 0x519a47
jmp 0x51a6be
lea r8, [rsp + 0x150]
mov qword [rsp + 0x150], r8
mov rcx, qword [rsp + 0x168]
mov rbx, qword [rsp + 0x160]
inc rbx
mov r8, qword [rsp + 0x158]
cmp rcx, rbx
jb 0x519a6c
cmp rax, rdx
jmp 0x519ab3
mov rax, r8
mov edi, 1
lea rsi, [0x00551280]
nop dword [rax + rax]
call fcn.004445a0
mov qword [rsp + 0x168], rcx
mov qword [rsp + 0x158], rax
mov rdx, qword [rsp + 0xd0]
mov rdi, qword [rsp + 0x78]
cmp rdx, rdi
mov rdx, rdi
mov rsi, qword [rsp + 0x108]
mov r8, rax
mov qword [rsp + 0x160], rbx
mov byte [rbx + r8 - 1], 0x3d
jge 0x519b7f
mov r8, qword [rsp + 0x150]
nop
test r8, r8
je 0x519aea
lea r9, [rsp + 0x150]
nop dword [rax]
cmp r8, r9
je 0x519afa
jmp 0x51a6ab
lea r8, [rsp + 0x150]
mov qword [rsp + 0x150], r8
mov rbx, qword [rsp + 0x160]
lea r8, [rbx + 7]
mov rcx, qword [rsp + 0x168]
mov rax, qword [rsp + 0x158]
cmp rcx, r8
jae 0x519b4f
mov qword [rsp + 0xd0], rbx
mov rbx, r8
mov edi, 7
lea rsi, [0x00551280]
call fcn.004445a0
mov rdx, qword [rsp + 0x78]
mov rsi, qword [rsp + 0x108]
mov r8, rbx
mov rbx, qword [rsp + 0xd0]
mov dword [rax + rbx], 0x2d667475
mov dword [rax + rbx + 3], 0x2727382d
mov qword [rsp + 0x160], r8
mov qword [rsp + 0x168], rcx
mov qword [rsp + 0x158], rax
xor eax, eax
xor ecx, ecx
jmp 0x51a1a0
nop
test rdx, rdx
jne 0x519b89
xor eax, eax
jmp 0x519bb0
mov rax, rsi
mov rbx, rdx
lea rcx, [0x005b0f18]
call fcn.0046c220
test rax, rax
setl dl
mov rsi, qword [rsp + 0x108]
mov eax, edx
mov rdx, qword [rsp + 0x78]
test al, al
jne 0x519c4c
mov r8, qword [rsp + 0x150]
nop
test r8, r8
je 0x519bd8
lea r9, [rsp + 0x150]
cmp r8, r9
je 0x519be8
jmp 0x51a185
lea r8, [rsp + 0x150]
mov qword [rsp + 0x150], r8
mov rcx, qword [rsp + 0x168]
mov rbx, qword [rsp + 0x160]
inc rbx
mov rax, qword [rsp + 0x158]
cmp rcx, rbx
jae 0x519c36
mov edi, 1
lea rsi, [0x00551280]
call fcn.004445a0
mov qword [rsp + 0x168], rcx
mov qword [rsp + 0x158], rax
mov rdx, qword [rsp + 0x78]
mov rsi, qword [rsp + 0x108]
mov qword [rsp + 0x160], rbx
mov byte [rbx + rax - 1], 0x22
xor eax, eax
xor ecx, ecx
jmp 0x519df1
mov r8, qword [rsp + 0x150]
nop
nop
test r8, r8
je 0x519c6d
lea r9, [rsp + 0x150]
cmp r8, r9
je 0x519c7d
jmp 0x519ddb
lea r8, [rsp + 0x150]
mov qword [rsp + 0x150], r8
mov rcx, qword [rsp + 0x168]
mov r8, qword [rsp + 0x160]
lea rbx, [rdx + r8]
mov rax, qword [rsp + 0x158]
cmp rcx, rbx
jae 0x519cca
mov qword [rsp + 0xd0], r8
mov rdi, rdx
lea rsi, [0x00551280]
call fcn.004445a0
mov rdx, qword [rsp + 0x78]
mov rsi, qword [rsp + 0x108]
mov r8, qword [rsp + 0xd0]
mov qword [rsp + 0x180], rax
mov qword [rsp + 0xd0], rbx
mov qword [rsp + 0xc8], rcx
lea rdi, [rax + r8]
mov rax, rdi
mov rbx, rsi
mov rcx, rdx
call fcn.0045b660
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x160], rdx
mov rdx, qword [rsp + 0xc8]
mov qword [rsp + 0x168], rdx
mov rdx, qword [rsp + 0x180]
mov qword [rsp + 0x158], rdx
jmp 0x519682
xor eax, eax
xor ebx, ebx
add rsp, 0x1e8
pop rbp
ret
mov rbx, qword [rsp + 0x160]
mov rax, qword [rsp + 0x158]
mov rcx, rax
neg rcx
nop
cmp rbx, rcx
ja 0x519d60
add rsp, 0x1e8
pop rbp
ret
test rax, rax
je 0x519d6a
call fcn.00452520
call fcn.00452560
mov rax, r9
mov qword [rsp + 0xd0], rax
nop word [rax + rax]
cmp rax, rdx
jge 0x51996f
movzx r8d, byte [rsi + rax]
cmp r8d, 0x80
jge 0x519d9d
lea r9, [rax + 1]
jmp 0x519dc6
mov rbx, rdx
mov rcx, rax
mov rax, rsi
call fcn.004526e0
mov rdx, qword [rsp + 0x78]
mov rsi, qword [rsp + 0x108]
mov r8d, eax
mov r9, rbx
mov rax, qword [rsp + 0xd0]
lea r10d, [r8 - 0x20]
cmp r10d, 0x5e
jbe 0x519d6f
cmp r8d, 9
je 0x519d6f
jmp 0x51996c
lea rax, [0x00551200]
lea rbx, [0x005dcc60]
call fcn.00430960
inc rax
cmp rax, rdx
jge 0x519fb5
movzx r8d, byte [rsi + rax]
nop
cmp r8b, 0x22
je 0x519e0c
cmp r8b, 0x5c
jne 0x519dee
mov rdi, rax
sub rdi, rcx
mov r8, rdi
neg r8
sar r8, 0x3f
and rcx, r8
mov r8, qword [rsp + 0x150]
lea rbx, [rsi + rcx]
nop
test r8, r8
je 0x519e45
lea r9, [rsp + 0x150]
cmp r8, r9
je 0x519e55
nop
jmp 0x51a171
lea r8, [rsp + 0x150]
mov qword [rsp + 0x150], r8
mov qword [rsp + 0x80], rax
mov rcx, qword [rsp + 0x168]
mov r8, qword [rsp + 0x160]
lea r9, [rdi + r8]
mov r10, qword [rsp + 0x158]
cmp rcx, r9
jae 0x519ec6
mov qword [rsp + 0xd0], r8
mov qword [rsp + 0x90], rdi
mov qword [rsp + 0x118], rbx
mov rax, r10
mov rbx, r9
lea rsi, [0x00551280]
call fcn.004445a0
mov rdi, qword [rsp + 0x90]
mov r8, qword [rsp + 0xd0]
mov r10, rax
mov r9, rbx
mov rbx, qword [rsp + 0x118]
mov qword [rsp + 0xd0], rcx
mov qword [rsp + 0xc8], r9
mov qword [rsp + 0x180], r10
lea rax, [r10 + r8]
mov rcx, rdi
call fcn.0045b660
mov rdx, qword [rsp + 0xc8]
mov qword [rsp + 0x160], rdx
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x168], rdx
mov rdx, qword [rsp + 0x180]
mov qword [rsp + 0x158], rdx
mov rdx, qword [rsp + 0x150]
nop
test rdx, rdx
je 0x519f3a
lea r8, [rsp + 0x150]
cmp rdx, r8
je 0x519f4a
jmp 0x51a15e
lea rdx, [rsp + 0x150]
mov qword [rsp + 0x150], rdx
mov rcx, qword [rsp + 0x168]
mov rbx, qword [rsp + 0x160]
inc rbx
mov rax, qword [rsp + 0x158]
cmp rcx, rbx
jae 0x519f8b
mov edi, 1
lea rsi, [0x00551280]
call fcn.004445a0
mov qword [rsp + 0x168], rcx
mov qword [rsp + 0x158], rax
mov qword [rsp + 0x160], rbx
mov byte [rbx + rax - 1], 0x5c
mov rax, qword [rsp + 0x80]
mov rdx, qword [rsp + 0x78]
mov rsi, qword [rsp + 0x108]
mov rcx, rax
jmp 0x519dee
sub rdx, rcx
mov rdi, rdx
neg rdx
sar rdx, 0x3f
and rcx, rdx
mov rdx, qword [rsp + 0x150]
lea rbx, [rsi + rcx]
nop
test rdx, rdx
je 0x519fea
lea r8, [rsp + 0x150]
nop
cmp rdx, r8
je 0x519ffa
jmp 0x51a14b
lea rdx, [rsp + 0x150]
mov qword [rsp + 0x150], rdx
mov rcx, qword [rsp + 0x168]
mov rdx, qword [rsp + 0x160]
lea r8, [rdi + rdx]
mov rax, qword [rsp + 0x158]
cmp rcx, r8
jae 0x51a060
mov qword [rsp + 0xd0], rdx
mov qword [rsp + 0xc8], rdi
mov qword [rsp + 0x110], rbx
mov rbx, r8
lea rsi, [0x00551280]
nop dword [rax]
call fcn.004445a0
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 + 0xc8], r8
mov qword [rsp + 0x180], rax
add rdx, rax
mov rax, rdx
mov rcx, rdi
call fcn.0045b660
mov rdx, qword [rsp + 0xc8]
mov qword [rsp + 0x160], rdx
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x168], rdx
mov rdx, qword [rsp + 0x180]
mov qword [rsp + 0x158], rdx
mov rdx, qword [rsp + 0x150]
nop
nop
test rdx, rdx
je 0x51a0d4
lea r8, [rsp + 0x150]
cmp rdx, r8
je 0x51a0e4
jmp 0x51a138
lea rdx, [rsp + 0x150]
mov qword [rsp + 0x150], rdx
mov rcx, qword [rsp + 0x168]
mov rbx, qword [rsp + 0x160]
inc rbx
mov rax, qword [rsp + 0x158]
nop
cmp rcx, rbx
jae 0x51a126
mov edi, 1
lea rsi, [0x00551280]
call fcn.004445a0
mov qword [rsp + 0x168], rcx
mov qword [rsp + 0x158], rax
mov qword [rsp + 0x160], rbx
mov byte [rbx + rax - 1], 0x22
jmp 0x519682
lea rax, [0x00551200]
lea rbx, [0x005dcc60]
call fcn.00430960
lea rax, [0x00551200]
lea rbx, [0x005dcc60]
call fcn.00430960
lea rax, [0x00551200]
lea rbx, [0x005dcc60]
call fcn.00430960
lea rax, [0x00551200]
lea rbx, [0x005dcc60]
nop
call fcn.00430960
lea rax, [0x00551200]
lea rbx, [0x005dcc60]
call fcn.00430960
inc rax
nop dword [rax + rax]
cmp rax, rdx
jge 0x51a545
mov qword [rsp + 0xc0], rax
movzx r8d, byte [rsi + rax]
mov byte [rsp + 0x45], r8b
lea r9d, [r8 - 0x21]
nop
cmp r9b, 0x5e
jb 0x51a1cd
mov ebx, 1
jmp 0x51a243
cmp r8b, 0x2a
jne 0x51a1e0
mov ebx, 1
jmp 0x51a243
cmp r8b, 0x27
jne 0x51a1ed
mov ebx, 1
jmp 0x51a243
cmp r8b, 0x25
jne 0x51a1fa
mov ebx, 1
jmp 0x51a243
mov qword [rsp + 0x88], rcx
nop
nop
lea rax, [0x0058c3ef]
mov ebx, 0xf
mov ecx, r8d
call fcn.0046ab60
test rax, rax
setge dl
mov rax, qword [rsp + 0xc0]
mov rcx, qword [rsp + 0x88]
mov rsi, qword [rsp + 0x108]
movzx r8d, byte [rsp + 0x45]
mov ebx, edx
mov rdx, qword [rsp + 0x78]
test bl, bl
je 0x51a198
mov rdi, rax
sub rdi, rcx
mov r9, rdi
neg r9
sar r9, 0x3f
and rcx, r9
mov r9, qword [rsp + 0x150]
lea rbx, [rsi + rcx]
nop
test r9, r9
je 0x51a285
lea r10, [rsp + 0x150]
cmp r9, r10
je 0x51a295
nop dword [rax]
jmp 0x51a698
lea r9, [rsp + 0x150]
mov qword [rsp + 0x150], r9
mov rcx, qword [rsp + 0x168]
mov r9, qword [rsp + 0x160]
lea r10, [r9 + rdi]
mov r11, qword [rsp + 0x158]
cmp rcx, r10
jae 0x51a303
mov qword [rsp + 0x98], rdi
mov qword [rsp + 0x128], rbx
mov qword [rsp + 0xd0], r9
mov rax, r11
mov rbx, r10
lea rsi, [0x00551280]
nop dword [rax + rax]
call fcn.004445a0
mov rdi, qword [rsp + 0x98]
mov r9, qword [rsp + 0xd0]
mov r11, rax
mov r10, rbx
mov rbx, qword [rsp + 0x128]
mov qword [rsp + 0xd0], rcx
mov qword [rsp + 0x180], r11
mov qword [rsp + 0xc8], r10
lea rax, [r11 + r9]
mov rcx, rdi
call fcn.0045b660
mov rdx, qword [rsp + 0xc8]
mov qword [rsp + 0x160], rdx
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x168], rdx
mov rdx, qword [rsp + 0x180]
mov qword [rsp + 0x158], rdx
mov rdx, qword [rsp + 0x150]
nop
nop
test rdx, rdx
je 0x51a378
lea r8, [rsp + 0x150]
cmp rdx, r8
je 0x51a388
jmp 0x51a685
lea rdx, [rsp + 0x150]
mov qword [rsp + 0x150], rdx
mov rcx, qword [rsp + 0x168]
mov rbx, qword [rsp + 0x160]
inc rbx
mov rax, qword [rsp + 0x158]
cmp rcx, rbx
jae 0x51a3c9
mov edi, 1
lea rsi, [0x00551280]
call fcn.004445a0
mov qword [rsp + 0x168], rcx
mov qword [rsp + 0x158], rax
mov qword [rsp + 0x160], 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 + 0x150]
lea r10, [0x0058c576]
movzx edx, byte [r10 + rdx]
nop
test r9, r9
je 0x51a410
lea r11, [rsp + 0x150]
cmp r9, r11
je 0x51a420
jmp 0x51a66d
lea r9, [rsp + 0x150]
mov qword [rsp + 0x150], r9
mov rcx, qword [rsp + 0x168]
mov rbx, qword [rsp + 0x160]
inc rbx
mov rax, qword [rsp + 0x158]
nop dword [rax + rax]
cmp rcx, rbx
jae 0x51a47c
mov byte [rsp + 0x47], dl
mov edi, 1
lea rsi, [0x00551280]
call fcn.004445a0
mov qword [rsp + 0x168], rcx
mov qword [rsp + 0x158], rax
movzx edx, byte [rsp + 0x47]
movzx r8d, byte [rsp + 0x45]
lea r10, [0x0058c576]
mov qword [rsp + 0x160], rbx
mov byte [rbx + rax - 1], dl
and r8d, 0xf
mov rdx, qword [rsp + 0x150]
movzx r8d, byte [r8 + r10]
nop
test rdx, rdx
je 0x51a4b1
lea r9, [rsp + 0x150]
cmp rdx, r9
je 0x51a4c1
jmp 0x51a65a
lea rdx, [rsp + 0x150]
mov qword [rsp + 0x150], rdx
mov rcx, qword [rsp + 0x168]
mov rbx, qword [rsp + 0x160]
inc rbx
mov rax, qword [rsp + 0x158]
nop dword [rax]
cmp rcx, rbx
jae 0x51a511
mov byte [rsp + 0x46], r8b
mov edi, 1
lea rsi, [0x00551280]
call fcn.004445a0
mov qword [rsp + 0x168], rcx
mov qword [rsp + 0x158], rax
movzx r8d, byte [rsp + 0x46]
mov qword [rsp + 0x160], rbx
mov byte [rbx + rax - 1], r8b
mov rcx, qword [rsp + 0xc0]
lea rdx, [rcx + 1]
mov rax, rcx
mov rsi, qword [rsp + 0x108]
mov rcx, rdx
mov rdx, qword [rsp + 0x78]
nop dword [rax]
jmp 0x51a198
sub rdx, rcx
mov rdi, rdx
neg rdx
sar rdx, 0x3f
and rcx, rdx
mov rdx, qword [rsp + 0x150]
lea rbx, [rsi + rcx]
nop
test rdx, rdx
je 0x51a579
lea r8, [rsp + 0x150]
cmp rdx, r8
je 0x51a589
jmp 0x51a647
lea rdx, [rsp + 0x150]
mov qword [rsp + 0x150], rdx
mov rcx, qword [rsp + 0x168]
mov rdx, qword [rsp + 0x160]
lea r8, [rdx + rdi]
mov rax, qword [rsp + 0x158]
cmp rcx, r8
jae 0x51a5ec
mov qword [rsp + 0xd0], rdi
mov qword [rsp + 0xc8], rdx
mov qword [rsp + 0x120], rbx
mov rbx, r8
lea rsi, [0x00551280]
call fcn.004445a0
mov rdx, qword [rsp + 0xc8]
mov rdi, qword [rsp + 0xd0]
mov r8, rbx
mov rbx, qword [rsp + 0x120]
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.0045b660
mov rdx, qword [rsp + 0xc8]
mov qword [rsp + 0x160], rdx
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x168], rdx
mov rdx, qword [rsp + 0x180]
mov qword [rsp + 0x158], rdx
jmp 0x519682
lea rax, [0x00551200]
lea rbx, [0x005dcc60]
call fcn.00430960
lea rax, [0x00551200]
lea rbx, [0x005dcc60]
call fcn.00430960
lea rax, [0x00551200]
lea rbx, [0x005dcc60]
nop dword [rax + rax]
call fcn.00430960
lea rax, [0x00551200]
lea rbx, [0x005dcc60]
call fcn.00430960
lea rax, [0x00551200]
lea rbx, [0x005dcc60]
call fcn.00430960
lea rax, [0x00551200]
lea rbx, [0x005dcc60]
call fcn.00430960
lea rax, [0x00551200]
lea rbx, [0x005dcc60]
call fcn.00430960
lea rax, [0x00551200]
lea rbx, [0x005dcc60]
nop
call fcn.00430960
lea rax, [0x00551200]
lea rbx, [0x005dcc60]
call fcn.00430960
lea rax, [0x00551200]
lea rbx, [0x005dcc60]
call fcn.00430960
lea rax, [0x00551200]
lea rbx, [0x005dcc60]
call fcn.00430960
lea rax, [0x00551200]
lea rbx, [0x005dcc60]
call fcn.00430960
lea rax, [0x00551200]
lea rbx, [0x005dcc60]
nop
call fcn.00430960
lea rax, [0x00551200]
lea rbx, [0x005dcc60]
call fcn.00430960
lea rax, [0x00551200]
lea rbx, [0x005dcc60]
call fcn.00430960
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
nop dword [rax + rax]
call fcn.00458b40
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
jmp fcn.00519000