Function at 0x6768f6d0
Capabilities:
Encrypt data using aes
Reference aes constants

Disassembly:
sub rsp, 0x18
mov qword [rsp + 0x10], rbp
lea rbp, [rsp + 0x10]
mov rcx, qword [rsp + 0x28]
mov rdx, rcx
shr rcx, 2
mov rbx, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x20]
mov r8, qword [rsp + 0x30]
xor eax, eax
jmp 0x6768f70f
bswap edx
mov dword [rbx + r9*4], edx
lea rax, [r9 + 1]
mov rdx, r10
cmp rax, rcx
jge 0x6768f74f
mov r9, rax
shl rax, 2
cmp rax, rdx
ja 0x6768fa33
mov r10, rdx
sub rdx, rax
mov r11, rax
sub rax, r8
sar rax, 0x3f
and r11, rax
cmp rdx, 3
jbe 0x6768fa26
mov edx, dword [rdi + r11]
cmp r9, rsi
jb 0x6768f702
jmp 0x6768fa1b
jmp 0x6768f759
mov dword [rbx + rdi*4], r8d
lea rax, [rdi + 1]
cmp rax, rsi
jge 0x6768f8af
lea rdx, [rax - 1]
cmp rdx, rsi
jae 0x6768fa10
mov edx, dword [rbx + rax*4 - 4]
test rcx, rcx
je 0x6768fa0b
mov rdi, rax
mov r8d, edx
cmp rcx, 0xffffffffffffffff
je 0x6768f78f
cqo
idiv rcx
jmp 0x6768f794
neg rax
xor edx, edx
test rdx, rdx
jne 0x6768f838
lea rdx, [rax - 1]
rol r8d, 8
mov r9d, r8d
shr r8d, 0x18
lea r10, sym.combase.dll_crypto_aes.sbox0
movzx r8d, byte [r8 + r10]
shl r8d, 0x18
mov r11d, r9d
shr r9d, 0x10
movzx r9d, r9b
movzx r9d, byte [r9 + r10]
shl r9d, 0x10
or r8d, r9d
mov r9d, r11d
shr r11d, 8
movzx r11d, r11b
movzx r11d, byte [r11 + r10]
shl r11d, 8
or r11d, r8d
movzx r8d, r9b
movzx r8d, byte [r8 + r10]
or r8d, r11d
cmp rdx, 0x10
jae 0x6768f9fe
lea rdx, sym.combase.dll_crypto_aes.powx
movzx r9d, byte [rax + rdx - 1]
shl r9d, 0x18
xor r8d, r9d
mov rax, rdi
sub rax, rcx
cmp rax, rsi
jae 0x6768f9f6
mov r9d, dword [rbx + rax*4]
xor r8d, r9d
cmp rdi, rsi
jb 0x6768f751
jmp 0x6768f9eb
cmp rcx, 6
jle 0x6768f8a6
cmp rdx, 4
jne 0x6768f8a6
nop
mov edx, r8d
shr r8d, 0x18
lea r9, sym.combase.dll_crypto_aes.sbox0
movzx r8d, byte [r9 + r8]
shl r8d, 0x18
mov r10d, edx
shr edx, 0x10
movzx edx, dl
movzx edx, byte [rdx + r9]
shl edx, 0x10
or edx, r8d
mov r8d, r10d
shr r10d, 8
movzx r10d, r10b
movzx r10d, byte [r10 + r9]
shl r10d, 8
or edx, r10d
movzx r8d, r8b
movzx r8d, byte [r8 + r9]
or r8d, edx
lea rdx, sym.combase.dll_crypto_aes.powx
lea r10, sym.combase.dll_crypto_aes.sbox0
jmp 0x6768f814
lea r9, sym.combase.dll_crypto_aes.sbox0
jmp 0x6768f893
mov rdx, qword [rsp + 0x50]
test rdx, rdx
je 0x6768f9ce
mov rdi, qword [rsp + 0x58]
xor eax, eax
jmp 0x6768f9b1
mov dword [rdx + r13*4], r9d
inc r8
cmp r8, 4
jge 0x6768f9aa
lea r9, [r8 + rsi]
lea r9, [r9 - 4]
cmp r9, rcx
jae 0x6768f9e3
mov r9d, dword [rbx + r9*4]
test rax, rax
jle 0x6768f985
lea r10, [rax + 4]
cmp r10, rcx
jge 0x6768f985
mov r10d, r9d
shr r9d, 0x18
lea r11, sym.combase.dll_crypto_aes.sbox0
movzx r9d, byte [r11 + r9]
lea r12, sym.combase.dll_crypto_aes.td0
mov r9d, dword [r12 + r9*4]
mov r13d, r10d
shr r10d, 0x10
movzx r10d, r10b
movzx r10d, byte [r11 + r10]
lea r14, sym.combase.dll_crypto_aes.td1
mov r10d, dword [r14 + r10*4]
xor r10d, r9d
mov r9d, r13d
shr r13d, 8
movzx r13d, r13b
movzx r13d, byte [r11 + r13]
lea r15, sym.combase.dll_crypto_aes.td2
mov r13d, dword [r15 + r13*4]
xor r13d, r10d
movzx r9d, r9b
movzx r9d, byte [r9 + r11]
lea r10, sym.combase.dll_crypto_aes.td3
mov r9d, dword [r10 + r9*4]
xor r9d, r13d
lea r13, [r8 + rax]
cmp r13, rdi
jb 0x6768f8c9
jmp 0x6768f9d8
lea r10, sym.combase.dll_crypto_aes.td3
lea r11, sym.combase.dll_crypto_aes.sbox0
lea r12, sym.combase.dll_crypto_aes.td0
lea r14, sym.combase.dll_crypto_aes.td1
lea r15, sym.combase.dll_crypto_aes.td2
jmp 0x6768f976
add rax, 4
mov rsi, rcx
cmp rax, rsi
jge 0x6768f9c4
mov rcx, rsi
sub rsi, rax
xor r8d, r8d
jmp 0x6768f8d0
mov rbp, qword [rsp + 0x10]
add rsp, 0x18
ret
mov rbp, qword [rsp + 0x10]
add rsp, 0x18
ret
mov rax, r13
mov rcx, rdi
call sym.combase.dll_runtime.panicIndex
mov rax, r9
call sym.combase.dll_runtime.panicIndex
mov rax, rdi
mov rcx, rsi
call sym.combase.dll_runtime.panicIndex
mov rcx, rsi
call sym.combase.dll_runtime.panicIndex
mov rax, rdx
mov ecx, 0x10
call sym.combase.dll_runtime.panicIndex
call sym.combase.dll_runtime.panicdivide
mov rax, rdx
mov rcx, rsi
call sym.combase.dll_runtime.panicIndex
mov rax, r9
mov rcx, rsi
call sym.combase.dll_runtime.panicIndex
mov eax, 3
mov rcx, rdx
call sym.combase.dll_runtime.panicIndex
mov rcx, rdx
call sym.combase.dll_runtime.panicSliceB
nop
int3