Function at 0x544480
Capabilities:
Create new key via cryptacquirecontext
Encrypt data using aes via winapi
Encrypt or decrypt via wincrypt

Disassembly:
push rbp
sub rsp, 0xf0
mov rbp, rsp
mov qword [rbp + 0x48], 0
mov qword [rbp + 0x50], 0
mov qword [rbp + 0x68], 0
mov qword [rbp + 0x58], rbp
mov qword [rbp + 0x100], rcx
mov qword [rbp + 0x108], rdx
nop
mov eax, dword [rbp + 0xe4]
add eax, 0x1fb
mov dword [rbp + 0xe8], eax
mov byte [rbp + 0x9f], 0
mov eax, dword [rbp + 0xcc]
cmp eax, dword [rbp + 0xcc]
jle 0x5444f7
lea rcx, [rbp + 0xcc]
lea rdx, [rbp + 0xcc]
lea r8, [rbp + 0xc8]
call fcn.00544160
mov eax, 0x57
sub eax, dword [rbp + 0xcc]
cmp eax, 0xfc
jge 0x544525
lea rcx, [rbp + 0xcc]
lea rdx, [rbp + 0xcc]
lea r8, [rbp + 0xcc]
call fcn.00541440
mov rax, qword [rbp + 0x108]
mov rcx, qword [rax]
call fcn.0053d680
test eax, eax
jne 0x544728
mov eax, dword [rbp + 0xe8]
imul eax, eax, 0x191
mov dword [rbp + 0xec], eax
mov eax, dword [rbp + 0xe8]
imul eax, eax, 0x1d6
mov dword [rbp + 0xe8], eax
mov eax, dword [rbp + 0xe4]
add eax, 0x21a
mov dword [rbp + 0xe8], eax
mov eax, dword [rbp + 0xe4]
add eax, 0x23f
mov dword [rbp + 0xe8], eax
mov eax, dword [rbp + 0xe4]
sub eax, 0x283
mov dword [rbp + 0xe8], eax
mov byte [rbp + 0x9f], 1
mov dword [rbp + 0xc8], 0
mov eax, dword [rbp + 0xcc]
imul eax, eax, 0x2db
mov dword [rbp + 0xe4], eax
mov eax, dword [rbp + 0xe8]
add eax, dword [rbp + 0xe4]
cmp eax, dword [rbp + 0xcc]
jle 0x5445d7
add dword [rbp + 0xe8], 0x202
mov eax, dword [rbp + 0xec]
add eax, dword [rbp + 0xe8]
cmp dword [rbp + 0xc8], eax
jne 0x5445fd
mov eax, 0x10a
sub eax, dword [rbp + 0xe8]
mov dword [rbp + 0xec], eax
mov eax, dword [rbp + 0xcc]
add eax, dword [rbp + 0xc8]
mov ecx, dword [rbp + 0xc8]
add ecx, dword [rbp + 0xec]
cmp eax, ecx
jge 0x54462b
mov eax, 0x52
sub eax, dword [rbp + 0xec]
mov dword [rbp + 0xcc], eax
mov eax, dword [rbp + 0xcc]
sub eax, dword [rbp + 0xc8]
mov ecx, dword [rbp + 0xc8]
sub ecx, dword [rbp + 0xec]
cmp eax, ecx
jle 0x544656
mov eax, dword [rbp + 0xec]
add eax, 0x5a
mov dword [rbp + 0xcc], eax
add dword [rbp + 0xc8], 1
cmp dword [rbp + 0xc8], 4
jne 0x5445a7
nop
mov dword [rbp + 0xc8], 0
sub dword [rbp + 0xe4], 0x2a1
mov eax, dword [rbp + 0xe8]
sub eax, dword [rbp + 0xe4]
cmp dword [rbp + 0xec], eax
jne 0x5446a5
mov eax, 0x148
sub eax, dword [rbp + 0xec]
mov dword [rbp + 0xec], eax
mov eax, dword [rbp + 0xcc]
add eax, dword [rbp + 0xc8]
mov ecx, dword [rbp + 0xc8]
add ecx, dword [rbp + 0xec]
cmp eax, ecx
jge 0x5446cd
mov eax, dword [rbp + 0xcc]
mov dword [rbp + 0xcc], eax
mov dword [rbp + 0xcc], 0
mov eax, dword [rbp + 0xcc]
imul eax, eax, 0x2f6
mov dword [rbp + 0xe4], eax
add dword [rbp + 0xc8], 1
cmp dword [rbp + 0xc8], 3
jne 0x544675
nop
lea rcx, [rbp + 0xcc]
lea rdx, [rbp + 0xcc]
call fcn.00543050
mov eax, dword [rbp + 0xec]
add eax, 0x109
mov dword [rbp + 0xc8], eax
jmp 0x546706
nop
lea rcx, [rbp + 0xcc]
lea rdx, [rbp + 0xcc]
lea r8, [rbp + 0xcc]
call fcn.00541a90
mov eax, dword [rbp + 0xcc]
imul eax, eax, 0x2f8
mov dword [rbp + 0xe4], eax
lea rcx, [rbp + 0x68]
call fcn.0040e5d0
mov eax, dword [rbp + 0xcc]
add eax, dword [rbp + 0xc8]
mov ecx, dword [rbp + 0xec]
add ecx, dword [rbp + 0xec]
cmp eax, ecx
jge 0x54478d
mov eax, dword [rbp + 0xc8]
imul eax, dword [rbp + 0xec]
mov dword [rbp + 0xcc], eax
lea rcx, [rbp + 0x68]
mov rdx, qword [0x005d1ce8]
call fcn.0040fe40
mov eax, dword [rbp + 0xcc]
add eax, dword [rbp + 0xcc]
mov ecx, dword [rbp + 0xc8]
add ecx, dword [rbp + 0xec]
cmp eax, ecx
jge 0x5447cc
mov eax, dword [rbp + 0xcc]
imul eax, dword [rbp + 0xc8]
mov dword [rbp + 0xcc], eax
lea rcx, [rbp + 0x68]
mov rdx, qword [0x005d1cf8]
call fcn.0040fe40
lea rcx, [rbp + 0x68]
mov rdx, qword [0x005d1d48]
call fcn.0040fe40
mov eax, dword [rbp + 0xcc]
add eax, dword [rbp + 0xc8]
mov ecx, dword [rbp + 0xc8]
add ecx, dword [rbp + 0xec]
cmp eax, ecx
jge 0x54481b
mov eax, dword [rbp + 0xc8]
imul eax, dword [rbp + 0xc8]
mov dword [rbp + 0xcc], eax
lea rcx, [rbp + 0x68]
mov rdx, qword [0x005d1ce8]
call fcn.0040fe40
lea rcx, [rbp + 0x68]
mov rdx, qword [0x005d1ce0]
call fcn.0040fe40
lea rcx, [rbp + 0x68]
mov rdx, qword [0x005d1cd0]
call fcn.0040fe40
lea rcx, [rbp + 0x50]
mov edx, 3
call fcn.0042be80
lea rcx, [rbp + 0x68]
mov rdx, qword [rbp + 0x50]
call fcn.0040fe40
lea rcx, [rbp + 0x48]
mov edx, 2
call fcn.0042be80
lea rcx, [rbp + 0x68]
mov rdx, qword [rbp + 0x48]
call fcn.0040fe40
lea rcx, [rbp + 0x68]
lea rdx, [0x00546df8]
call fcn.0040fe40
lea rcx, [rbp + 0x68]
mov rdx, qword [0x005d1cf8]
call fcn.0040fe40
lea rcx, [rbp + 0x68]
mov rdx, qword [0x005d1d28]
call fcn.0040fe40
lea rcx, [rbp + 0x68]
mov rdx, qword [0x005d1d28]
call fcn.0040fe40
mov eax, dword [rbp + 0xcc]
imul eax, eax, 0x2ca
mov dword [rbp + 0xe4], eax
mov dword [rbp + 0xcc], 0
mov eax, dword [rbp + 0xe4]
add eax, 0x283
mov dword [rbp + 0xe8], eax
cmp dword [rbp + 0xec], 0
jne 0x544906
mov eax, dword [rbp + 0xec]
mov dword [rbp + 0xc8], eax
mov eax, dword [rbp + 0xc8]
mov dword [rbp + 0xc8], eax
mov eax, dword [rbp + 0xc8]
mov dword [rbp + 0xc8], eax
mov eax, dword [rbp + 0xc8]
mov dword [rbp + 0xc8], eax
add dword [rbp + 0xcc], 1
cmp dword [rbp + 0xcc], 2
jne 0x5448df
nop
mov dword [rbp + 0xcc], 0
mov eax, dword [rbp + 0xec]
add eax, dword [rbp + 0xe8]
cmp eax, dword [rbp + 0xe4]
jle 0x54496b
mov eax, 0x15f
sub eax, dword [rbp + 0xec]
mov dword [rbp + 0xec], eax
mov eax, dword [rbp + 0xc8]
mov dword [rbp + 0xc8], eax
mov eax, dword [rbp + 0xc8]
mov dword [rbp + 0xc8], eax
mov eax, dword [rbp + 0xec]
add eax, 0x38a
mov dword [rbp + 0xc8], eax
mov eax, dword [rbp + 0xc8]
mov dword [rbp + 0xc8], eax
add dword [rbp + 0xcc], 1
cmp dword [rbp + 0xcc], 2
jne 0x544945
nop
mov dword [rbp + 0xcc], 0
cmp dword [rbp + 0xcc], 1
jge 0x544a2b
add dword [rbp + 0xcc], 1
mov eax, dword [rbp + 0xec]
add eax, dword [rbp + 0xe4]
cmp eax, dword [rbp + 0xe4]
jle 0x5449f2
mov eax, 0x159
sub eax, dword [rbp + 0xec]
mov dword [rbp + 0xec], eax
mov eax, dword [rbp + 0xc8]
mov dword [rbp + 0xc8], eax
mov eax, dword [rbp + 0xc8]
mov dword [rbp + 0xc8], eax
mov eax, dword [rbp + 0xec]
mov dword [rbp + 0xc8], eax
mov eax, dword [rbp + 0xc8]
mov dword [rbp + 0xc8], eax
cmp dword [rbp + 0xcc], 1
jl 0x5449c5
nop
mov dword [rbp + 0xcc], 0
mov eax, dword [rbp + 0xe8]
sub eax, dword [rbp + 0xe4]
cmp dword [rbp + 0xec], eax
jne 0x544a5c
mov eax, dword [rbp + 0xec]
add eax, 0x132
mov dword [rbp + 0xc8], eax
mov eax, dword [rbp + 0xec]
add eax, 0x15
mov dword [rbp + 0xc8], eax
mov eax, dword [rbp + 0xc8]
mov dword [rbp + 0xc8], eax
mov eax, dword [rbp + 0xc8]
mov dword [rbp + 0xc8], eax
mov eax, dword [rbp + 0xc8]
mov dword [rbp + 0xc8], eax
add dword [rbp + 0xcc], 1
cmp dword [rbp + 0xcc], 2
jne 0x544a36
nop
lea rcx, [rbp + 0xa0]
xor edx, edx
xor r8, r8
mov r9d, 1
mov dword [rsp + 0x20], 0xf0000000
call sub.advapi32.dll_CryptAcquireContextA
test eax, eax
je 0x5466fb
mov eax, dword [rbp + 0xcc]
cmp eax, dword [rbp + 0xcc]
jle 0x544af7
lea rcx, [rbp + 0xcc]
lea rdx, [rbp + 0xcc]
lea r8, [rbp + 0xc8]
lea r9, [rbp + 0xc8]
call fcn.005432c0
mov eax, dword [rbp + 0xcc]
cmp eax, dword [rbp + 0xcc]
jle 0x544b0a
call fcn.00541150
mov eax, dword [rbp + 0xe8]
imul eax, eax, 0x1ae
mov dword [rbp + 0xec], eax
nop
mov dword [rbp + 0xc8], 0
sub dword [rbp + 0xe4], 0x2b7
mov eax, dword [rbp + 0xe8]
sub eax, dword [rbp + 0xe4]
cmp dword [rbp + 0xec], eax
jne 0x544b57
mov eax, 0x11e
sub eax, dword [rbp + 0xe8]
mov dword [rbp + 0xec], eax
mov eax, dword [rbp + 0xcc]
add eax, dword [rbp + 0xc8]
mov ecx, dword [rbp + 0xc8]
add ecx, dword [rbp + 0xec]
cmp eax, ecx
jge 0x544b82
mov eax, dword [rbp + 0xec]
add eax, 0x25
mov dword [rbp + 0xcc], eax
mov eax, dword [rbp + 0xcc]
mov dword [rbp + 0xcc], eax
mov eax, dword [rbp + 0xcc]
add dword [rbp + 0xcc], eax
add dword [rbp + 0xc8], 1
cmp dword [rbp + 0xc8], 3
jne 0x544b27
nop
mov eax, dword [rbp + 0xcc]
cmp eax, dword [rbp + 0xcc]
jle 0x544bd7
lea rcx, [rbp + 0xe4]
lea rdx, [rbp + 0xcc]
lea r8, [rbp + 0xcc]
call fcn.00541440
mov dword [rbp + 0xcc], 0
mov eax, dword [rbp + 0xec]
add eax, dword [rbp + 0xe8]
cmp eax, dword [rbp + 0xe4]
jle 0x544c07
mov eax, dword [rbp + 0xe8]
imul eax, eax, 0x1ad
mov dword [rbp + 0xec], eax
mov eax, dword [rbp + 0xcc]
sub eax, dword [rbp + 0xc8]
mov ecx, dword [rbp + 0xc8]
sub ecx, dword [rbp + 0xec]
cmp eax, ecx
jle 0x544c2f
mov eax, dword [rbp + 0xc8]
mov dword [rbp + 0xc8], eax
mov eax, dword [rbp + 0xec]
add eax, 0x3b8
mov dword [rbp + 0xc8], eax
mov eax, dword [rbp + 0xc8]
mov dword [rbp + 0xc8], eax
mov eax, dword [rbp + 0xc8]
mov dword [rbp + 0xc8], eax
add dword [rbp + 0xcc], 1
cmp dword [rbp + 0xcc], 2
jne 0x544be1
nop
mov dword [rbp + 0xc8], 0
mov eax, dword [rbp + 0xec]
add eax, dword [rbp + 0xe4]
cmp eax, dword [rbp + 0xe4]
jle 0x544c9e
mov eax, dword [rbp + 0xe8]
imul eax, eax, 0x1ab
mov dword [rbp + 0xec], eax
mov eax, dword [rbp + 0xcc]
sub eax, dword [rbp + 0xc8]
mov ecx, dword [rbp + 0xc8]
sub ecx, dword [rbp + 0xec]
cmp eax, ecx
jle 0x544cc6
mov eax, dword [rbp + 0xcc]
mov dword [rbp + 0xcc], eax
mov dword [rbp + 0xcc], 0
sub dword [rbp + 0xe4], 0x2b9
mov eax, dword [rbp + 0xe8]
sub eax, dword [rbp + 0xe4]
cmp dword [rbp + 0xec], eax
jne 0x544d00
mov eax, 0x140
sub eax, dword [rbp + 0xec]
mov dword [rbp + 0xec], eax
add dword [rbp + 0xc8], 1
cmp dword [rbp + 0xc8], 3
jne 0x544c78
nop
mov eax, dword [rbp + 0xcc]
cmp eax, dword [rbp + 0xcc]
jle 0x544d3d
lea rcx, [rbp + 0xcc]
lea rdx, [rbp + 0xcc]
lea r8, [rbp + 0xcc]
call fcn.00541440
mov eax, dword [rbp + 0xe4]
imul eax, eax, 0x2ce
mov dword [rbp + 0xe4], eax
mov rax, qword [rbp + 0x100]
mov rcx, qword [rax]
call fcn.0053d680
mov rcx, qword [rbp + 0xa0]
mov rdx, qword [rbp + 0x100]
mov rdx, qword [rdx]
mov rdx, qword [rdx + 8]
mov r8d, eax
xor r9, r9
mov dword [rsp + 0x20], 0
lea rax, [rbp + 0xa8]
mov qword [rsp + 0x28], rax
call sub.advapi32.dll_CryptImportKey
test eax, eax
je 0x54665c
mov eax, dword [rbp + 0xcc]
cmp eax, dword [rbp + 0xcc]
jle 0x544dc9
lea rcx, [rbp + 0xcc]
lea rdx, [rbp + 0xcc]
lea r8, [rbp + 0xc8]
lea r9, [rbp + 0xc8]
call fcn.005432c0
mov eax, dword [rbp + 0xcc]
cmp eax, dword [rbp + 0xcc]
jle 0x544df1
lea rcx, [rbp + 0xe4]
lea rdx, [rbp + 0xcc]
lea r8, [rbp + 0xcc]
call fcn.00541440
lea rcx, [0x00546e08]
lea rdx, [0x00546e28]
mov r8d, 1
call fcn.004102c0
cmp eax, 0x1d
je 0x544e22
mov eax, dword [rbp + 0xe8]
imul eax, eax, 0x20c
mov dword [rbp + 0xe8], eax
nop
lea rcx, [rbp + 0xb0]
xor edx, edx
xor r8, r8
mov r9d, 0x18
mov dword [rsp + 0x20], 0xf0000000
call sub.advapi32.dll_CryptAcquireContextA
test eax, eax
je 0x5465ff
add dword [rbp + 0xec], 0x16d
mov eax, dword [rbp + 0xe8]
imul eax, eax, 0x1b1
mov dword [rbp + 0xec], eax
mov eax, dword [rbp + 0xe8]
imul eax, eax, 0x1d6
mov dword [rbp + 0xe8], eax
mov eax, dword [rbp + 0xe4]
add eax, 0x1fa
mov dword [rbp + 0xe8], eax
mov eax, dword [rbp + 0xe4]
sub eax, 0x25f
mov dword [rbp + 0xe8], eax
nop
mov eax, dword [rbp + 0xcc]
add eax, dword [rbp + 0xc8]
mov ecx, dword [rbp + 0xc8]
add ecx, dword [rbp + 0xec]
cmp eax, ecx
jge 0x544ee7
lea rcx, [rbp + 0xcc]
lea rdx, [rbp + 0xc8]
lea r8, [rbp + 0xec]
lea r9, [rbp + 0xec]
lea rax, [rbp + 0xe8]
mov qword [rsp + 0x20], rax
call fcn.005366c0
mov dword [rbp + 0xc8], 0
sub dword [rbp + 0xe4], 0x2c5
mov eax, dword [rbp + 0xe8]
sub eax, dword [rbp + 0xe4]
cmp dword [rbp + 0xec], eax
jne 0x544f21
mov eax, 0x18c
sub eax, dword [rbp + 0xec]
mov dword [rbp + 0xec], eax
mov eax, dword [rbp + 0xcc]
add eax, dword [rbp + 0xc8]
mov ecx, dword [rbp + 0xc8]
add ecx, dword [rbp + 0xec]
cmp eax, ecx
jge 0x544f49
mov eax, dword [rbp + 0xcc]
mov dword [rbp + 0xcc], eax
mov eax, dword [rbp + 0xcc]
add dword [rbp + 0xcc], eax
mov eax, dword [rbp + 0xe4]
imul eax, eax, 0x2ba
mov dword [rbp + 0xe4], eax
add dword [rbp + 0xc8], 1
cmp dword [rbp + 0xc8], 3
jne 0x544ef1
nop
mov eax, dword [rbp + 0xcc]
imul eax, eax, 0x2cb
mov dword [rbp + 0xe4], eax
mov rcx, qword [rbp + 0xb0]
mov edx, 0x6610
mov r8d, 1
lea r9, [rbp + 0xb8]
call sub.advapi32.dll_CryptGenKey
test eax, eax
je 0x546428
mov eax, 0x5a
sub eax, dword [rbp + 0xcc]
cmp eax, 0xea
jge 0x544fdd
lea rcx, [rbp + 0xcc]
lea rdx, [rbp + 0xcc]
call fcn.00543050
lea rcx, [0x00546e50]
lea rdx, [0x00546e28]
mov r8d, 1
call fcn.004102c0
cmp eax, 0x18
je 0x545006
add dword [rbp + 0xe8], 0x205
nop
mov dword [rbp + 0xc8], 0
sub dword [rbp + 0xe4], 0x2a1
mov eax, dword [rbp + 0xec]
add eax, dword [rbp + 0xe8]
cmp eax, dword [rbp + 0xe4]
jle 0x545041
mov eax, 0x189
sub eax, dword [rbp + 0xec]
mov dword [rbp + 0xec], eax
mov eax, dword [rbp + 0xcc]
add eax, dword [rbp + 0xc8]
mov ecx, dword [rbp + 0xec]
add ecx, dword [rbp + 0xec]
cmp eax, ecx
jge 0x54506f
mov eax, 0x70
sub eax, dword [rbp + 0xec]
mov dword [rbp + 0xcc], eax
mov eax, 0x54
sub eax, dword [rbp + 0xec]
mov dword [rbp + 0xcc], eax
mov eax, dword [rbp + 0xcc]
add eax, dword [rbp + 0xc8]
mov ecx, dword [rbp + 0xc8]
add ecx, dword [rbp + 0xec]
cmp eax, ecx
jge 0x5450ac
mov eax, dword [rbp + 0xec]
add eax, 0x1c
mov dword [rbp + 0xcc], eax
add dword [rbp + 0xc8], 1
cmp dword [rbp + 0xc8], 3
jne 0x545011
nop
mov eax, dword [rbp + 0xe8]
imul eax, eax, 0x1a2
mov dword [rbp + 0xec], eax
add dword [rbp + 0xe8], 0x1e7
add dword [rbp + 0xe8], 0x20b
mov rcx, qword [rbp + 0xb8]
xor edx, edx
mov r8d, 8
xor r9, r9
mov qword [rsp + 0x20], 0
lea rax, [rbp + 0x8c]
mov qword [rsp + 0x28], rax
call sub.advapi32.dll_CryptExportKey
test eax, eax
je 0x54637a
mov eax, 0x14e
sub eax, dword [rbp + 0xec]
mov dword [rbp + 0xec], eax
mov ecx, pe_nt_image_headers64
call fcn.00409020
mov qword [rbp + 0xc0], rax
nop
lea rcx, [rbp + 0xcc]
lea rdx, [rbp + 0xcc]
call fcn.00541d40
mov eax, dword [rbp + 0xcc]
imul eax, eax, 0x2eb
mov dword [rbp + 0xe4], eax
mov rcx, qword [rbp + 0xb8]
xor edx, edx
mov r8d, 8
xor r9, r9
mov rax, qword [rbp + 0xc0]
mov qword [rsp + 0x20], rax
lea rax, [rbp + 0x8c]
mov qword [rsp + 0x28], rax
call sub.advapi32.dll_CryptExportKey
test eax, eax
je 0x5461fa
mov eax, dword [rbp + 0xcc]
imul eax, eax, 0x2e2
mov dword [rbp + 0xe4], eax
mov rcx, qword [0x00538bc0]
mov dl, 1
call fcn.0053b0a0
mov qword [rbp + 0xd0], rax
nop
mov dword [rbp + 0xc8], 0
sub dword [rbp + 0xe4], 0x29d
mov eax, dword [rbp + 0xe8]
sub eax, dword [rbp + 0xe4]
cmp dword [rbp + 0xec], eax
jne 0x545200
mov eax, 0x165
sub eax, dword [rbp + 0xec]
mov dword [rbp + 0xec], eax
mov eax, dword [rbp + 0xcc]
add eax, dword [rbp + 0xc8]
mov ecx, dword [rbp + 0xc8]
add ecx, dword [rbp + 0xec]
cmp eax, ecx
jge 0x54522b
mov eax, dword [rbp + 0xec]
add eax, 0x4c
mov dword [rbp + 0xcc], eax
mov eax, 0x50
sub eax, dword [rbp + 0xec]
mov dword [rbp + 0xcc], eax
mov eax, 0x75
sub eax, dword [rbp + 0xec]
mov dword [rbp + 0xcc], eax
add dword [rbp + 0xc8], 1
cmp dword [rbp + 0xc8], 3
jne 0x5451d0
nop
mov eax, dword [rbp + 0xe8]
imul eax, eax, 0x1ba
mov dword [rbp + 0xec], eax
add dword [rbp + 0xe8], 0x1df
add dword [rbp + 0xe8], 0x203
mov rax, qword [rbp + 0x108]
mov rcx, qword [rax]
call fcn.0053d680
movsxd rax, eax
mov qword [rbp + 0x78], rax
mov eax, dword [rbp + 0xcc]
cmp eax, dword [rbp + 0xcc]
jle 0x5452c1
lea rcx, [rbp + 0xcc]
lea rdx, [rbp + 0xcc]
call fcn.00543050
mov rax, qword [rbp + 0x108]
mov rcx, qword [rax]
xor edx, edx
xor r8, r8
call fcn.0053d0f0
mov eax, dword [rbp + 0xcc]
imul eax, eax, 0x2e3
mov dword [rbp + 0xe4], eax
mov ecx, 0x100080
call fcn.00409020
mov qword [rbp + 0xd8], rax
mov eax, dword [rbp + 0xcc]
imul eax, eax, 0x2ec
mov dword [rbp + 0xe4], eax
nop
mov dword [rbp + 0x70], 0
mov eax, 0x181
sub eax, dword [rbp + 0xe8]
mov dword [rbp + 0xec], eax
mov eax, dword [rbp + 0xe8]
imul eax, eax, 0x1c6
mov dword [rbp + 0xec], eax
add dword [rbp + 0xe8], 0x20a
mov eax, dword [rbp + 0xe4]
add eax, 0x22f
mov dword [rbp + 0xe8], eax
mov eax, dword [rbp + 0xe4]
sub eax, 0x253
mov dword [rbp + 0xe8], eax
jmp 0x54587b
mov eax, dword [rbp + 0xcc]
cmp eax, dword [rbp + 0xcc]
jle 0x545399
lea rcx, [rbp + 0xcc]
lea rdx, [rbp + 0xcc]
lea r8, [rbp + 0xc8]
lea r9, [rbp + 0xec]
call fcn.005432c0
mov eax, dword [rbp + 0xcc]
cmp eax, dword [rbp + 0xcc]
jle 0x5453ba
lea rcx, [rbp + 0xcc]
lea rdx, [rbp + 0xcc]
call fcn.00543050
mov eax, dword [rbp + 0xec]
add eax, 0x106
mov dword [rbp + 0xc8], eax
cmp qword [rbp + 0x78], 0x100000
jle 0x5454be
mov dword [rbp + 0xcc], 0
cmp dword [rbp + 0xcc], 1
jge 0x545478
add dword [rbp + 0xcc], 1
mov eax, dword [rbp + 0xe8]
sub eax, dword [rbp + 0xe4]
cmp eax, dword [rbp + 0xcc]
jge 0x54541e
mov eax, dword [rbp + 0xe4]
add eax, 0x243
mov dword [rbp + 0xe8], eax
cmp dword [rbp + 0xec], 0
jne 0x545439
mov eax, 0x14b
sub eax, dword [rbp + 0xec]
mov dword [rbp + 0xec], eax
mov eax, dword [rbp + 0xcc]
add eax, dword [rbp + 0xc8]
mov ecx, dword [rbp + 0xc8]
add ecx, dword [rbp + 0xec]
cmp eax, ecx
jge 0x545461
mov eax, dword [rbp + 0xc8]
mov dword [rbp + 0xc8], eax
add dword [rbp + 0xc8], 0x3f6
cmp dword [rbp + 0xcc], 1
jl 0x5453f1
nop
mov eax, 0x13b
sub eax, dword [rbp + 0xec]
mov dword [rbp + 0xec], eax
mov eax, dword [rbp + 0xe8]
imul eax, eax, 0x1a0
mov dword [rbp + 0xec], eax
mov dword [rbp + 0x88], 0x100000
mov eax, dword [rbp + 0xec]
add eax, 0xc3
mov dword [rbp + 0xc8], eax
jmp 0x545548
mov eax, dword [rbp + 0xcc]
cmp eax, dword [rbp + 0xcc]
jle 0x5454ed
lea rcx, [rbp + 0xcc]
lea rdx, [rbp + 0xcc]
lea r8, [rbp + 0xc8]
lea r9, [rbp + 0xc8]
call fcn.005432c0
mov eax, dword [rbp + 0x78]
mov dword [rbp + 0x88], eax
mov eax, 0x187
sub eax, dword [rbp + 0xe8]
mov dword [rbp + 0xec], eax
mov eax, dword [rbp + 0xe8]
imul eax, eax, 0x1ec
mov dword [rbp + 0xe8], eax
add dword [rbp + 0xe8], 0x210
mov eax, dword [rbp + 0xe4]
add eax, 0x235
mov dword [rbp + 0xe8], eax
mov eax, dword [rbp + 0xe4]
sub eax, 0x279
mov dword [rbp + 0xe8], eax
mov rax, qword [rbp + 0x108]
mov rcx, qword [rax]
mov rdx, qword [rbp + 0xd8]
mov r8d, dword [rbp + 0x88]
call fcn.0053e540
mov eax, dword [rbp + 0xe8]
imul eax, eax, 0x1bc
mov dword [rbp + 0xec], eax
mov eax, dword [rbp + 0xe4]
add eax, 0x221
mov dword [rbp + 0xe8], eax
mov eax, dword [rbp + 0xe4]
sub eax, 0x245
mov dword [rbp + 0xe8], eax
mov eax, dword [rbp + 0xe4]
sub eax, 0x24a
mov dword [rbp + 0xe8], eax
sub dword [rbp + 0xe4], 0x28e
mov eax, dword [rbp + 0x88]
mov dword [rbp + 0x84], eax
mov dword [rbp + 0xc8], 0
mov eax, dword [rbp + 0xcc]
sub eax, 0x2c6
mov dword [rbp + 0xe4], eax
mov eax, dword [rbp + 0xec]
add eax, dword [rbp + 0xe8]
cmp eax, dword [rbp + 0xe4]
jle 0x545605
mov eax, 0x18d
sub eax, dword [rbp + 0xe8]
mov dword [rbp + 0xec], eax
mov eax, dword [rbp + 0xcc]
sub eax, dword [rbp + 0xc8]
test eax, eax
jle 0x545627
mov eax, 0x74
sub eax, dword [rbp + 0xec]
mov dword [rbp + 0xec], eax
mov eax, dword [rbp + 0xcc]
add eax, dword [rbp + 0xc8]
mov ecx, dword [rbp + 0xc8]
add ecx, dword [rbp + 0xec]
cmp eax, ecx
jge 0x54564f
mov eax, dword [rbp + 0xcc]
mov dword [rbp + 0xcc], eax
add dword [rbp + 0xcc], 0x3e0
add dword [rbp + 0xc8], 1
cmp dword [rbp + 0xc8], 3
jne 0x5455cd
nop
mov dword [rbp + 0xc8], 0
mov eax, dword [rbp + 0xe8]
sub eax, dword [rbp + 0xe4]
cmp eax, dword [rbp + 0xcc]
jge 0x545696
add dword [rbp + 0xe8], 0x20b
mov eax, dword [rbp + 0xc8]
sub eax, dword [rbp + 0xec]
mov ecx, dword [rbp + 0xec]
sub ecx, dword [rbp + 0xe8]
cmp eax, ecx
jle 0x5456c4
mov eax, 0xd2
sub eax, dword [rbp + 0xec]
mov dword [rbp + 0xec], eax
mov eax, 0x56
sub eax, dword [rbp + 0xec]
mov dword [rbp + 0xec], eax
mov eax, dword [rbp + 0xcc]
add eax, dword [rbp + 0xc8]
mov ecx, dword [rbp + 0xc8]
add ecx, dword [rbp + 0xec]
cmp eax, ecx
jge 0x545701
mov eax, dword [rbp + 0xec]
add eax, 0x1e
mov dword [rbp + 0xcc], eax
mov eax, 0x42
sub eax, dword [rbp + 0xec]
mov dword [rbp + 0xcc], eax
add dword [rbp + 0xc8], 1
cmp dword [rbp + 0xc8], 3
jne 0x545678
nop
mov eax, dword [rbp + 0xe8]
imul eax, eax, 0x188
mov dword [rbp + 0xec], eax
mov eax, dword [rbp + 0xe8]
imul eax, eax, 0x1ac
mov dword [rbp + 0xec], eax
mov eax, dword [rbp + 0x84]
sub qword [rbp + 0x78], rax
mov eax, dword [rbp + 0xe4]
add eax, 0x244
mov dword [rbp + 0xe8], eax
lea rcx, [rbp + 0xcc]
lea rdx, [rbp + 0xcc]
call fcn.00543050
mov eax, dword [rbp + 0xec]
add eax, 0x127
mov dword [rbp + 0xc8], eax
mov rcx, qword [rbp + 0xb8]
xor edx, edx
or r8d, 0xffffffff
xor r9, r9
mov qword [rsp + 0x20], 0
lea rax, [rbp + 0x88]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x30], 0
call sub.advapi32.dll_CryptEncrypt
test eax, eax
je 0x545886
mov eax, dword [rbp + 0xe4]
add eax, 0x24e
mov dword [rbp + 0xe8], eax
cmp dword [rbp + 0x70], 0
jne 0x5457ee
mov eax, dword [rbp + 0x88]
sub eax, dword [rbp + 0x84]
mov dword [rbp + 0x70], eax
sub dword [rbp + 0xe4], 0x276
mov rcx, qword [rbp + 0xb8]
xor edx, edx
or r8d, 0xffffffff
xor r9, r9
mov rax, qword [rbp + 0xd8]
mov qword [rsp + 0x20], rax
lea rax, [rbp + 0x84]
mov qword [rsp + 0x28], rax
mov eax, dword [rbp + 0x88]
mov dword [rsp + 0x30], eax
call sub.advapi32.dll_CryptEncrypt
test eax, eax
je 0x545886
sub dword [rbp + 0xe4], 0x29c
mov rcx, qword [rbp + 0xd0]
mov rdx, qword [rbp + 0xd8]
mov r8d, dword [rbp + 0x88]
call fcn.0053ee00
mov eax, dword [rbp + 0xcc]
imul eax, eax, 0x2f4
mov dword [rbp + 0xe4], eax
mov eax, dword [rbp + 0xe4]
add eax, 0x23d
mov dword [rbp + 0xe8], eax
cmp qword [rbp + 0x78], 0
jg 0x54536a
nop
cmp qword [rbp + 0x78], 0
jne 0x546110
mov eax, dword [rbp + 0xcc]
cmp eax, dword [rbp + 0xcc]
jle 0x5458ba
lea rcx, [rbp + 0xcc]
lea rdx, [rbp + 0xcc]
lea r8, [rbp + 0xc8]
call fcn.00543e70
mov eax, 0x58
sub eax, dword [rbp + 0xcc]
cmp eax, 0x100
jge 0x5458e8
lea rcx, [rbp + 0xcc]
lea rdx, [rbp + 0xcc]
lea r8, [rbp + 0xcc]
call fcn.00541440
mov eax, dword [rbp + 0x8c]
mov dword [rbp + 0x88], eax
mov dword [rbp + 0xcc], 0
cmp dword [rbp + 0xcc], 1
jge 0x54597b
add dword [rbp + 0xcc], 1
mov eax, dword [rbp + 0xec]
add eax, dword [rbp + 0xe4]
cmp eax, dword [rbp + 0xe4]
jle 0x545934
mov eax, dword [rbp + 0xe8]
imul eax, eax, 0x1cc
mov dword [rbp + 0xec], eax
mov eax, dword [rbp + 0xec]
add eax, dword [rbp + 0xe8]
cmp dword [rbp + 0xc8], eax
jne 0x54595a
mov eax, dword [rbp + 0xec]
add eax, 0xd4
mov dword [rbp + 0xc8], eax
mov eax, dword [rbp + 0xc8]
mov dword [rbp + 0xc8], eax
mov eax, dword [rbp + 0xc8]
mov dword [rbp + 0xc8], eax
cmp dword [rbp + 0xcc], 1
jl 0x545907
nop
mov dword [rbp + 0xcc], 0
mov eax, dword [rbp + 0xe4]
sub eax, dword [rbp + 0xc8]
mov dword [rbp + 0xe8], eax
mov eax, dword [rbp + 0xc8]
mov dword [rbp + 0xe4], eax
add dword [rbp + 0xc8], 0x36c
mov eax, dword [rbp + 0xec]
add eax, 0x3f1
mov dword [rbp + 0xc8], eax
mov eax, dword [rbp + 0xc8]
mov dword [rbp + 0xc8], eax
add dword [rbp + 0xcc], 1
cmp dword [rbp + 0xcc], 3
jne 0x545986
nop
mov dword [rbp + 0xcc], 0
mov eax, dword [rbp + 0xec]
add eax, dword [rbp + 0xe4]
cmp eax, dword [rbp + 0xe4]
jle 0x545a0d
mov eax, dword [rbp + 0xe8]
imul eax, eax, 0x19f
mov dword [rbp + 0xec], eax
mov eax, dword [rbp + 0xcc]
sub eax, dword [rbp + 0xc8]
test eax, eax
jle 0x545a2c
mov eax, dword [rbp + 0xec]
add eax, 0x66
mov dword [rbp + 0xc8], eax
mov eax, dword [rbp + 0xec]
add eax, 0xa
mov dword [rbp + 0xc8], eax
mov eax, dword [rbp + 0xc8]
mov dword [rbp + 0xc8], eax
mov eax, dword [rbp + 0xec]
add eax, 0x392
mov dword [rbp + 0xc8], eax
add dword [rbp + 0xcc], 1
cmp dword [rbp + 0xcc], 3
jne 0x5459e7
nop
mov eax, dword [rbp + 0xcc]
cmp eax, dword [rbp + 0xcc]
jle 0x545a96
lea rcx, [rbp + 0xcc]
lea rdx, [rbp + 0xcc]
lea r8, [rbp + 0xcc]
call fcn.00541a90
mov rcx, qword [rbp + 0xa8]
xor edx, edx
or r8d, 0xffffffff
xor r9, r9
mov qword [rsp + 0x20], 0
lea rax, [rbp + 0x88]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x30], 0
call sub.advapi32.dll_CryptEncrypt
test eax, eax
je 0x545e07
mov dword [rbp + 0xcc], 0
mov eax, dword [rbp + 0xe8]
add eax, dword [rbp + 0xe4]
cmp eax, dword [rbp + 0xcc]
jle 0x545b00
mov eax, dword [rbp + 0xe4]
add eax, 0x201
mov dword [rbp + 0xe8], eax
mov eax, dword [rbp + 0xec]
add eax, dword [rbp + 0xe8]
cmp dword [rbp + 0xc8], eax
jne 0x545b26
mov eax, dword [rbp + 0xec]
add eax, 0xe8
mov dword [rbp + 0xc8], eax
mov eax, dword [rbp + 0xec]
add eax, 0x2b
mov dword [rbp + 0xc8], eax
mov eax, dword [rbp + 0xc8]
mov dword [rbp + 0xc8], eax
mov eax, dword [rbp + 0xc8]
mov dword [rbp + 0xc8], eax
add dword [rbp + 0xcc], 1
cmp dword [rbp + 0xcc], 3
jne 0x545ada
nop
mov dword [rbp + 0xc8], 0
mov eax, dword [rbp + 0xe8]
sub eax, dword [rbp + 0xe4]
cmp eax, dword [rbp + 0xe4]
jge 0x545ba6
mov eax, dword [rbp + 0xe8]
add eax, 0x1de
mov dword [rbp + 0xec], eax
jmp 0x545ba6
mov eax, dword [rbp + 0xcc]
add eax, dword [rbp + 0xcc]
mov ecx, dword [rbp + 0xc8]
add ecx, dword [rbp + 0xec]
cmp eax, ecx
jge 0x545bce
mov eax, dword [rbp + 0xcc]
mov dword [rbp + 0xcc], eax
mov dword [rbp + 0xcc], 0
mov eax, dword [rbp + 0xcc]
imul eax, eax, 0x2d4
mov dword [rbp + 0xe4], eax
add dword [rbp + 0xc8], 1
cmp dword [rbp + 0xc8], 3
jne 0x545b6c
nop
mov eax, dword [rbp + 0xec]
add eax, 0x103
mov dword [rbp + 0xc8], eax
mov eax, 0x168
sub eax, dword [rbp + 0xec]
mov dword [rbp + 0xec], eax
mov rcx, qword [rbp + 0xa8]
xor edx, edx
or r8d, 0xffffffff
xor r9, r9
mov rax, qword [rbp + 0xc0]
mov qword [rsp + 0x20], rax
lea rax, [rbp + 0x8c]
mov qword [rsp + 0x28], rax
mov eax, dword [rbp + 0x88]
mov dword [rsp + 0x30], eax
call sub.advapi32.dll_CryptEncrypt
test eax, eax
je 0x545e07
mov dword [rbp + 0xcc], 0
mov eax, dword [rbp + 0xe8]
sub eax, dword [rbp + 0xe4]
cmp eax, dword [rbp + 0xe4]
jge 0x545c92
mov eax, dword [rbp + 0xe8]
imul eax, eax, 0x1f3
mov dword [rbp + 0xe8], eax
mov eax, dword [rbp + 0xec]
add eax, dword [rbp + 0xe8]
cmp dword [rbp + 0xc8], eax
jne 0x545cb2
mov eax, dword [rbp + 0xc8]
mov dword [rbp + 0xc8], eax
add dword [rbp + 0xc8], 0x3fd
mov eax, dword [rbp + 0xec]
add eax, 2
mov dword [rbp + 0xc8], eax
add dword [rbp + 0xcc], 1
cmp dword [rbp + 0xcc], 3
jne 0x545c6c
nop
mov dword [rbp + 0xc8], 0
mov eax, dword [rbp + 0xe4]
sub eax, 0x289
mov dword [rbp + 0xe8], eax
cmp dword [rbp + 0xec], 0
jne 0x545d13
mov eax, dword [rbp + 0xe8]
imul eax, eax, 0x130
mov dword [rbp + 0xec], eax
mov eax, dword [rbp + 0xcc]
sub eax, dword [rbp + 0xc8]
test eax, eax
jle 0x545d32
mov eax, dword [rbp + 0xec]
add eax, 0x77
mov dword [rbp + 0xcc], eax
mov eax, dword [rbp + 0xcc]
mov dword [rbp + 0xcc], eax
mov dword [rbp + 0xcc], 0
add dword [rbp + 0xc8], 1
cmp dword [rbp + 0xc8], 3
jne 0x545ce6
nop
mov eax, dword [rbp + 0xcc]
cmp eax, dword [rbp + 0xcc]
jle 0x545d7a
lea rcx, [rbp + 0xcc]
lea rdx, [rbp + 0xcc]
call fcn.00541d40
mov rcx, qword [rbp + 0xd0]
lea rdx, [rbp + 0x70]
mov r8d, 4
call fcn.0053ee00
mov eax, dword [rbp + 0xcc]
sub eax, 0x2a4
mov dword [rbp + 0xe4], eax
mov rcx, qword [rbp + 0xd0]
mov rdx, qword [rbp + 0xc0]
mov r8d, dword [rbp + 0x88]
call fcn.0053ee00
mov eax, dword [rbp + 0xe8]
imul eax, eax, 0x1be
mov dword [rbp + 0xec], eax
add dword [rbp + 0xe8], 0x203
mov eax, dword [rbp + 0xe4]
sub eax, 0x267
mov dword [rbp + 0xe8], eax
sub dword [rbp + 0xe4], 0x28c
mov eax, dword [rbp + 0xe4]
imul eax, eax, 0x2d0
mov dword [rbp + 0xe4], eax
mov rax, qword [rbp + 0x108]
mov rcx, qword [rax]
call fcn.0053bfc0
mov eax, dword [rbp + 0xe4]
sub eax, 0x267
mov dword [rbp + 0xe8], eax
mov rcx, qword [rbp + 0xd0]
xor edx, edx
xor r8, r8
call fcn.0053d0f0
sub dword [rbp + 0xe4], 0x29e
mov rcx, qword [rbp + 0xd0]
call fcn.0053d680
test eax, eax
jle 0x545e9c
mov eax, dword [rbp + 0xcc]
sub eax, 0x2d5
mov dword [rbp + 0xe4], eax
mov rcx, qword [rbp + 0xd0]
call fcn.0053d680
mov rcx, qword [rbp + 0x108]
mov rcx, qword [rcx]
mov rdx, qword [rbp + 0xd0]
mov r8d, eax
call fcn.0053f550
mov eax, 0x138
sub eax, dword [rbp + 0xec]
mov dword [rbp + 0xec], eax
mov eax, dword [rbp + 0xe8]
shl eax, 7
lea rax, [rax + rax*2]
mov dword [rbp + 0xec], eax
mov eax, dword [rbp + 0xe8]
imul eax, eax, 0x1a5
mov dword [rbp + 0xec], eax
mov eax, dword [rbp + 0xe8]
add eax, 0x1e9
mov dword [rbp + 0xec], eax
add dword [rbp + 0xe8], 0x20e
mov eax, dword [rbp + 0xe4]
sub eax, 0x252
mov dword [rbp + 0xe8], eax
mov rax, qword [rbp + 0x108]
mov rcx, qword [rax]
xor edx, edx
xor r8, r8
call fcn.0053d0f0
mov dword [rbp + 0xcc], 0
cmp dword [rbp + 0xcc], 1
jge 0x545f8a
add dword [rbp + 0xcc], 1
mov eax, dword [rbp + 0xec]
add eax, dword [rbp + 0xe4]
cmp eax, dword [rbp + 0xe4]
jle 0x545f43
mov eax, dword [rbp + 0xe8]
imul eax, eax, 0x1ed
mov dword [rbp + 0xe8], eax
mov eax, dword [rbp + 0xec]
add eax, dword [rbp + 0xe8]
cmp dword [rbp + 0xc8], eax
jne 0x545f69
mov eax, dword [rbp + 0xec]
add eax, 0xf5
mov dword [rbp + 0xc8], eax
mov eax, dword [rbp + 0xc8]
mov dword [rbp + 0xc8], eax
mov eax, dword [rbp + 0xc8]
mov dword [rbp + 0xc8], eax
cmp dword [rbp + 0xcc], 1
jl 0x545f16
nop
mov dword [rbp + 0xc8], 0
mov eax, dword [rbp + 0xe8]
add eax, dword [rbp + 0xe4]
cmp eax, dword [rbp + 0xcc]
jle 0x545fb3
add dword [rbp + 0xe8], 0x1e7
mov eax, dword [rbp + 0xec]
sub eax, dword [rbp + 0xe8]
test eax, eax
jge 0x545fd5
mov eax, 0xce
sub eax, dword [rbp + 0xec]
mov dword [rbp + 0xec], eax
mov eax, dword [rbp + 0xcc]
add eax, dword [rbp + 0xcc]
mov ecx, dword [rbp + 0xc8]
add ecx, dword [rbp + 0xec]
cmp eax, ecx
jge 0x546003
mov eax, 0x96
sub eax, dword [rbp + 0xec]
mov dword [rbp + 0xec], eax
mov eax, dword [rbp + 0xcc]
add eax, dword [rbp + 0xc8]
mov ecx, dword [rbp + 0xc8]
add ecx, dword [rbp + 0xec]
cmp eax, ecx
jge 0x54602e
mov eax, dword [rbp + 0xec]
add eax, 0x3e
mov dword [rbp + 0xcc], eax
mov eax, dword [rbp + 0xec]
mov dword [rbp + 0xcc], eax
add dword [rbp + 0xc8], 1
cmp dword [rbp + 0xc8], 3
jne 0x545f95
nop
mov dword [rbp + 0xc8], 0
mov eax, dword [rbp + 0xe8]
sub eax, dword [rbp + 0xe4]
cmp eax, dword [rbp + 0xcc]
jge 0x546077
add dword [rbp + 0xe8], 0x20d
mov eax, dword [rbp + 0xc8]
sub eax, dword [rbp + 0xec]
mov ecx, dword [rbp + 0xec]
sub ecx, dword [rbp + 0xe8]
cmp eax, ecx
jle 0x5460a5
mov eax, dword [rbp + 0xe8]
imul eax, eax, 0xd4
mov dword [rbp + 0xec], eax
mov eax, dword [rbp + 0xcc]
sub eax, dword [rbp + 0xc8]
test eax, eax
jle 0x5460c4
mov eax, dword [rbp + 0xec]
add eax, 0x7c
mov dword [rbp + 0xcc], eax
mov eax, dword [rbp + 0xec]
add eax, 0x20
mov dword [rbp + 0xcc], eax
mov eax, dword [rbp + 0xec]
add eax, 0x44
mov dword [rbp + 0xcc], eax
add dword [rbp + 0xc8], 1
cmp dword [rbp + 0xc8], 3
jne 0x546059
nop
mov byte [rbp + 0x9f], 1
mov eax, dword [rbp + 0xe4]
sub eax, 0x282
mov dword [rbp + 0xe8], eax
nop
mov eax, dword [rbp + 0xe8]
imul eax, eax, 0x1e1
mov dword [rbp + 0xec], eax
mov eax, dword [rbp + 0xe4]
add eax, 0x205
mov dword [rbp + 0xe8], eax
mov eax, dword [rbp + 0xe4]
add eax, 0x22a
mov dword [rbp + 0xe8], eax
mov eax, dword [rbp + 0xe4]
add eax, 0x22e
mov dword [rbp + 0xe8], eax
mov eax, dword [rbp + 0xe4]
sub eax, 0x272
mov dword [rbp + 0xe8], eax
mov rcx, qword [rbp + 0xd8]
call fcn.00409050
mov eax, dword [rbp + 0xe4]
add eax, 0x25b
mov dword [rbp + 0xe8], eax
nop
mov eax, dword [rbp + 0xe8]
imul eax, eax, 0x1f1
mov dword [rbp + 0xe8], eax
add dword [rbp + 0xe8], 0x1f6
mov eax, dword [rbp + 0xe4]
add eax, 0x21a
mov dword [rbp + 0xe8], eax
mov eax, dword [rbp + 0xe4]
add eax, 0x21e
mov dword [rbp + 0xe8], eax
mov eax, dword [rbp + 0xe4]
add eax, 0x223
mov dword [rbp + 0xe8], eax
mov rcx, qword [rbp + 0xd0]
call fcn.0040b1e0
mov eax, dword [rbp + 0xe8]
imul eax, eax, 0x1cb
mov dword [rbp + 0xe8], eax
nop
mov dword [rbp + 0xcc], 0
cmp dword [rbp + 0xcc], 1
jge 0x546276
add dword [rbp + 0xcc], 1
mov eax, dword [rbp + 0xec]
add eax, dword [rbp + 0xe4]
cmp eax, dword [rbp + 0xe4]
jle 0x54623b
mov eax, dword [rbp + 0xe8]
imul eax, eax, 0x1ca
mov dword [rbp + 0xe8], eax
mov eax, dword [rbp + 0xec]
sub eax, dword [rbp + 0xe8]
test eax, eax
jge 0x546255
add dword [rbp + 0xc8], 0xb2
mov eax, dword [rbp + 0xc8]
mov dword [rbp + 0xc8], eax
mov eax, dword [rbp + 0xc8]
mov dword [rbp + 0xc8], eax
cmp dword [rbp + 0xcc], 1
jl 0x54620e
nop
mov dword [rbp + 0xc8], 0
mov eax, dword [rbp + 0xe8]
add eax, dword [rbp + 0xe4]
cmp eax, dword [rbp + 0xcc]
jle 0x54629f
add dword [rbp + 0xe8], 0x1e4
mov eax, dword [rbp + 0xec]
add eax, dword [rbp + 0xe8]
cmp dword [rbp + 0xc8], eax
jne 0x5462c5
mov eax, 0xcb
sub eax, dword [rbp + 0xec]
mov dword [rbp + 0xec], eax
mov eax, dword [rbp + 0xcc]
add eax, dword [rbp + 0xcc]
mov ecx, dword [rbp + 0xc8]
add ecx, dword [rbp + 0xec]
cmp eax, ecx
jge 0x5462f0
mov eax, dword [rbp + 0xec]
add eax, 0x13
mov dword [rbp + 0xcc], eax
mov eax, dword [rbp + 0xec]
add eax, 0x57
mov dword [rbp + 0xcc], eax
mov eax, dword [rbp + 0xec]
add eax, 0x1b
mov dword [rbp + 0xcc], eax
add dword [rbp + 0xc8], 1
cmp dword [rbp + 0xc8], 3
jne 0x546281
nop
mov eax, 0x161
sub eax, dword [rbp + 0xec]
mov dword [rbp + 0xec], eax
mov rcx, qword [rbp + 0xc0]
call fcn.00409050
mov eax, 0x57
sub eax, dword [rbp + 0xcc]
cmp eax, 0xec
jge 0x546368
lea rcx, [rbp + 0xcc]
lea rdx, [rbp + 0xcc]
call fcn.00541d40
mov eax, dword [rbp + 0xec]
add eax, 0xc8
mov dword [rbp + 0xc8], eax
nop
mov eax, dword [rbp + 0xcc]
cmp eax, dword [rbp + 0xcc]
jle 0x5463a3
lea rcx, [rbp + 0xcc]
lea rdx, [rbp + 0xcc]
lea r8, [rbp + 0xc8]
call fcn.005360e0
mov eax, 0x55
sub eax, dword [rbp + 0xcc]
cmp eax, 0xf6
jge 0x5463d1
lea rcx, [rbp + 0xe4]
lea rdx, [rbp + 0xcc]
lea r8, [rbp + 0xcc]
call fcn.00541440
mov eax, dword [rbp + 0xec]
add eax, 0xdd
mov dword [rbp + 0xc8], eax
mov eax, 0x56
sub eax, dword [rbp + 0xcc]
cmp eax, 0xfb
jge 0x54640a
lea rcx, [rbp + 0xcc]
lea rdx, [rbp + 0xcc]
call fcn.00541d40
mov eax, dword [rbp + 0xcc]
imul eax, eax, 0x2fb
mov dword [rbp + 0xe4], eax
mov rcx, qword [rbp + 0xb8]
call sub.advapi32.dll_CryptDestroyKey
nop
mov eax, dword [rbp + 0xe8]
imul eax, eax, 0x1aa
mov dword [rbp + 0xec], eax
mov eax, dword [rbp + 0xe8]
imul eax, eax, 0x1ce
mov dword [rbp + 0xec], eax
mov eax, dword [rbp + 0xe8]
imul eax, eax, 0x1f3
mov dword [rbp + 0xe8], eax
add dword [rbp + 0xe8], 0x1f7
mov eax, dword [rbp + 0xe4]
add eax, 0x23c
mov dword [rbp + 0xe8], eax
mov eax, dword [rbp + 0xcc]
add eax, dword [rbp + 0xcc]
mov ecx, dword [rbp + 0xc8]
add ecx, dword [rbp + 0xec]
cmp eax, ecx
jge 0x5464b8
lea rcx, [rbp + 0xcc]
lea rdx, [rbp + 0xc8]
lea r8, [rbp + 0xec]
lea r9, [rbp + 0xec]
call fcn.00537d10
mov dword [rbp + 0xcc], 0
mov eax, dword [rbp + 0xec]
add eax, dword [rbp + 0xe4]
cmp eax, dword [rbp + 0xe4]
jle 0x5464e8
mov eax, dword [rbp + 0xe8]
imul eax, eax, 0x1da
mov dword [rbp + 0xec], eax
mov eax, dword [rbp + 0xec]
sub eax, dword [rbp + 0xe8]
test eax, eax
jge 0x546504
mov eax, dword [rbp + 0xc8]
mov dword [rbp + 0xc8], eax
mov eax, dword [rbp + 0xec]
mov dword [rbp + 0xc8], eax
add dword [rbp + 0xc8], 0x3c9
mov eax, dword [rbp + 0xc8]
mov dword [rbp + 0xc8], eax
add dword [rbp + 0xcc], 1
cmp dword [rbp + 0xcc], 3
jne 0x5464c2
nop
mov dword [rbp + 0xc8], 0
mov eax, dword [rbp + 0xe8]
sub eax, dword [rbp + 0xe4]
cmp eax, dword [rbp + 0xe4]
jge 0x54657b
mov eax, dword [rbp + 0xe8]
imul eax, eax, 0x1d8
mov dword [rbp + 0xe8], eax
jmp 0x54657b
mov eax, dword [rbp + 0xcc]
add eax, dword [rbp + 0xcc]
mov ecx, dword [rbp + 0xc8]
add ecx, dword [rbp + 0xec]
cmp eax, ecx
jge 0x5465a3
mov eax, dword [rbp + 0xcc]
mov dword [rbp + 0xcc], eax
mov dword [rbp + 0xcc], 0
mov eax, dword [rbp + 0xcc]
imul eax, eax, 0x2ee
mov dword [rbp + 0xe4], eax
add dword [rbp + 0xc8], 1
cmp dword [rbp + 0xc8], 3
jne 0x546541
nop
mov rcx, qword [rbp + 0xb0]
xor edx, edx
call sub.advapi32.dll_CryptReleaseContext
lea rcx, [rbp + 0xcc]
lea rdx, [rbp + 0xcc]
call fcn.00541d40
sub dword [rbp + 0xe4], 0x29b
nop
mov eax, dword [rbp + 0xe4]
sub eax, 0x27f
mov dword [rbp + 0xe8], eax
lea rcx, [rbp + 0xcc]
lea rdx, [rbp + 0xcc]
lea r8, [rbp + 0xc8]
call fcn.00543e70
mov rcx, qword [rbp + 0xa8]
call sub.advapi32.dll_CryptDestroyKey
lea rcx, [rbp + 0xcc]
lea rdx, [rbp + 0xcc]
lea r8, [rbp + 0xcc]
call fcn.00541a90
sub dword [rbp + 0xe4], 0x2d4
nop
lea rcx, [0x00546e70]
lea rdx, [0x00546e28]
mov r8d, 1
call fcn.004102c0
cmp eax, 0x1e
je 0x54668e
mov eax, dword [rbp + 0xe4]
add eax, 0x237
mov dword [rbp + 0xe8], eax
lea rcx, [0x00546e90]
lea rdx, [0x00546e28]
mov r8d, 1
call fcn.004102c0
cmp eax, 0x23
je 0x5466bf
mov eax, dword [rbp + 0xe4]
add eax, 0x23b
mov dword [rbp + 0xe8], eax
mov rcx, qword [rbp + 0xa0]
xor edx, edx
call sub.advapi32.dll_CryptReleaseContext
mov eax, dword [rbp + 0xe4]
sub eax, 0x284
mov dword [rbp + 0xe8], eax
jmp 0x5466fb
add dword [rbp + 0xe8], 0x203
nop
lea rcx, [rbp + 0x48]
mov edx, 2
call fcn.0040e6b0
lea rcx, [rbp + 0x68]
call fcn.0040e5d0
movzx rax, byte [rbp + 0x9f]
lea rsp, [rbp + 0xf0]
pop rbp
ret