Function at 0x18004eed0
Capabilities:
Encode data using base64
Encode data using xor

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 7]
sub rsp, 0xd8
mov r11, qword [rbp - 0x59]
mov r10, r9
mov ebx, dword [rbp + 0x97]
mov r9, rdx
mov edx, dword [rbp + 0x97]
mov r8, rcx
mov rdi, qword [rbp - 0x59]
mov ecx, edx
mov r13d, dword [rbp + 0x97]
imul eax, edx, 0x6b0
mov dword [rbp - 0x71], edx
mov qword [rbp - 0x61], r11
cmp edx, eax
mov dword [rbp - 0x29], eax
mov eax, dword [rbp + 0x97]
mov edx, dword [rbp + 0x97]
mov dword [rbp - 0x49], eax
mov rax, qword [rbp - 0x59]
mov qword [rbp - 0x21], rax
mov rax, qword [rbp - 0x59]
mov qword [rbp - 0x31], rax
mov eax, dword [rbp + 0x97]
mov dword [rbp - 0x69], eax
mov dword [rsp + 0x50], edx
ja 0x18004f944
mov r15, qword [rbp - 0x59]
mov eax, dword [rbp + 0x97]
mov r12d, dword [rbp + 0x97]
movzx r14d, word [rbp + 0x97]
mov esi, dword [rbp + 0x97]
mov qword [rbp - 0x39], r15
mov qword [rbp - 0x11], rbx
mov qword [rbp - 0x41], rdi
mov dword [rbp - 0x6d], eax
cmp ecx, 0x6324
ja 0x18004f3f7
je 0x18004f36b
cmp ecx, 0xeb
ja 0x18004f272
je 0x18004f201
mov eax, ecx
sub eax, 0x33
je 0x18004f147
sub eax, 9
je 0x18004f08c
sub eax, 0x3d
je 0x18004f06a
cmp eax, 0x27
jne 0x18004f855
xor edi, edi
cmp qword [rbp + 0x8f], rdi
jne 0x18004f00f
lea r9, [rbp - 0x79]
mov dword [rbp - 0x79], edi
lea r8d, [rax + 0x65]
lea rdx, [0x18008f048]
lea rcx, str.vcvt_s64_v
call fcn.1800064b0
mov r10, qword [rbp + 0x67]
mov r9, qword [rbp + 0x57]
test r10, r10
jne 0x18004f03c
lea r9, [rbp - 0x79]
mov dword [rbp - 0x79], edi
mov r8d, 0x8c
lea rdx, [0x18008f048]
lea rcx, str._en_en_en
call fcn.1800064b0
mov r10, qword [rbp + 0x67]
mov r9, qword [rbp + 0x57]
test r9, r9
jne 0x18004f846
lea r9, [rbp - 0x79]
mov dword [rbp - 0x79], edi
mov r8d, 0x8c
lea rdx, [0x18008f048]
lea rcx, str.1F3_
call fcn.1800064b0
jmp 0x18004f83e
mov r8, qword [rbp + 0x6f]
xor r9d, r9d
mov rcx, qword [rbp + 0x8f]
xor edx, edx
mov dword [rsp + 0x20], 0xf5
call fcn.180020500
jmp 0x18004f83e
mov rax, qword [rbp + 0x6f]
mov r8, qword [r10 + 0x10]
mov rcx, qword [rax]
add rcx, rcx
cmp rcx, r8
ja 0x18004f0b6
mov qword [r10 + 0x10], rcx
mov rax, r10
cmp qword [r10 + 0x18], 0x10
jb 0x18004f0b0
mov rax, qword [r10]
mov byte [rax + rcx], 0
jmp 0x18004f10e
mov rdx, qword [r10 + 0x18]
mov r15, rcx
mov rax, rdx
sub r15, r8
sub rax, r8
cmp r15, rax
ja 0x18004f0f3
mov qword [r10 + 0x10], rcx
mov rax, r10
cmp rdx, 0x10
jb 0x18004f0db
mov rax, qword [r10]
lea rdi, [rax + r8]
xor edx, edx
mov rcx, rdi
mov r8, r15
call fcn.18005e640
mov byte [rdi + r15], 0
jmp 0x18004f106
mov r9, r15
mov byte [rsp + 0x20], 0
mov rdx, r15
mov rcx, r10
call fcn.180053100
mov r10, qword [rbp + 0x67]
mov r15, qword [rbp - 0x39]
xor edx, edx
mov rcx, r10
call fcn.1800510e0
mov r9, qword [rbp + 0x8f]
lea r8, [rbp - 0x59]
mov rcx, rax
mov edx, 0x3d
mov rax, qword [rbp + 0x6f]
mov qword [rsp + 0x20], rcx
xor ecx, ecx
mov rax, qword [rax]
mov qword [rbp - 0x59], rax
call fcn.180045550
jmp 0x18004f83e
mov rdi, qword [rbp + 0x8f]
test rdi, rdi
jne 0x18004f173
lea r9, [rbp - 0x79]
mov dword [rbp - 0x79], edi
mov r8d, 0x8c
lea rdx, [0x18008f048]
lea rcx, str.a___NULL
call fcn.1800064b0
cmp qword [rbp + 0x6f], 0
jne 0x18004f19e
lea r9, [rbp - 0x79]
mov dword [rbp - 0x79], 0
mov r8d, 0x8c
lea rdx, [0x18008f048]
lea rcx, str.b___NULL
call fcn.1800064b0
mov rbx, qword [rbp + 0x67]
test rbx, rbx
jne 0x18004f1c7
lea r9, [rbp - 0x79]
mov dword [rbp - 0x79], ebx
mov r8d, 0x8c
lea rdx, [0x18008f048]
lea rcx, str.c___NULL
call fcn.1800064b0
mov rcx, qword [rbp + 0x6f]
xor r9d, r9d
mov r8, rbx
mov qword [rsp + 0x20], rdi
mov edx, 0x9d
call fcn.180016ed0
xor r9d, r9d
mov dword [rbp - 0x79], eax
lea r8, [rbp - 0x79]
xor ecx, ecx
lea edx, [r9 + 0x7c]
call fcn.180009930
mov rbx, rax
mov qword [rbp - 0x11], rax
jmp 0x18004f83e
cmp qword [rbp + 0x6f], 0
jne 0x18004f243
lea r9, [rbp - 0x79]
mov dword [rbp - 0x79], 0
mov r8d, 0x8c
lea rdx, [0x18008f048]
lea rcx, str.IsReloaded
call fcn.1800064b0
mov r10, qword [rbp + 0x67]
mov ecx, dword [rbp - 0x71]
mov edx, dword [rsp + 0x50]
mov r9, qword [rbp + 0x57]
mov r8, qword [rbp + 0x4f]
mov r11, qword [rbp - 0x61]
test r9, r9
jne 0x18004f855
mov dword [rbp - 0x79], r9d
lea rdx, [0x18008f048]
lea r9, [rbp - 0x79]
mov r8d, 0x8c
lea rcx, str.out___NULL
call fcn.1800064b0
jmp 0x18004f83e
cmp ecx, 0x102
je 0x18004f2be
cmp ecx, 0x1584
je 0x18004f9c8
cmp ecx, 0x4380
jne 0x18004f855
mov rax, qword [rbp + 0x6f]
cmp dword [rax], 2
jb 0x18004f56b
mov rax, qword [rbp + 0x8f]
movzx eax, byte [rax]
and al, 0x1f
cmp al, 0xc
jne 0x18004f56b
mov r12d, 1
jmp 0x18004f855
xor edi, edi
cmp qword [rbp + 0x8f], rdi
jne 0x18004f2e9
lea r9, [rbp - 0x79]
mov dword [rbp - 0x79], edi
mov r8d, 0x8c
lea rdx, [0x18008f048]
lea rcx, str._Z7soa_allDv8_s
call fcn.1800064b0
cmp qword [rbp + 0x7f], 0
jne 0x18004f310
lea r9, [rbp - 0x79]
mov dword [rbp - 0x79], edi
mov r8d, 0x8c
lea rdx, [0x18008f048]
lea rcx, str.get_Gesture
call fcn.1800064b0
cmp qword [rbp + 0x77], 0
jne 0x18004f337
lea r9, [rbp - 0x79]
mov dword [rbp - 0x79], edi
mov r8d, 0x8c
lea rdx, [0x18008f048]
lea rcx, str.Datum_Beduaram
call fcn.1800064b0
mov rax, qword [rbp + 0x87]
lea r9, [rbp - 0x79]
xor r8d, r8d
mov dword [rsp + 0x20], 0xc5
xor edx, edx
xor ecx, ecx
mov eax, dword [rax]
mov dword [rbp - 0x79], eax
call fcn.18000efe0
mov dword [rbp - 0x69], eax
test eax, eax
jne 0x18004f9ca
jmp 0x18004f83e
test r8, r8
jne 0x18004f391
mov dword [rbp - 0x79], r8d
lea r9, [rbp - 0x79]
mov r8d, 0x8c
lea rdx, [0x18008f048]
lea rcx, str.OnHwndDisposed
call fcn.1800064b0
mov rdi, qword [rbp + 0x8f]
lea r9, [rbp - 0x79]
xor r8d, r8d
mov dword [rsp + 0x20], 0xc5
xor edx, edx
xor ecx, ecx
mov eax, dword [rdi]
mov dword [rbp - 0x79], eax
call fcn.18000efe0
mov dword [rbp - 0x49], eax
test eax, eax
jne 0x18004f9ca
movsxd rcx, dword [rdi]
lea rax, [0x180000000]
mov r8, qword [rbp + 0x4f]
shl rcx, 7
mov edx, dword [rcx + rax + 0xa0ebc]
cmp dword [r8], edx
jb 0x18004f86f
mov r10, qword [rbp + 0x67]
mov edx, dword [rsp + 0x50]
mov r9, qword [rbp + 0x57]
mov r11, qword [rbp - 0x61]
jmp 0x18004f852
cmp ecx, 0xd8ae
ja 0x18004f6a0
je 0x18004f66a
cmp ecx, 0x6cd8
je 0x18004f5e7
cmp ecx, 0x8660
je 0x18004f43c
cmp ecx, 0xc55d
jne 0x18004f855
mov ecx, 8
call fcn.18006717c
mov qword [rbp - 0x21], rax
jmp 0x18004f83e
mov rdi, qword [rbp + 0x8f]
mov eax, r12d
movzx ecx, byte [rax + rdi]
test cl, cl
jns 0x18004f4df
mov r8, qword [rbp + 0x6f]
mov edx, 0x61
nop dword [rax + rax]
mov eax, edx
sub eax, 0x60
je 0x18004f499
cmp eax, 1
jne 0x18004f4cf
mov eax, r12d
movzx r13d, byte [rax + rdi]
and r13d, 0x7f
lea eax, [r13 - 1]
cmp eax, 2
ja 0x18004f56b
lea eax, [r12 + r13]
cmp eax, dword [r8]
ja 0x18004f56b
xor eax, eax
mov dword [rbp - 0x51], eax
jmp 0x18004f4d2
inc r12d
test r13d, r13d
je 0x18004f4cc
mov ebx, dword [rbp - 0x51]
nop dword [rax]
nop dword [rax + rax]
movzx ecx, byte [r12 + rdi]
inc r12d
shl ebx, 8
or ecx, ebx
mov ebx, ecx
add r13d, 0xffffffff
jne 0x18004f4b0
mov rbx, qword [rbp - 0x11]
mov dword [rbp - 0x51], ecx
dec r13d
mov eax, dword [rbp - 0x51]
dec edx
cmp edx, 0x5f
ja 0x18004f460
mov edx, dword [rsp + 0x50]
jmp 0x18004f4ea
mov eax, ecx
and eax, 0x7f
mov dword [rbp - 0x51], eax
inc r12d
mov r8, qword [rbp + 0x6f]
add eax, r12d
mov ecx, dword [r8]
cmp eax, ecx
ja 0x18004f56b
xor r13d, r13d
cmp r12d, ecx
jae 0x18004f84e
nop dword [rax]
nop dword [rax + rax]
mov edx, VarR4FromCy
mov eax, edx
sub eax, 0x43
je 0x18004f5bd
sub eax, 1
je 0x18004f588
sub eax, 1
je 0x18004f575
cmp eax, 1
jne 0x18004f5ce
mov eax, r12d
xor esi, esi
inc r12d
movzx r14d, byte [rax + rdi]
test r14b, r14b
jns 0x18004f55f
cmp esi, 4
ja 0x18004f56b
and r14w, 0x7f
inc esi
add r14w, r14w
test r14b, r14b
js 0x18004f545
cmp esi, 4
ja 0x18004f56b
lea eax, [r12 - 1]
add eax, esi
cmp eax, dword [r8]
jbe 0x18004f5ce
mov eax, 7
jmp 0x18004f9ca
mov ecx, esi
lea eax, [rsi - 1]
shr r14w, cl
cmp esi, 1
cmovbe eax, esi
mov esi, eax
jmp 0x18004f5ce
test esi, esi
je 0x18004f5b9
nop dword [rax]
mov eax, r12d
dec esi
movzx eax, byte [rax + rdi]
movzx ecx, al
and cl, 0xc0
cmp cl, 0x80
jne 0x18004f56b
and al, 0x3f
shl r14w, 6
movzx ecx, al
inc r12d
or r14w, cx
test esi, esi
jne 0x18004f590
dec esi
jmp 0x18004f5ce
cmp r13d, dword [r9]
ja 0x18004f87c
mov word [r10 + r13*2], r14w
inc r13d
dec edx
cmp edx, 0x42
ja 0x18004f515
cmp r12d, dword [r8]
jb 0x18004f510
jmp 0x18004f84a
mov eax, dword [r8]
lea rdx, [rbp - 0x79]
mov r8d, 0x8c
mov dword [rbp - 0x79], eax
xor ecx, ecx
call fcn.18002ad40
mov dword [rbp - 0x69], eax
test eax, eax
jne 0x18004f9ca
mov rax, qword [rbp + 0x87]
lea rcx, [0x180000000]
mov r10, qword [rbp + 0x67]
mov edx, 0
movsxd rax, dword [rax]
shl rax, 7
mov ecx, dword [rax + rcx + 0xa0ebc]
mov rax, qword [rbp + 0x5f]
mov dword [rbp - 0x6d], ecx
mov eax, dword [rax]
test al, 7
setne dl
shr eax, 3
add edx, eax
mov eax, dword [r10]
mov dword [rsp + 0x50], edx
cmp eax, edx
ja 0x18004f889
add eax, 2
add eax, ecx
cmp edx, eax
jb 0x18004f889
mov r9, qword [rbp + 0x57]
mov r11, qword [rbp - 0x61]
jmp 0x18004f84e
mov ecx, edx
mov edi, edx
call fcn.18006717c
mov ecx, edi
mov qword [rbp - 0x39], rax
mov r15, rax
call fcn.18006717c
mov ecx, edi
mov qword [rbp - 0x41], rax
call fcn.18006717c
mov r10, qword [rbp + 0x67]
mov r11, rax
mov qword [rbp - 0x61], rax
mov r9, qword [rbp + 0x57]
jmp 0x18004f84a
cmp ecx, 0x12796
je 0x18004f807
cmp ecx, 0x14484
je 0x18004f749
cmp ecx, 0x189cf
jne 0x18004f855
mov rdi, qword [rbp + 0x8f]
lea r9, [0x180000000]
mov r8d, dword [r10]
mov rdx, qword [rbp + 0x6f]
mov rcx, qword [rbp - 0x21]
movsxd rax, dword [rdi]
shl rax, 7
call qword [rax + r9 + 0xa0f10]
mov dword [rbp - 0x49], eax
test eax, eax
jne 0x18004f8df
movsxd rax, dword [rdi]
lea r8, [0x180000000]
mov rdx, qword [rbp + 0x57]
mov rcx, qword [rbp - 0x21]
shl rax, 7
call qword [rax + r8 + 0xa0f18]
mov r8, qword [rbp + 0x4f]
lea rcx, [0x180000000]
mov r10, qword [rbp + 0x67]
mov edx, dword [rsp + 0x50]
mov r9, qword [rbp + 0x57]
mov r11, qword [rbp - 0x61]
mov dword [rbp - 0x49], eax
movsxd rax, dword [rdi]
shl rax, 7
mov eax, dword [rax + rcx + 0xa0ebc]
mov dword [r8], eax
jmp 0x18004f852
mov ecx, edx
call fcn.18006717c
mov r11, qword [rbp - 0x61]
mov qword [rbp - 0x31], rax
test r15, r15
je 0x18004f76c
test rdi, rdi
je 0x18004f76c
test r11, r11
je 0x18004f76c
test rax, rax
jne 0x18004f7b9
mov edi, 0x38
mov eax, edi
sub eax, 0x36
je 0x18004f8b9
sub eax, 1
je 0x18004f7a1
cmp eax, 1
jne 0x18004f7ae
test r15, r15
je 0x18004f793
mov rcx, r15
call fcn.180065650
mov rax, qword [rbp - 0x41]
test rax, rax
je 0x18004f7ae
mov rcx, rax
jmp 0x18004f7a9
test r11, r11
je 0x18004f7ae
mov rcx, r11
call fcn.180065650
mov r11, qword [rbp - 0x61]
dec edi
cmp edi, 0x35
ja 0x18004f771
mov r10, qword [rbp + 0x67]
mov edx, dword [r10]
test edx, edx
je 0x18004f697
mov rax, qword [rbp + 0x4f]
mov rcx, r11
mov r8, qword [rbp + 0x57]
movsxd rax, dword [rax]
lea r9, [rax + rax*4]
add r9, r9
lea rax, [0x180000000]
call qword [rax + r9*8 + 0x9e8e8]
mov r10, qword [rbp + 0x67]
mov edx, dword [rsp + 0x50]
cmp eax, dword [r10]
jne 0x18004f893
mov r9, qword [rbp + 0x57]
mov r11, qword [rbp - 0x61]
jmp 0x18004f84e
mov rdi, qword [rbp - 0x21]
test rdi, rdi
je 0x18004f8c7
mov rax, qword [rbp + 0x8f]
lea rdx, [0x180000000]
mov rcx, rdi
movsxd rax, dword [rax]
shl rax, 7
call qword [rax + rdx + 0xa0f08]
mov dword [rbp - 0x49], eax
test eax, eax
jne 0x18004f8df
mov r9, qword [rbp + 0x57]
mov r10, qword [rbp + 0x67]
mov r11, qword [rbp - 0x61]
mov edx, dword [rsp + 0x50]
mov r8, qword [rbp + 0x4f]
mov ecx, dword [rbp - 0x71]
imul eax, dword [rbp + 0x97], 0x6b
add ecx, eax
mov dword [rbp - 0x71], ecx
cmp ecx, dword [rbp - 0x29]
ja 0x18004f8d1
mov rdi, qword [rbp - 0x41]
jmp 0x18004ef94
mov dword [r8], edx
mov eax, 6
jmp 0x18004f9ca
mov dword [r9], r13d
mov eax, 6
jmp 0x18004f9ca
mov eax, 0x16
jmp 0x18004f9ca
mov r15d, dword [rbp + 0x97]
mov esi, 0x41c28
mov r14d, dword [rbp + 0x97]
mov r12, qword [rbp + 0x8f]
mov dword [rbp - 0x69], 9
jmp 0x18004fed7
mov rcx, qword [rbp - 0x31]
test rcx, rcx
je 0x18004f8c7
call fcn.180065650
mov eax, SafeArrayGetDim
jmp 0x18004f9ca
mov rdi, qword [rbp - 0x39]
mov rcx, qword [rbp - 0x41]
mov r8d, dword [rbp - 0x6d]
jmp 0x18004f95b
mov r15d, dword [rbp + 0x97]
mov r14d, dword [rbp + 0x97]
mov r12, qword [rbp + 0x8f]
mov rbx, qword [rbp - 0x21]
lea rax, [rbp - 0x59]
xor edi, edi
mov qword [rbp - 0x59], 8
mov qword [rsp + 0x40], rdi
xor r8d, r8d
mov qword [rsp + 0x38], rdi
xor edx, edx
mov qword [rsp + 0x30], rax
xor ecx, ecx
mov qword [rsp + 0x28], rbx
lea r9d, [rdi + 0x12]
mov qword [rsp + 0x20], rdi
mov esi, 0xeb
call fcn.180002540
mov rcx, rbx
call fcn.180065650
mov ebx, dword [rbp - 0x49]
jmp 0x18004fed3
mov rcx, qword [rbp - 0x59]
mov r8d, dword [rbp + 0x97]
mov qword [rbp - 0x41], rcx
mov dword [rbp - 0x6d], r8d
mov qword [rbp - 0x39], rdi
mov eax, dword [rbp + 0x97]
mov esi, eax
mov r15d, dword [rbp + 0x97]
mov r14d, dword [rbp + 0x97]
mov r12, qword [rbp + 0x8f]
imul eax, eax, 0x950
cmp esi, eax
ja 0x18004f9c8
cmp esi, 0x259aa
ja 0x18004fcf4
je 0x18004fba0
cmp esi, 0x89b2
ja 0x18004fa86
je 0x18004f9c8
mov eax, esi
sub eax, 0xa0
je 0x18004fa7c
sub eax, 0x4b
je 0x18004f8f4
sub eax, 0x17
je 0x18004f9de
cmp eax, 0x5cbe
jne 0x18004fedf
mov eax, ebx
add rsp, 0xd8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
mov rax, qword [rbp + 0x87]
lea rcx, [rbp - 0x19]
lea rdx, [0x180000000]
movsxd rax, dword [rax]
shl rax, 7
call qword [rax + rdx + 0xa0f08]
mov dword [rbp - 0x69], eax
test eax, eax
jne 0x18004fd54
xor ecx, ecx
mov qword [rbp - 0x59], 8
mov qword [rsp + 0x40], rcx
lea rax, [rbp - 0x59]
mov qword [rsp + 0x38], rcx
xor r8d, r8d
mov qword [rsp + 0x30], rax
xor edx, edx
mov qword [rsp + 0x28], rdi
lea r9d, [rcx + 0x12]
mov qword [rsp + 0x20], rcx
call fcn.180002540
mov rcx, qword [rbp + 0x87]
lea r9, [0x180000000]
mov r8d, 8
mov rdx, rdi
movsxd rax, dword [rcx]
lea rcx, [rbp - 0x19]
shl rax, 7
call qword [rax + r9 + 0xa0f10]
mov edx, dword [rsp + 0x50]
mov dword [rbp - 0x69], eax
test eax, eax
jne 0x18004fd58
jmp 0x18004fed7
mov dword [r9], r13d
xor ebx, ebx
jmp 0x18004fedf
cmp esi, 0x972c
je 0x18004fb05
cmp esi, 0x12d56
je 0x18004facd
cmp esi, 0x1c380
jne 0x18004fedf
mov eax, r15d
mov rdx, r11
inc r15d
mov ecx, r15d
add rcx, rdi
mov byte [rax + rdi], 1
mov r8d, dword [r10]
call fcn.18005d880
mov r10, qword [rbp + 0x67]
mov edx, dword [rsp + 0x50]
add r15d, dword [r10]
jmp 0x18004fedb
mov eax, edx
mov ecx, r15d
sub eax, dword [r10]
add rcx, rdi
sub eax, r8d
xor edx, edx
lea r8d, [rax - 2]
call fcn.18005e640
mov r10, qword [rbp + 0x67]
mov edx, dword [rsp + 0x50]
mov eax, edx
mov r8d, dword [rbp - 0x6d]
sub eax, dword [r10]
sub eax, r8d
add eax, 0xfffffffe
add r15d, eax
jmp 0x18004fedf
mov rcx, qword [rbp + 0x6f]
lea r9, [0x180000000]
mov rdi, qword [rbp + 0x87]
mov rdx, r12
mov r8d, dword [rcx]
lea rcx, [rbp - 0x19]
movsxd rax, dword [rdi]
shl rax, 7
call qword [rax + r9 + 0xa0f10]
mov dword [rbp - 0x69], eax
test eax, eax
jne 0x18004fd54
mov rcx, qword [rbp + 0x67]
lea r9, [0x180000000]
movsxd rax, dword [rdi]
mov rdx, qword [rbp - 0x61]
shl rax, 7
mov r8d, dword [rcx]
lea rcx, [rbp - 0x19]
call qword [rax + r9 + 0xa0f10]
mov dword [rbp - 0x69], eax
test eax, eax
jne 0x18004fd54
movsxd rax, dword [rdi]
lea rcx, [rbp - 0x19]
mov rdx, qword [rbp - 0x31]
lea r8, [0x180000000]
shl rax, 7
call qword [rax + r8 + 0xa0f18]
mov edx, dword [rsp + 0x50]
mov dword [rbp - 0x69], eax
test eax, eax
jne 0x18004fd58
xor r15d, r15d
jmp 0x18004fed7
mov rax, qword [rbp + 0x87]
mov edi, edx
mov r9, qword [rbp - 0x31]
lea rdx, [rbp - 0x51]
sub edi, r8d
mov dword [rbp - 0x51], r8d
mov r8, rcx
dec edi
mov eax, dword [rax]
mov ecx, 0xf8
mov dword [rbp - 0x29], eax
lea rax, [rbp - 0x29]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x79]
mov qword [rsp + 0x20], rax
mov dword [rbp - 0x79], edi
call fcn.18004b0a0
mov dword [rbp - 0x69], eax
test eax, eax
jne 0x18004fd54
xor r14d, r14d
test edi, edi
je 0x18004fcd1
mov r9, qword [rbp - 0x39]
mov r10, qword [rbp - 0x41]
cmp edi, 0x40
jb 0x18004fc9c
lea eax, [rdi - 1]
lea rdx, [rax + r9]
add rax, r10
cmp r9, rax
ja 0x18004fc20
cmp rdx, r10
jae 0x18004fc9c
mov r8d, edi
and r8d, 0xffffffc0
mov edx, 0x20
nop dword [rax]
movdqu xmm0, xmmword [r14 + r9]
lea eax, [rdx - 0x10]
movdqu xmm1, xmmword [r14 + r10]
pxor xmm1, xmm0
movdqu xmmword [r14 + r9], xmm1
add r14d, 0x40
movdqu xmm0, xmmword [rax + r9]
movdqu xmm1, xmmword [rax + r10]
pxor xmm1, xmm0
movdqu xmmword [rax + r9], xmm1
mov eax, edx
movdqu xmm0, xmmword [rax + r9]
movdqu xmm1, xmmword [rax + r10]
pxor xmm1, xmm0
movdqu xmmword [rax + r9], xmm1
lea eax, [rdx + 0x10]
add edx, 0x40
movdqu xmm0, xmmword [rax + r9]
movdqu xmm1, xmmword [rax + r10]
pxor xmm1, xmm0
movdqu xmmword [rax + r9], xmm1
cmp r14d, r8d
jb 0x18004fc30
cmp r14d, edi
jae 0x18004fcd1
mov ecx, r14d
mov r8, r10
add rcx, r9
sub r8, r9
mov edx, edi
sub edx, r14d
mov r14d, edi
nop word [rax + rax]
movzx eax, byte [r8 + rcx]
xor byte [rcx], al
lea rcx, [rcx + 1]
sub rdx, 1
jne 0x18004fcc0
mov rax, qword [rbp + 0x77]
mov edx, dword [rsp + 0x50]
cmp dword [rax], edx
jae 0x18004fed7
mov dword [rax], edx
mov esi, 0x41c28
mov dword [rbp - 0x69], 6
jmp 0x18004fed7
cmp esi, 0x4b252
ja 0x18004fe8d
je 0x18004fdb5
cmp esi, 0x2efd4
je 0x18004fd98
cmp esi, 0x385fe
je 0x18004fd62
cmp esi, 0x41c28
jne 0x18004fedf
mov rax, qword [rbp + 0x5f]
lea ecx, [rdx*8]
mov dword [rbp - 0x69], 0
sub ecx, dword [rax]
mov eax, 0xff
inc ecx
sar eax, cl
mov rcx, qword [rbp + 0x7f]
and byte [rcx], al
mov rax, qword [rbp + 0x77]
mov dword [rax], edx
jmp 0x18004fed7
mov edx, dword [rsp + 0x50]
mov esi, 0x41c28
jmp 0x18004fed7
mov rdi, qword [rbp + 0x7f]
mov eax, edx
mov rdx, qword [rbp - 0x31]
sub eax, r8d
dec eax
add r14d, eax
mov ecx, r14d
add rcx, rdi
call fcn.18005d880
mov r8d, dword [rbp - 0x6d]
mov r10, qword [rbp + 0x67]
add r14d, r8d
mov edx, dword [rsp + 0x50]
mov byte [r14 + rdi], 0xbc
jmp 0x18004fedf
mov rcx, qword [rbp + 0x7f]
mov eax, edx
sub eax, r8d
xor r14d, r14d
mov rdx, rdi
lea r8d, [rax - 1]
call fcn.18005d880
jmp 0x18004fed3
xor ecx, ecx
mov edi, edx
mov qword [rsp + 0x40], rcx
lea rax, [rbp - 0x59]
mov qword [rsp + 0x38], rcx
xor r8d, r8d
mov qword [rsp + 0x30], rax
xor edx, edx
mov rax, qword [rbp - 0x39]
lea r9d, [rcx + 0x12]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
mov qword [rbp - 0x59], rdi
call fcn.180002540
xor ecx, ecx
mov qword [rbp - 0x59], rdi
mov qword [rsp + 0x40], rcx
lea rax, [rbp - 0x59]
mov qword [rsp + 0x38], rcx
xor r8d, r8d
mov qword [rsp + 0x30], rax
xor edx, edx
mov rax, qword [rbp - 0x41]
lea r9d, [rcx + 0x12]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
call fcn.180002540
mov rcx, qword [rbp - 0x61]
lea rax, [rbp - 0x59]
xor edx, edx
mov qword [rbp - 0x59], rdi
mov qword [rsp + 0x40], rdx
xor r8d, r8d
mov qword [rsp + 0x38], rdx
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], rcx
lea r9d, [rdx + 0x12]
xor ecx, ecx
mov qword [rsp + 0x20], rdx
call fcn.180002540
xor ecx, ecx
mov qword [rbp - 0x59], rdi
mov qword [rsp + 0x40], rcx
lea rax, [rbp - 0x59]
mov qword [rsp + 0x38], rcx
xor r8d, r8d
mov qword [rsp + 0x30], rax
xor edx, edx
mov rax, qword [rbp - 0x31]
lea r9d, [rcx + 0x12]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
call fcn.180002540
jmp 0x18004fed3
cmp esi, 0x5487c
je 0x18004feb8
cmp esi, 0x5dea6
je 0x18004feab
cmp esi, 0x674d0
je 0x18004f9c8
jmp 0x18004fedf
mov rcx, rdi
call fcn.180065650
mov ebx, dword [rbp - 0x69]
jmp 0x18004fed3
mov rcx, qword [rbp - 0x31]
call fcn.180065650
mov rcx, qword [rbp - 0x61]
call fcn.180065650
mov rcx, qword [rbp - 0x41]
call fcn.180065650
mov edx, dword [rsp + 0x50]
mov r10, qword [rbp + 0x67]
mov r8d, dword [rbp - 0x6d]
imul eax, dword [rbp + 0x97], 0x95
mov rdi, qword [rbp - 0x39]
mov rcx, qword [rbp - 0x41]
mov r9, qword [rbp + 0x57]
mov r11, qword [rbp - 0x61]
add esi, eax
mov eax, dword [rbp + 0x97]
jmp 0x18004f978