Function at 0x14049b2a0
Capabilities:
Manually build aes constants

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x818
cmp r8d, 0x80
jne 0x14049b2c3
mov esi, 0xa
jmp 0x14049b2ea
cmp r8d, 0x100
je 0x14049b2e5
mov eax, 0xffffffe0
cmp r8d, 0xc0
jne 0x14049b832
mov esi, 0xc
jmp 0x14049b2ea
mov esi, 0xe
mov dword [rcx], esi
cmp byte [0x1406cba50], 0
jne 0x14049b5e2
mov dword [rsp], r8d
mov dword [rsp + 4], esi
mov esi, 1
xor eax, eax
mov r8d, 0x1b
xor ebx, ebx
mov edi, esi
mov dword [rsp + rbx*4 + 0x410], esi
mov ebp, esi
mov dword [rsp + rbp*4 + 0x10], ebx
test sil, sil
mov ebp, 0
cmovs ebp, r8d
and edi, 0x7f
add edi, edi
xor edi, esi
xor edi, ebp
inc rbx
mov esi, edi
cmp rbx, 0x100
jne 0x14049b312
mov ebp, 1
lea rbx, [0x1406cba60]
mov edi, 0x1b
mov dword [rbx + rax*4], ebp
test bpl, bpl
mov esi, 0
cmovs esi, edi
and ebp, 0x7f
add ebp, ebp
xor ebp, esi
inc rax
cmp rax, 0xa
jne 0x14049b353
mov byte [0x1406cba90], 0x63
mov byte [0x1406cdbf3], 0
mov ebp, 1
mov ebx, 1
lea r10, [0x1406cba90]
lea r8, [0x1406cdb90]
movsxd rdi, dword [rsp + rbx*4 + 0x10]
mov esi, 0xff
sub rsi, rdi
mov edi, dword [rsp + rsi*4 + 0x410]
lea esi, [rdi + rdi]
mov eax, edi
shr eax, 7
or eax, esi
movzx esi, al
mov eax, esi
xor edi, esi
shr esi, 7
and eax, 0x7f
add eax, eax
or esi, eax
shr eax, 7
xor edi, esi
and esi, 0x7f
add esi, esi
or eax, esi
shr esi, 7
xor edi, eax
and eax, 0x7f
lea eax, [rsi + rax*2]
xor edi, eax
xor edi, 0x63
mov byte [rbx + r10], dil
movsxd rax, edi
mov byte [rax + r8], bpl
inc rbx
inc ebp
cmp rbx, 0x100
jne 0x14049b397
mov eax, dword [rsp + 0x48]
mov qword [rsp + 8], rax
mov r14d, dword [rsp + 0x34]
mov r12d, dword [rsp + 0x3c]
mov r13d, dword [rsp + 0x44]
xor r11d, r11d
lea rsi, [0x1406ccb90]
movzx ebp, byte [r11 + r10]
lea ebx, [rbp + rbp]
mov eax, ebp
sar al, 7
and al, 0x1b
xor al, bl
movzx eax, al
mov ebx, ebp
shl ebx, 8
mov edi, ebp
shl edi, 0x10
or edi, ebx
or edi, eax
xor al, bpl
movzx ebx, al
mov eax, ebx
shl eax, 0x18
or eax, edi
mov dword [rsi + r11*4], eax
shl edi, 8
or edi, ebx
lea rax, [0x1406ccf90]
mov dword [rax + r11*4], edi
shl edi, 8
or edi, ebp
lea rax, [0x1406cd390]
mov dword [rax + r11*4], edi
shl edi, 8
or edi, ebp
lea rax, [0x1406cd790]
mov dword [rax + r11*4], edi
movzx r15d, byte [r11 + r8]
mov r9d, 0
mov ebx, 0
mov ebp, 0
test r15, r15
je 0x14049b576
mov r15d, dword [rsp + r15*4 + 0x10]
mov rax, qword [rsp + 8]
lea eax, [r15 + rax]
cdqe
imul rbx, rax, 0xffffffff80808081
shr rbx, 0x20
add ebx, eax
mov edi, ebx
shr edi, 0x1f
sar ebx, 7
add ebx, edi
mov edi, ebx
shl edi, 8
sub ebx, edi
add ebx, eax
movsxd r9, ebx
lea ebx, [r15 + r14]
movsxd rbx, ebx
imul rdi, rbx, 0xffffffff80808081
shr rdi, 0x20
add edi, ebx
mov eax, edi
shr eax, 0x1f
sar edi, 7
add edi, eax
mov eax, edi
shl eax, 8
sub edi, eax
add edi, ebx
movsxd rax, edi
mov ebx, dword [rsp + rax*4 + 0x410]
shl ebx, 8
xor ebx, dword [rsp + r9*4 + 0x410]
lea eax, [r15 + r13]
cdqe
imul rdi, rax, 0xffffffff80808081
shr rdi, 0x20
add edi, eax
mov ebp, edi
shr ebp, 0x1f
sar edi, 7
add edi, ebp
mov ebp, edi
shl ebp, 8
sub edi, ebp
add edi, eax
movsxd rax, edi
mov r9d, dword [rsp + rax*4 + 0x410]
shl r9d, 0x10
xor r9d, ebx
add r15d, r12d
movsxd rax, r15d
imul rdi, rax, 0xffffffff80808081
shr rdi, 0x20
add edi, eax
mov ebp, edi
shr ebp, 0x1f
sar edi, 7
add edi, ebp
mov ebp, edi
shl ebp, 8
sub edi, ebp
add edi, eax
movsxd rax, edi
mov ebp, dword [rsp + rax*4 + 0x410]
shl ebp, 0x18
xor ebp, r9d
lea rax, [0x1406cbb90]
mov dword [rax + r11*4], ebp
shrd ebp, r9d, 0x18
lea rax, [0x1406cbf90]
mov dword [rax + r11*4], ebp
shl ebp, 8
shr r9d, 0x10
movzx eax, r9b
or eax, ebp
lea rbp, [0x1406cc390]
mov dword [rbp + r11*4], eax
shl eax, 8
movzx edi, bh
or edi, eax
lea rax, [0x1406cc790]
mov dword [rax + r11*4], edi
inc r11
cmp r11, 0x100
jne 0x14049b41d
mov byte [0x1406cba50], 1
mov esi, dword [rsp + 4]
mov r8d, dword [rsp]
lea r10, [rcx + 0x10]
mov qword [rcx + 8], r10
shr r8d, 5
je 0x14049b623
mov eax, r8d
xor ebp, ebp
movzx ebx, byte [rdx + rbp*4]
movzx edi, byte [rdx + rbp*4 + 1]
shl edi, 8
or edi, ebx
movzx ebx, byte [rdx + rbp*4 + 2]
shl ebx, 0x10
or ebx, edi
movzx edi, byte [rdx + rbp*4 + 3]
shl edi, 0x18
or edi, ebx
mov dword [rcx + rbp*4 + 0x10], edi
inc rbp
cmp rbp, rax
jne 0x14049b5f5
cmp esi, 0xa
je 0x14049b725
cmp esi, 0xc
je 0x14049b7a6
xor eax, eax
cmp esi, 0xe
jne 0x14049b832
mov ebx, dword [r10]
xor eax, eax
lea r8, [0x1406cba60]
lea r9, [0x1406cba90]
xor ebp, ebp
xor ebx, dword [r8 + rbp*4]
mov edx, dword [r10 + 0x1c]
movzx esi, dh
movzx esi, byte [rsi + r9]
xor esi, ebx
mov ebx, edx
shr ebx, 0x10
movzx ebx, bl
movzx ebx, byte [rbx + r9]
shl ebx, 8
mov rcx, rdx
shr rcx, 0x18
movzx ecx, byte [rcx + r9]
shl ecx, 0x10
xor ecx, esi
xor ecx, ebx
movzx ebx, dl
movzx ebx, byte [rbx + r9]
shl ebx, 0x18
xor ebx, ecx
mov dword [r10 + 0x20], ebx
mov edi, dword [r10 + 4]
xor edi, ebx
mov dword [r10 + 0x24], edi
xor edi, dword [r10 + 8]
mov dword [r10 + 0x28], edi
xor edi, dword [r10 + 0xc]
mov dword [r10 + 0x2c], edi
movzx ecx, dil
movzx ecx, byte [rcx + r9]
xor ecx, dword [r10 + 0x10]
mov esi, edi
shr esi, 8
movzx esi, sil
movzx esi, byte [rsi + r9]
shl esi, 8
xor esi, ecx
mov ecx, edi
shr ecx, 0x10
movzx ecx, cl
movzx ecx, byte [rcx + r9]
shl ecx, 0x10
shr rdi, 0x18
movzx edi, byte [rdi + r9]
shl edi, 0x18
xor edi, ecx
xor edi, esi
mov dword [r10 + 0x30], edi
xor edi, dword [r10 + 0x14]
mov dword [r10 + 0x34], edi
xor edi, dword [r10 + 0x18]
mov dword [r10 + 0x38], edi
xor edi, edx
mov dword [r10 + 0x3c], edi
lea r10, [r10 + 0x20]
inc rbp
cmp rbp, 7
jne 0x14049b655
jmp 0x14049b832
mov ebx, dword [r10]
xor eax, eax
lea r8, [0x1406cba60]
lea rdi, [0x1406cba90]
xor ebp, ebp
xor ebx, dword [r8 + rbp*4]
mov edx, dword [r10 + 0xc]
movzx esi, dh
movzx esi, byte [rsi + rdi]
xor esi, ebx
mov ebx, edx
shr ebx, 0x10
movzx ebx, bl
movzx ebx, byte [rbx + rdi]
shl ebx, 8
mov rcx, rdx
shr rcx, 0x18
movzx ecx, byte [rcx + rdi]
shl ecx, 0x10
xor ecx, esi
xor ecx, ebx
movzx ebx, dl
movzx ebx, byte [rbx + rdi]
shl ebx, 0x18
xor ebx, ecx
mov dword [r10 + 0x10], ebx
mov ecx, dword [r10 + 4]
xor ecx, ebx
mov dword [r10 + 0x14], ecx
xor ecx, dword [r10 + 8]
mov dword [r10 + 0x18], ecx
xor ecx, edx
mov dword [r10 + 0x1c], ecx
lea r10, [r10 + 0x10]
inc rbp
cmp rbp, 0xa
jne 0x14049b73a
jmp 0x14049b832
mov ebx, dword [r10]
xor eax, eax
lea r8, [0x1406cba60]
lea rdi, [0x1406cba90]
xor ebp, ebp
xor ebx, dword [r8 + rbp*4]
mov edx, dword [r10 + 0x14]
movzx esi, dh
movzx esi, byte [rsi + rdi]
xor esi, ebx
mov ebx, edx
shr ebx, 0x10
movzx ebx, bl
movzx ebx, byte [rbx + rdi]
shl ebx, 8
mov rcx, rdx
shr rcx, 0x18
movzx ecx, byte [rcx + rdi]
shl ecx, 0x10
xor ecx, esi
xor ecx, ebx
movzx ebx, dl
movzx ebx, byte [rbx + rdi]
shl ebx, 0x18
xor ebx, ecx
mov dword [r10 + 0x18], ebx
mov ecx, dword [r10 + 4]
xor ecx, ebx
mov dword [r10 + 0x1c], ecx
xor ecx, dword [r10 + 8]
mov dword [r10 + 0x20], ecx
xor ecx, dword [r10 + 0xc]
mov dword [r10 + 0x24], ecx
xor ecx, dword [r10 + 0x10]
mov dword [r10 + 0x28], ecx
xor ecx, edx
mov dword [r10 + 0x2c], ecx
lea r10, [r10 + 0x18]
inc rbp
cmp rbp, 8
jne 0x14049b7bb
add rsp, 0x818
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret