Function at 0x140069960
Capabilities:
Encrypt data using aes
Reference aes constants
Resolve function by parsing pe exports

Disassembly:
lea r12, [rsp - 0xb0]
cmp r12, qword [r14 + 0x10]
jbe 0x14006ac26
push rbp
mov rbp, rsp
sub rsp, 0x128
mov qword [rsp + 0x170], r10
mov qword [rsp + 0x168], r9
mov qword [rsp + 0x140], rbx
mov qword [rsp + 0x138], rax
mov qword [rsp + 0x158], rsi
mov qword [rsp + 0x150], rdi
mov rax, qword [rsp + 0x130]
call fcn.14005ec20
mov rcx, qword [rsp + 0x170]
cmp rcx, 0xf
jbe 0x14006ac16
mov rax, qword [rsp + 0x168]
lea rcx, [rax + 0xf]
mov qword [rsp + 0x120], rcx
mov rax, rcx
call fcn.14005b2a0
mov rax, qword [rsp + 0x168]
lea rcx, [rax + 4]
mov qword [rsp + 0xc0], rcx
lea rdx, [rax + 8]
mov qword [rsp + 0xb8], rdx
lea rbx, [rax + 0xc]
mov qword [rsp + 0xb0], rbx
lea rsi, [rax + 3]
mov qword [rsp + 0x118], rsi
lea rdi, [rax + 2]
mov qword [rsp + 0x110], rdi
lea r8, [rax + 1]
mov qword [rsp + 0x108], r8
lea r9, [rax + 7]
mov qword [rsp + 0x100], r9
lea r10, [rax + 6]
mov qword [rsp + 0xf8], r10
lea r11, [rax + 5]
mov qword [rsp + 0xf0], r11
lea r12, [rax + 0xb]
mov qword [rsp + 0xe8], r12
lea r13, [rax + 0xa]
mov qword [rsp + 0xe0], r13
lea r15, [rax + 9]
mov qword [rsp + 0xd8], r15
lea rbx, [rax + 0xe]
mov qword [rsp + 0xd0], rbx
lea rbx, [rax + 0xd]
mov qword [rsp + 0xc8], rbx
nop
mov rax, rsi
nop dword [rax]
call fcn.14005b2a0
mov rax, qword [rsp + 0x118]
call fcn.14005b2a0
mov rcx, qword [rsp + 0x168]
movzx edx, byte [rcx + 3]
mov dword [rsp + 0x74], edx
mov rax, qword [rsp + 0x110]
call fcn.14005b2a0
mov rcx, qword [rsp + 0x168]
movzx edx, byte [rcx + 2]
mov dword [rsp + 0x70], edx
mov rax, qword [rsp + 0x108]
call fcn.14005b2a0
mov ecx, dword [rsp + 0x70]
shl ecx, 8
mov edx, dword [rsp + 0x74]
or edx, ecx
mov dword [rsp + 0x74], edx
mov rax, qword [rsp + 0x168]
movzx ecx, byte [rax + 1]
mov dword [rsp + 0x70], ecx
call fcn.14005b2a0
mov ecx, dword [rsp + 0x70]
shl ecx, 0x10
mov edx, dword [rsp + 0x74]
or edx, ecx
mov dword [rsp + 0x74], edx
mov rcx, qword [rsp + 0x168]
movzx ebx, byte [rcx]
shl ebx, 0x18
mov dword [rsp + 0x70], ebx
mov rax, qword [rsp + 0x100]
nop dword [rax]
call fcn.14005b2a0
mov rax, qword [rsp + 0x100]
call fcn.14005b2a0
mov rcx, qword [rsp + 0x168]
movzx edx, byte [rcx + 7]
mov dword [rsp + 0x6c], edx
mov rax, qword [rsp + 0xf8]
call fcn.14005b2a0
mov rcx, qword [rsp + 0x168]
movzx edx, byte [rcx + 6]
mov dword [rsp + 0x68], edx
mov rax, qword [rsp + 0xf0]
call fcn.14005b2a0
mov ecx, dword [rsp + 0x68]
shl ecx, 8
mov edx, dword [rsp + 0x6c]
or edx, ecx
mov dword [rsp + 0x6c], edx
mov rcx, qword [rsp + 0x168]
movzx ebx, byte [rcx + 5]
mov dword [rsp + 0x68], ebx
mov rax, qword [rsp + 0xc0]
call fcn.14005b2a0
mov ecx, dword [rsp + 0x68]
shl ecx, 0x10
mov edx, dword [rsp + 0x6c]
or ecx, edx
mov dword [rsp + 0x6c], ecx
mov rdx, qword [rsp + 0x168]
movzx ebx, byte [rdx + 4]
shl ebx, 0x18
mov dword [rsp + 0x68], ebx
mov rax, qword [rsp + 0xe8]
call fcn.14005b2a0
mov rax, qword [rsp + 0xe8]
call fcn.14005b2a0
mov rcx, qword [rsp + 0x168]
movzx edx, byte [rcx + 0xb]
mov dword [rsp + 0x64], edx
mov rax, qword [rsp + 0xe0]
call fcn.14005b2a0
mov rcx, qword [rsp + 0x168]
movzx edx, byte [rcx + 0xa]
mov dword [rsp + 0x60], edx
mov rax, qword [rsp + 0xd8]
call fcn.14005b2a0
mov ecx, dword [rsp + 0x60]
shl ecx, 8
mov edx, dword [rsp + 0x64]
or edx, ecx
mov dword [rsp + 0x64], edx
mov rcx, qword [rsp + 0x168]
movzx ebx, byte [rcx + 9]
mov dword [rsp + 0x60], ebx
mov rax, qword [rsp + 0xb8]
nop dword [rax + rax]
call fcn.14005b2a0
mov ecx, dword [rsp + 0x60]
shl ecx, 0x10
mov edx, dword [rsp + 0x64]
or ecx, edx
mov dword [rsp + 0x64], ecx
mov rdx, qword [rsp + 0x168]
movzx ebx, byte [rdx + 8]
shl ebx, 0x18
mov dword [rsp + 0x60], ebx
mov rax, qword [rsp + 0x120]
call fcn.14005b2a0
mov rax, qword [rsp + 0x120]
nop
call fcn.14005b2a0
mov rcx, qword [rsp + 0x168]
movzx edx, byte [rcx + 0xf]
mov dword [rsp + 0x5c], edx
mov rax, qword [rsp + 0xd0]
nop dword [rax]
call fcn.14005b2a0
mov rcx, qword [rsp + 0x168]
movzx edx, byte [rcx + 0xe]
mov dword [rsp + 0x58], edx
mov rax, qword [rsp + 0xc8]
nop dword [rax]
call fcn.14005b2a0
mov ecx, dword [rsp + 0x58]
shl ecx, 8
mov edx, dword [rsp + 0x5c]
or edx, ecx
mov dword [rsp + 0x5c], edx
mov rcx, qword [rsp + 0x168]
movzx ebx, byte [rcx + 0xd]
mov dword [rsp + 0x58], ebx
mov rax, qword [rsp + 0xb0]
call fcn.14005b2a0
mov ecx, dword [rsp + 0x58]
shl ecx, 0x10
mov edx, dword [rsp + 0x5c]
or ecx, edx
mov rdx, qword [rsp + 0x168]
movzx edx, byte [rdx + 0xc]
shl edx, 0x18
mov ebx, dword [rsp + 0x70]
mov esi, dword [rsp + 0x74]
or ebx, esi
mov esi, dword [rsp + 0x68]
mov edi, dword [rsp + 0x6c]
or esi, edi
mov edi, dword [rsp + 0x60]
mov r8d, dword [rsp + 0x64]
or edi, r8d
or edx, ecx
mov rcx, qword [rsp + 0x140]
nop dword [rax]
test rcx, rcx
jbe 0x14006ac0c
mov dword [rsp + 0x1c], ebx
mov dword [rsp + 0x18], esi
mov dword [rsp + 0x14], edi
mov dword [rsp + 0x10], edx
mov rax, qword [rsp + 0x138]
call fcn.14005b2a0
mov ecx, dword [rsp + 0x1c]
mov rax, qword [rsp + 0x138]
xor ecx, dword [rax]
mov rdx, qword [rsp + 0x140]
nop dword [rax]
cmp rdx, 1
jbe 0x14006abff
mov dword [rsp + 0x44], ecx
lea rcx, [rax + 4]
mov rax, rcx
call fcn.14005b2a0
mov ecx, dword [rsp + 0x18]
mov rax, qword [rsp + 0x138]
xor ecx, dword [rax + 4]
mov rdx, qword [rsp + 0x140]
cmp rdx, 2
jbe 0x14006abf2
mov dword [rsp + 0x40], ecx
lea rcx, [rax + 8]
mov rax, rcx
call fcn.14005b2a0
mov ecx, dword [rsp + 0x14]
mov rax, qword [rsp + 0x138]
xor ecx, dword [rax + 8]
mov rdx, qword [rsp + 0x140]
cmp rdx, 3
jbe 0x14006abe5
mov dword [rsp + 0x3c], ecx
lea rcx, [rax + 0xc]
mov rax, rcx
call fcn.14005b2a0
mov rcx, qword [rsp + 0x140]
mov rdx, rcx
shr rdx, 2
mov ebx, dword [rsp + 0x10]
mov rsi, qword [rsp + 0x138]
xor ebx, dword [rsi + 0xc]
add rdx, 0xfffffffffffffffe
mov qword [rsp + 0x80], rdx
mov edi, dword [rsp + 0x40]
mov r8d, dword [rsp + 0x3c]
mov r9d, dword [rsp + 0x44]
xor eax, eax
xor r10d, r10d
xor r11d, r11d
xor r12d, r12d
xor r13d, r13d
mov r15d, 4
jmp 0x140069fe7
mov dword [rsp + 0x6c], edx
mov rcx, qword [rsp + 0x138]
lea rdx, [rcx + rax*4]
lea rdx, [rdx + 0xc]
mov rax, rdx
call fcn.14005b2a0
mov rcx, qword [rsp + 0x88]
mov rdx, qword [rsp + 0x138]
mov ebx, dword [rdx + rcx*4 + 0xc]
mov dword [rsp + 0x68], ebx
mov esi, dword [rsp + 0x38]
shr esi, 0x18
movzx esi, sil
mov qword [rsp + 0x90], rsi
lea rdi, [0x1400d06c0]
lea rax, [rdi + rsi*4]
nop
call fcn.14005b2a0
mov ecx, dword [rsp + 0x68]
mov rdx, qword [rsp + 0x90]
lea rbx, [0x1400d06c0]
xor ecx, dword [rbx + rdx*4]
mov dword [rsp + 0x68], ecx
mov edx, dword [rsp + 0x3c]
shr edx, 0x10
movzx edx, dl
mov qword [rsp + 0x90], rdx
lea rsi, [0x1400d0ac0]
lea rax, [rsi + rdx*4]
nop dword [rax]
call fcn.14005b2a0
mov ecx, dword [rsp + 0x68]
mov rdx, qword [rsp + 0x90]
lea rbx, [0x1400d0ac0]
xor ecx, dword [rbx + rdx*4]
mov dword [rsp + 0x68], ecx
mov edx, dword [rsp + 0x40]
shr edx, 8
movzx edx, dl
mov qword [rsp + 0x90], rdx
lea rsi, [0x1400d0ec0]
lea rax, [rsi + rdx*4]
nop dword [rax]
call fcn.14005b2a0
mov ecx, dword [rsp + 0x68]
mov rdx, qword [rsp + 0x90]
lea rbx, [0x1400d0ec0]
xor ecx, dword [rbx + rdx*4]
mov dword [rsp + 0x68], ecx
mov edx, dword [rsp + 0x44]
movzx edx, dl
mov qword [rsp + 0x90], rdx
lea rsi, [0x1400d12c0]
lea rax, [rsi + rdx*4]
call fcn.14005b2a0
mov rax, qword [rsp + 0x78]
inc rax
mov r11d, dword [rsp + 0x68]
mov rcx, qword [rsp + 0x90]
lea rdx, [0x1400d12c0]
xor r11d, dword [rdx + rcx*4]
mov r15, qword [rsp + 0x88]
add r15, 4
mov rcx, qword [rsp + 0x80]
mov rbx, qword [rsp + 0x140]
mov rsi, qword [rsp + 0x138]
mov edi, dword [rsp + 0x70]
mov r8d, dword [rsp + 0x6c]
mov r9d, dword [rsp + 0x74]
mov rcx, rbx
mov rdx, qword [rsp + 0x80]
mov ebx, r11d
mov r10d, r9d
mov r12d, r8d
mov r13d, edi
mov qword [rsp + 0x88], r15
cmp rax, rdx
jge 0x14006a3d6
nop dword [rax + rax]
cmp rcx, r15
jbe 0x14006abdb
mov qword [rsp + 0x78], rax
mov dword [rsp + 0x40], edi
mov dword [rsp + 0x3c], r8d
mov dword [rsp + 0x38], ebx
mov dword [rsp + 0x44], r9d
lea rax, [rsi + r15*4]
call fcn.14005b2a0
mov rcx, qword [rsp + 0x88]
mov rdx, qword [rsp + 0x138]
mov ebx, dword [rdx + rcx*4]
mov dword [rsp + 0x74], ebx
mov esi, dword [rsp + 0x44]
shr esi, 0x18
movzx esi, sil
mov qword [rsp + 0x90], rsi
lea r8, [0x1400d06c0]
lea rax, [r8 + rsi*4]
nop
call fcn.14005b2a0
mov ecx, dword [rsp + 0x74]
mov rdx, qword [rsp + 0x90]
lea rbx, [0x1400d06c0]
xor ecx, dword [rbx + rdx*4]
mov dword [rsp + 0x74], ecx
mov edx, dword [rsp + 0x38]
shr edx, 0x10
movzx edx, dl
mov qword [rsp + 0x90], rdx
lea rdi, [0x1400d0ac0]
lea rax, [rdi + rdx*4]
nop dword [rax]
call fcn.14005b2a0
mov ecx, dword [rsp + 0x74]
mov rdx, qword [rsp + 0x90]
lea rbx, [0x1400d0ac0]
xor ecx, dword [rbx + rdx*4]
mov dword [rsp + 0x74], ecx
mov edx, dword [rsp + 0x3c]
shr edx, 8
movzx edx, dl
mov qword [rsp + 0x90], rdx
lea rdi, [0x1400d0ec0]
lea rax, [rdi + rdx*4]
nop dword [rax]
call fcn.14005b2a0
mov ecx, dword [rsp + 0x74]
mov rdx, qword [rsp + 0x90]
lea rbx, [0x1400d0ec0]
xor ecx, dword [rbx + rdx*4]
mov dword [rsp + 0x74], ecx
mov edx, dword [rsp + 0x40]
movzx esi, dl
mov qword [rsp + 0x90], rsi
lea rdi, [0x1400d12c0]
lea rax, [rdi + rsi*4]
call fcn.14005b2a0
mov rax, qword [rsp + 0x88]
lea rcx, [rax + 1]
mov edx, dword [rsp + 0x74]
mov rbx, qword [rsp + 0x90]
lea rsi, [0x1400d12c0]
xor edx, dword [rsi + rbx*4]
mov rbx, qword [rsp + 0x140]
cmp rbx, rcx
jbe 0x14006abd0
mov dword [rsp + 0x74], edx
mov rcx, qword [rsp + 0x138]
lea rdx, [rcx + rax*4]
lea rdx, [rdx + 4]
mov rax, rdx
call fcn.14005b2a0
mov rcx, qword [rsp + 0x88]
mov rdx, qword [rsp + 0x138]
mov ebx, dword [rdx + rcx*4 + 4]
mov dword [rsp + 0x70], ebx
mov esi, dword [rsp + 0x40]
shr esi, 0x18
movzx esi, sil
mov qword [rsp + 0x90], rsi
lea r8, [0x1400d06c0]
lea rax, [r8 + rsi*4]
call fcn.14005b2a0
mov ecx, dword [rsp + 0x70]
mov rdx, qword [rsp + 0x90]
lea rbx, [0x1400d06c0]
xor ecx, dword [rbx + rdx*4]
mov dword [rsp + 0x70], ecx
mov edx, dword [rsp + 0x44]
shr edx, 0x10
movzx edx, dl
mov qword [rsp + 0x90], rdx
lea rdi, [0x1400d0ac0]
lea rax, [rdi + rdx*4]
nop
call fcn.14005b2a0
mov ecx, dword [rsp + 0x70]
mov rdx, qword [rsp + 0x90]
lea rbx, [0x1400d0ac0]
xor ecx, dword [rbx + rdx*4]
mov dword [rsp + 0x70], ecx
mov edx, dword [rsp + 0x38]
shr edx, 8
movzx edx, dl
mov qword [rsp + 0x90], rdx
lea rdi, [0x1400d0ec0]
lea rax, [rdi + rdx*4]
nop dword [rax]
call fcn.14005b2a0
mov ecx, dword [rsp + 0x70]
mov rdx, qword [rsp + 0x90]
lea rbx, [0x1400d0ec0]
xor ecx, dword [rbx + rdx*4]
mov dword [rsp + 0x70], ecx
mov edx, dword [rsp + 0x3c]
movzx esi, dl
mov qword [rsp + 0x90], rsi
lea rdi, [0x1400d12c0]
lea rax, [rdi + rsi*4]
call fcn.14005b2a0
mov rax, qword [rsp + 0x88]
lea rcx, [rax + 2]
mov edx, dword [rsp + 0x70]
mov rbx, qword [rsp + 0x90]
lea rsi, [0x1400d12c0]
xor edx, dword [rsi + rbx*4]
mov rbx, qword [rsp + 0x140]
cmp rbx, rcx
jbe 0x14006abc5
mov dword [rsp + 0x70], edx
mov rcx, qword [rsp + 0x138]
lea rdx, [rcx + rax*4]
lea rdx, [rdx + 8]
mov rax, rdx
call fcn.14005b2a0
mov rcx, qword [rsp + 0x88]
mov rdx, qword [rsp + 0x138]
mov ebx, dword [rdx + rcx*4 + 8]
mov dword [rsp + 0x6c], ebx
mov esi, dword [rsp + 0x3c]
shr esi, 0x18
movzx esi, sil
mov qword [rsp + 0x90], rsi
lea r8, [0x1400d06c0]
lea rax, [r8 + rsi*4]
call fcn.14005b2a0
mov ecx, dword [rsp + 0x6c]
mov rdx, qword [rsp + 0x90]
lea rbx, [0x1400d06c0]
xor ecx, dword [rbx + rdx*4]
mov dword [rsp + 0x6c], ecx
mov edx, dword [rsp + 0x40]
shr edx, 0x10
movzx edx, dl
mov qword [rsp + 0x90], rdx
lea rdi, [0x1400d0ac0]
lea rax, [rdi + rdx*4]
nop
call fcn.14005b2a0
mov ecx, dword [rsp + 0x6c]
mov rdx, qword [rsp + 0x90]
lea rbx, [0x1400d0ac0]
xor ecx, dword [rbx + rdx*4]
mov dword [rsp + 0x6c], ecx
mov edx, dword [rsp + 0x44]
shr edx, 8
movzx edx, dl
mov qword [rsp + 0x90], rdx
lea rdi, [0x1400d0ec0]
lea rax, [rdi + rdx*4]
nop dword [rax]
call fcn.14005b2a0
mov ecx, dword [rsp + 0x6c]
mov rdx, qword [rsp + 0x90]
lea rbx, [0x1400d0ec0]
xor ecx, dword [rbx + rdx*4]
mov dword [rsp + 0x6c], ecx
mov edx, dword [rsp + 0x38]
movzx esi, dl
mov qword [rsp + 0x90], rsi
lea rdi, [0x1400d12c0]
lea rax, [rdi + rsi*4]
call fcn.14005b2a0
mov rax, qword [rsp + 0x88]
lea rcx, [rax + 3]
mov edx, dword [rsp + 0x6c]
mov rbx, qword [rsp + 0x90]
lea rsi, [0x1400d12c0]
xor edx, dword [rsi + rbx*4]
mov rbx, qword [rsp + 0x140]
cmp rbx, rcx
ja 0x140069e6d
jmp 0x14006abb9
mov dword [rsp + 0x30], r13d
mov dword [rsp + 0x2c], r12d
mov dword [rsp + 0x28], r11d
mov dword [rsp + 0x34], r10d
shr r10d, 0x18
mov dword [rsp + 0x74], r10d
lea rdx, [0x1400cfae0]
lea rax, [rdx + r10]
nop
call fcn.14005b2a0
mov ecx, dword [rsp + 0x74]
lea rdx, [0x1400cfae0]
movzx ecx, byte [rdx + rcx]
shl ecx, 0x18
mov dword [rsp + 0x74], ecx
mov ebx, dword [rsp + 0x28]
shr ebx, 0x10
movzx ebx, bl
mov dword [rsp + 0x70], ebx
lea rax, [rbx + rdx]
call fcn.14005b2a0
mov ecx, dword [rsp + 0x70]
lea rdx, [0x1400cfae0]
movzx ecx, byte [rdx + rcx]
shl ecx, 0x10
mov ebx, dword [rsp + 0x74]
or ebx, ecx
mov dword [rsp + 0x74], ebx
mov ecx, dword [rsp + 0x2c]
shr ecx, 8
movzx ecx, cl
mov dword [rsp + 0x70], ecx
lea rax, [rcx + rdx]
call fcn.14005b2a0
mov ecx, dword [rsp + 0x70]
lea rdx, [0x1400cfae0]
movzx ecx, byte [rdx + rcx]
shl ecx, 8
mov ebx, dword [rsp + 0x74]
or ecx, ebx
mov dword [rsp + 0x74], ecx
mov ebx, dword [rsp + 0x30]
movzx esi, bl
mov dword [rsp + 0x70], esi
lea rax, [rsi + rdx]
call fcn.14005b2a0
mov ecx, dword [rsp + 0x70]
lea rdx, [0x1400cfae0]
movzx ecx, byte [rdx + rcx]
mov dword [rsp + 0x70], ecx
mov ebx, dword [rsp + 0x30]
shr ebx, 0x18
mov dword [rsp + 0x6c], ebx
lea rax, [rbx + rdx]
call fcn.14005b2a0
mov ecx, dword [rsp + 0x6c]
lea rdx, [0x1400cfae0]
movzx ecx, byte [rdx + rcx]
shl ecx, 0x18
mov dword [rsp + 0x6c], ecx
mov ebx, dword [rsp + 0x34]
shr ebx, 0x10
movzx ebx, bl
mov dword [rsp + 0x68], ebx
lea rax, [rbx + rdx]
call fcn.14005b2a0
mov ecx, dword [rsp + 0x68]
lea rdx, [0x1400cfae0]
movzx ecx, byte [rdx + rcx]
shl ecx, 0x10
mov ebx, dword [rsp + 0x6c]
or ebx, ecx
mov dword [rsp + 0x6c], ebx
mov ecx, dword [rsp + 0x28]
shr ecx, 8
movzx ecx, cl
mov dword [rsp + 0x68], ecx
lea rax, [rcx + rdx]
call fcn.14005b2a0
mov ecx, dword [rsp + 0x68]
lea rdx, [0x1400cfae0]
movzx ecx, byte [rdx + rcx]
shl ecx, 8
mov ebx, dword [rsp + 0x6c]
or ecx, ebx
mov dword [rsp + 0x6c], ecx
mov ebx, dword [rsp + 0x2c]
movzx esi, bl
mov dword [rsp + 0x68], esi
lea rax, [rsi + rdx]
call fcn.14005b2a0
mov ecx, dword [rsp + 0x68]
lea rdx, [0x1400cfae0]
movzx ecx, byte [rdx + rcx]
mov dword [rsp + 0x68], ecx
mov ebx, dword [rsp + 0x2c]
shr ebx, 0x18
mov dword [rsp + 0x64], ebx
lea rax, [rdx + rbx]
call fcn.14005b2a0
mov ecx, dword [rsp + 0x64]
lea rdx, [0x1400cfae0]
movzx ecx, byte [rdx + rcx]
shl ecx, 0x18
mov dword [rsp + 0x64], ecx
mov ebx, dword [rsp + 0x30]
shr ebx, 0x10
movzx ebx, bl
mov dword [rsp + 0x60], ebx
lea rax, [rbx + rdx]
nop dword [rax + rax]
call fcn.14005b2a0
mov ecx, dword [rsp + 0x60]
lea rdx, [0x1400cfae0]
movzx ecx, byte [rdx + rcx]
shl ecx, 0x10
mov ebx, dword [rsp + 0x64]
or ebx, ecx
mov dword [rsp + 0x64], ebx
mov ecx, dword [rsp + 0x34]
shr ecx, 8
movzx ecx, cl
mov dword [rsp + 0x60], ecx
lea rax, [rcx + rdx]
call fcn.14005b2a0
mov ecx, dword [rsp + 0x60]
lea rdx, [0x1400cfae0]
movzx ecx, byte [rdx + rcx]
shl ecx, 8
mov ebx, dword [rsp + 0x64]
or ecx, ebx
mov dword [rsp + 0x64], ecx
mov ebx, dword [rsp + 0x28]
movzx esi, bl
mov dword [rsp + 0x60], esi
lea rax, [rsi + rdx]
call fcn.14005b2a0
mov ecx, dword [rsp + 0x60]
lea rdx, [0x1400cfae0]
movzx ecx, byte [rdx + rcx]
mov dword [rsp + 0x60], ecx
mov ebx, dword [rsp + 0x28]
shr ebx, 0x18
mov dword [rsp + 0x5c], ebx
lea rax, [rdx + rbx]
call fcn.14005b2a0
mov ecx, dword [rsp + 0x5c]
lea rdx, [0x1400cfae0]
movzx ecx, byte [rdx + rcx]
shl ecx, 0x18
mov dword [rsp + 0x5c], ecx
mov ebx, dword [rsp + 0x2c]
shr ebx, 0x10
movzx ebx, bl
mov dword [rsp + 0x58], ebx
lea rax, [rbx + rdx]
call fcn.14005b2a0
mov ecx, dword [rsp + 0x58]
lea rdx, [0x1400cfae0]
movzx ecx, byte [rdx + rcx]
shl ecx, 0x10
mov ebx, dword [rsp + 0x5c]
or ebx, ecx
mov dword [rsp + 0x5c], ebx
mov ecx, dword [rsp + 0x30]
shr ecx, 8
movzx ecx, cl
mov dword [rsp + 0x58], ecx
lea rax, [rcx + rdx]
call fcn.14005b2a0
mov ecx, dword [rsp + 0x58]
lea rdx, [0x1400cfae0]
movzx ecx, byte [rdx + rcx]
shl ecx, 8
mov ebx, dword [rsp + 0x5c]
or ecx, ebx
mov dword [rsp + 0x5c], ecx
mov ebx, dword [rsp + 0x34]
movzx ebx, bl
mov dword [rsp + 0x58], ebx
lea rax, [rbx + rdx]
call fcn.14005b2a0
mov ecx, dword [rsp + 0x58]
lea rdx, [0x1400cfae0]
movzx ecx, byte [rdx + rcx]
mov edx, dword [rsp + 0x70]
mov ebx, dword [rsp + 0x74]
or edx, ebx
mov ebx, dword [rsp + 0x68]
mov esi, dword [rsp + 0x6c]
or ebx, esi
mov esi, dword [rsp + 0x60]
mov edi, dword [rsp + 0x64]
or esi, edi
mov edi, dword [rsp + 0x5c]
or ecx, edi
mov rdi, qword [rsp + 0x140]
mov rax, qword [rsp + 0x88]
cmp rdi, rax
jbe 0x14006abb1
mov dword [rsp + 0x44], edx
mov dword [rsp + 0x40], ebx
mov dword [rsp + 0x3c], esi
mov dword [rsp + 0x38], ecx
mov rcx, qword [rsp + 0x138]
lea rdx, [rcx + rax*4]
mov rax, rdx
call fcn.14005b2a0
mov rax, qword [rsp + 0x88]
lea rcx, [rax + 1]
mov edx, dword [rsp + 0x44]
mov rbx, qword [rsp + 0x138]
xor edx, dword [rbx + rax*4]
mov rsi, qword [rsp + 0x140]
cmp rsi, rcx
jbe 0x14006aba6
mov dword [rsp + 0x44], edx
lea rcx, [rbx + rax*4]
lea rcx, [rcx + 4]
mov rax, rcx
call fcn.14005b2a0
mov rax, qword [rsp + 0x88]
lea rcx, [rax + 2]
mov edx, dword [rsp + 0x40]
mov rbx, qword [rsp + 0x138]
xor edx, dword [rbx + rax*4 + 4]
mov rsi, qword [rsp + 0x140]
cmp rsi, rcx
jbe 0x14006ab9b
mov dword [rsp + 0x40], edx
lea rcx, [rbx + rax*4]
lea rcx, [rcx + 8]
mov rax, rcx
call fcn.14005b2a0
mov rax, qword [rsp + 0x88]
lea rcx, [rax + 3]
mov edx, dword [rsp + 0x3c]
mov rbx, qword [rsp + 0x138]
xor edx, dword [rbx + rax*4 + 8]
mov rsi, qword [rsp + 0x140]
cmp rsi, rcx
jbe 0x14006ab90
mov dword [rsp + 0x24], edx
lea rcx, [rbx + rax*4]
lea rcx, [rcx + 0xc]
mov rax, rcx
call fcn.14005b2a0
mov ecx, dword [rsp + 0x38]
mov rdx, qword [rsp + 0x88]
mov rbx, qword [rsp + 0x138]
xor ecx, dword [rbx + rdx*4 + 0xc]
mov rdx, qword [rsp + 0x158]
cmp rdx, 0xf
jbe 0x14006ab83
mov dword [rsp + 0x20], ecx
mov rax, qword [rsp + 0x150]
lea rcx, [rax + 0xf]
mov qword [rsp + 0x120], rcx
mov rax, rcx
call fcn.14005b2a0
mov rax, qword [rsp + 0x150]
lea rcx, [rax + 4]
mov qword [rsp + 0xa8], rcx
lea rdx, [rax + 8]
mov qword [rsp + 0xa0], rdx
lea rbx, [rax + 0xc]
mov qword [rsp + 0x98], rbx
lea rsi, [rax + 3]
mov qword [rsp + 0x118], rsi
mov edi, dword [rsp + 0x44]
mov r8d, edi
shr edi, 0x18
mov dword [rsp + 0x74], edi
lea r9, [rax + 1]
mov qword [rsp + 0x110], r9
mov r10d, r8d
shr r8d, 0x10
mov dword [rsp + 0x70], r8d
lea r11, [rax + 2]
mov qword [rsp + 0x108], r11
shr r10d, 8
mov dword [rsp + 0x6c], r10d
lea r13, [rax + 7]
mov qword [rsp + 0x100], r13
mov r15d, dword [rsp + 0x40]
shr r15d, 0x18
mov dword [rsp + 0x68], r15d
lea rbx, [rax + 5]
mov qword [rsp + 0xf8], rbx
mov edx, dword [rsp + 0x40]
shr edx, 0x10
mov dword [rsp + 0x64], edx
lea rdx, [rax + 6]
mov qword [rsp + 0xf0], rdx
mov edx, dword [rsp + 0x40]
shr edx, 8
mov dword [rsp + 0x60], edx
lea rdx, [rax + 0xb]
mov qword [rsp + 0xe8], rdx
mov edx, dword [rsp + 0x24]
shr edx, 0x18
mov dword [rsp + 0x5c], edx
lea rdx, [rax + 9]
mov qword [rsp + 0xe0], rdx
mov edx, dword [rsp + 0x24]
shr edx, 0x10
mov dword [rsp + 0x58], edx
lea rdx, [rax + 0xa]
mov qword [rsp + 0xd8], rdx
mov edx, dword [rsp + 0x24]
shr edx, 8
mov dword [rsp + 0x54], edx
mov edx, dword [rsp + 0x20]
shr edx, 0x18
mov dword [rsp + 0x50], edx
lea rdx, [rax + 0xd]
mov qword [rsp + 0xd0], rdx
mov edx, dword [rsp + 0x20]
shr edx, 0x10
mov dword [rsp + 0x4c], edx
lea rdx, [rax + 0xe]
mov qword [rsp + 0xc8], rdx
mov edx, dword [rsp + 0x20]
shr edx, 8
mov dword [rsp + 0x48], edx
nop
mov rax, rsi
call fcn.14005b2a0
mov rax, qword [rsp + 0x150]
call fcn.14005b2e0
mov ecx, dword [rsp + 0x74]
mov rdx, qword [rsp + 0x150]
mov byte [rdx], cl
mov rax, qword [rsp + 0x110]
call fcn.14005b2e0
mov ecx, dword [rsp + 0x70]
mov rdx, qword [rsp + 0x150]
mov byte [rdx + 1], cl
mov rax, qword [rsp + 0x108]
nop dword [rax]
call fcn.14005b2e0
mov ecx, dword [rsp + 0x6c]
mov rdx, qword [rsp + 0x150]
mov byte [rdx + 2], cl
mov rax, qword [rsp + 0x118]
nop dword [rax]
call fcn.14005b2e0
mov ecx, dword [rsp + 0x44]
mov rdx, qword [rsp + 0x150]
mov byte [rdx + 3], cl
mov rax, qword [rsp + 0x100]
nop dword [rax]
call fcn.14005b2a0
mov rax, qword [rsp + 0xa8]
call fcn.14005b2e0
mov ecx, dword [rsp + 0x68]
mov rdx, qword [rsp + 0x150]
mov byte [rdx + 4], cl
mov rax, qword [rsp + 0xf8]
call fcn.14005b2e0
mov ecx, dword [rsp + 0x64]
mov rdx, qword [rsp + 0x150]
mov byte [rdx + 5], cl
mov rax, qword [rsp + 0xf0]
call fcn.14005b2e0
mov ecx, dword [rsp + 0x60]
mov rdx, qword [rsp + 0x150]
mov byte [rdx + 6], cl
mov rax, qword [rsp + 0x100]
call fcn.14005b2e0
mov ecx, dword [rsp + 0x40]
mov rdx, qword [rsp + 0x150]
mov byte [rdx + 7], cl
mov rax, qword [rsp + 0xe8]
nop dword [rax]
call fcn.14005b2a0
mov rax, qword [rsp + 0xa0]
call fcn.14005b2e0
mov ecx, dword [rsp + 0x5c]
mov rdx, qword [rsp + 0x150]
mov byte [rdx + 8], cl
mov rax, qword [rsp + 0xe0]
call fcn.14005b2e0
mov ecx, dword [rsp + 0x58]
mov rdx, qword [rsp + 0x150]
mov byte [rdx + 9], cl
mov rax, qword [rsp + 0xd8]
call fcn.14005b2e0
mov ecx, dword [rsp + 0x54]
mov rdx, qword [rsp + 0x150]
mov byte [rdx + 0xa], cl
mov rax, qword [rsp + 0xe8]
call fcn.14005b2e0
mov ecx, dword [rsp + 0x24]
mov rdx, qword [rsp + 0x150]
mov byte [rdx + 0xb], cl
mov rax, qword [rsp + 0x120]
nop dword [rax]
call fcn.14005b2a0
mov rax, qword [rsp + 0x98]
call fcn.14005b2e0
mov ecx, dword [rsp + 0x50]
mov rdx, qword [rsp + 0x150]
mov byte [rdx + 0xc], cl
mov rax, qword [rsp + 0xd0]
call fcn.14005b2e0
mov ecx, dword [rsp + 0x4c]
mov rdx, qword [rsp + 0x150]
mov byte [rdx + 0xd], cl
mov rax, qword [rsp + 0xc8]
call fcn.14005b2e0
mov ecx, dword [rsp + 0x48]
mov rdx, qword [rsp + 0x150]
mov byte [rdx + 0xe], cl
mov rax, qword [rsp + 0x120]
call fcn.14005b2e0
mov ecx, dword [rsp + 0x20]
mov rdx, qword [rsp + 0x150]
mov byte [rdx + 0xf], cl
call fcn.14005ec60
add rsp, 0x128
pop rbp
ret
mov eax, 0xf
mov rcx, rdx
call fcn.140059f40
mov rax, rcx
mov rcx, rsi
call fcn.140059f40
mov rax, rcx
mov rcx, rsi
call fcn.140059f40
mov rax, rcx
mov rcx, rsi
call fcn.140059f40
mov rcx, rdi
call fcn.140059f40
mov rax, rcx
mov rcx, rbx
nop
call fcn.140059f40
mov rax, rcx
mov rcx, rbx
call fcn.140059f40
mov rax, rcx
mov rcx, rbx
call fcn.140059f40
mov rax, r15
nop
call fcn.140059f40
mov eax, 3
mov rcx, rax
call fcn.140059f40
mov eax, 2
mov rcx, rax
call fcn.140059f40
mov eax, 1
mov rcx, rax
call fcn.140059f40
xor eax, eax
mov rcx, rax
call fcn.140059f40
mov eax, 0xf
nop dword [rax + rax]
call fcn.140059f40
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
mov qword [rsp + 0x20], rdi
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x30], r8
mov qword [rsp + 0x38], r9
mov qword [rsp + 0x40], r10
mov qword [rsp + 0x48], r11
call fcn.140057ca0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
mov rdi, qword [rsp + 0x20]
mov rsi, qword [rsp + 0x28]
mov r8, qword [rsp + 0x30]
mov r9, qword [rsp + 0x38]
mov r10, qword [rsp + 0x40]
mov r11, qword [rsp + 0x48]
jmp fcn.140069960