Function at 0x432ef0
Capabilities:
Encode data using xor
Encrypt data using aes
Reference aes constants

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4ea361
mov eax, dword fs:[0]
push eax
mov eax, 0x10b4
call fcn.0048c7c0
mov eax, dword [0x55b090]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, dword [ebp + 8]
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x10a8], eax
test edi, edi
je 0x432f86
mov ecx, edi
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x432f36
sub ecx, edx
sar ecx, 1
inc ecx
cmp ecx, 0x3fffffff
jg 0x432f86
lea eax, [ecx + ecx]
mov dword [ebp - 0x1094], eax
call fcn.0048c790
mov esi, esp
test esi, esi
je 0x432f86
push 0
push 0
push dword [ebp - 0x1094]
mov byte [esi], 0
push esi
push 0xffffffffffffffff
push edi
push 0
push 3
call dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
xor ecx, ecx
test eax, eax
cmove esi, ecx
jmp 0x432f88
xor esi, esi
mov ecx, esi
mov dword [ebp - 0xc14], 0
xorps xmm0, xmm0
mov dword [ebp - 0x10b0], 0
movq qword [ebp - 0xc1c], xmm0
mov dword [ebp - 0x10ac], 0xf
mov byte [ebp - 0x10c0], 0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x432fc0
sub ecx, edx
push ecx
push esi
lea ecx, [ebp - 0x10c0]
call fcn.00465950
lea edx, [ebp - 0x10c0]
mov dword [ebp - 4], 0
lea ecx, [ebp - 0xc1c]
call fcn.004e5270
mov byte [ebp - 4], 2
mov edx, dword [ebp - 0x10ac]
cmp edx, 0x10
jb 0x43302e
mov ecx, dword [ebp - 0x10c0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x433024
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x433024
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.00489951
add esp, 8
push 0x400
lea eax, [ebp - 0x410]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
mov esi, dword [ebp - 0xc18]
add esp, 0xc
mov edi, dword [ebp - 0xc1c]
xor edx, edx
sub esi, edi
je 0x433072
lea eax, [ebp - 0x410]
sub edi, eax
nop
lea ecx, [ebp - 0x410]
add ecx, edx
inc edx
mov al, byte [edi + ecx]
mov byte [ecx], al
cmp edx, esi
jb 0x433060
push 0x400
lea eax, [ebp - 0x810]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
push 0x400
lea eax, [ebp - 0xc10]
xorps xmm0, xmm0
push 0
push eax
movups xmmword [ebp - 0x10b8], xmm0
call sub.VCRUNTIME140.dll_memset
mov edx, 0x51d550
lea ecx, [ebp - 0x1094]
call fcn.004db320
push dword [eax]
lea eax, [ebp - 0xc10]
push 0x400
push eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strcpy_s]
add esp, 0x24
lea ecx, [ebp - 0x1094]
call dword [sym.imp.mfc140u.dll_Ordinal_1046]
mov dword [ebp - method.CRijndael.virtual_0], vtable.CRijndael.0
mov byte [ebp - 0x108c], 0
push 0x20
lea eax, [ebp - 0x10b8]
mov byte [ebp - 4], 3
push eax
lea eax, [ebp - 0xcbc]
mov dword [ebp - 0xcc8], 0x20
push eax
mov dword [ebp - 0xcc4], 0x20
call sub.VCRUNTIME140.dll_memcpy
push dword [ebp - 0xcc4]
lea eax, [ebp - 0x10b8]
push eax
lea eax, [ebp - 0xc9c]
push eax
call sub.VCRUNTIME140.dll_memcpy
mov esi, dword [ebp - 0xcc8]
add esp, 0x18
mov eax, dword [ebp - 0xcc4]
cmp esi, 0x10
je 0x433156
cmp esi, 0x18
je 0x43314c
mov ecx, 0xe
jmp 0x43316f
xor ecx, ecx
cmp eax, 0x20
sete cl
jmp 0x433168
cmp eax, 0x10
jne 0x433160
lea ecx, [eax - 6]
jmp 0x43316f
xor ecx, ecx
cmp eax, 0x18
setne cl
lea ecx, [ecx*2 + 0xc]
cdq
and edx, 3
mov dword [ebp - 0xcc0], ecx
add eax, edx
xor edx, edx
sar eax, 2
mov dword [ebp - 0x109c], eax
test ecx, ecx
js 0x4331b6
lea esi, [ebp - 0x1088]
test eax, eax
jle 0x4331a8
mov ecx, eax
mov edi, esi
xor eax, eax
rep stosd dword es:[edi], eax
mov ecx, dword [ebp - 0xcc0]
mov eax, dword [ebp - 0x109c]
inc edx
add esi, 0x20
cmp edx, ecx
jle 0x433190
mov esi, dword [ebp - 0xcc8]
xor edx, edx
test ecx, ecx
js 0x4331e8
lea esi, [ebp - 0xea8]
test eax, eax
jle 0x4331da
mov ecx, eax
mov edi, esi
xor eax, eax
rep stosd dword es:[edi], eax
mov ecx, dword [ebp - 0xcc0]
mov eax, dword [ebp - 0x109c]
inc edx
add esi, 0x20
cmp edx, ecx
jle 0x4331c2
mov esi, dword [ebp - 0xcc8]
lea edx, [ecx + 1]
imul edx, eax
lea edi, [ebp - 0xc10]
mov eax, esi
mov dword [ebp - 0x10a4], edx
cdq
and edx, 3
lea esi, [edx + eax]
sar esi, 2
lea eax, [ebp - 0xc7c]
mov dword [ebp - 0x1094], esi
mov dword [ebp - 0x1098], eax
test esi, esi
jle 0x433269
mov dword [ebp - 0x10a0], esi
movzx esi, byte [edi]
lea edi, [edi + 4]
movzx eax, byte [edi - 3]
shl esi, 8
or esi, eax
movzx eax, byte [edi - 2]
shl esi, 8
or esi, eax
movzx eax, byte [edi - 1]
shl esi, 8
or esi, eax
mov eax, dword [ebp - 0x1098]
mov dword [eax], esi
add eax, 4
sub dword [ebp - 0x10a0], 1
mov dword [ebp - 0x1098], eax
jne 0x433222
mov ecx, dword [ebp - 0xcc0]
mov esi, dword [ebp - 0x1094]
xor edi, edi
test esi, esi
jle 0x4332c0
nop
cmp edi, dword [ebp - 0x10a4]
jge 0x433475
mov eax, edi
mov ecx, dword [ebp + edi*4 - 0xc7c]
cdq
idiv dword [ebp - 0x109c]
lea esi, [edx + eax*8]
mov dword [ebp + esi*4 - 0x1088], ecx
mov ecx, dword [ebp - 0xcc0]
mov esi, dword [ebp - 0x1094]
sub ecx, eax
mov eax, dword [ebp + edi*4 - 0xc7c]
inc edi
lea ecx, [edx + ecx*8]
mov dword [ebp + ecx*4 - 0xea8], eax
cmp edi, esi
jl 0x433270
mov ecx, dword [ebp - 0xcc0]
cmp edi, dword [ebp - 0x10a4]
jge 0x43347b
mov dword [ebp - 0x10a0], 0x51d7c0
nop word [eax + eax]
mov edx, dword [ebp + esi*4 - 0xc80]
mov eax, edx
sar eax, 0x10
movzx eax, al
movsx ecx, byte [eax + 0x5208e0]
mov eax, dword [ebp - 0x10a0]
inc dword [ebp - 0x10a0]
movsx eax, byte [eax]
xor ecx, eax
mov eax, edx
sar eax, 8
movzx eax, al
shl ecx, 8
movzx eax, byte [eax + 0x5208e0]
xor ecx, eax
movzx eax, dl
shl ecx, 8
sar edx, 0x18
movzx eax, byte [eax + 0x5208e0]
xor ecx, eax
movzx eax, dl
shl ecx, 8
movzx eax, byte [eax + 0x5208e0]
xor ecx, eax
xor dword [ebp - 0xc7c], ecx
mov ecx, 1
cmp esi, 8
je 0x433380
cmp esi, ecx
jle 0x433404
nop dword [eax]
nop dword [eax + eax]
mov eax, dword [ebp + ecx*4 - 0xc80]
xor dword [ebp + ecx*4 - 0xc7c], eax
inc ecx
cmp ecx, esi
jl 0x433360
jmp 0x433404
mov eax, dword [ebp + ecx*4 - 0xc80]
xor dword [ebp + ecx*4 - 0xc7c], eax
inc ecx
cmp ecx, 4
jl 0x433380
mov ecx, dword [ebp - 0xc70]
mov eax, ecx
sar eax, 0x18
movzx eax, al
movsx edx, byte [eax + 0x5208e0]
mov eax, ecx
sar eax, 0x10
movzx eax, al
shl edx, 8
sar ecx, 8
movzx eax, byte [eax + 0x5208e0]
xor edx, eax
movzx eax, cl
shl edx, 8
mov ecx, 5
movzx eax, byte [eax + 0x5208e0]
xor edx, eax
movzx eax, byte [ebp - 0xc70]
shl edx, 8
movzx eax, byte [eax + 0x5208e0]
xor edx, eax
xor dword [ebp - 0xc6c], edx
nop dword [eax]
mov eax, dword [ebp + ecx*4 - 0xc80]
xor dword [ebp + ecx*4 - 0xc7c], eax
inc ecx
cmp ecx, 8
jl 0x4333f0
xor ecx, ecx
mov dword [ebp - 0x1098], ecx
test esi, esi
jle 0x433469
cmp edi, dword [ebp - 0x10a4]
jge 0x433475
mov eax, edi
mov ecx, dword [ebp + ecx*4 - 0xc7c]
cdq
inc edi
idiv dword [ebp - 0x109c]
lea esi, [edx + eax*8]
mov dword [ebp + esi*4 - 0x1088], ecx
mov ecx, dword [ebp - 0xcc0]
mov esi, dword [ebp - 0x1094]
sub ecx, eax
mov eax, dword [ebp - 0x1098]
lea ecx, [edx + ecx*8]
mov eax, dword [ebp + eax*4 - 0xc7c]
mov dword [ebp + ecx*4 - 0xea8], eax
mov ecx, dword [ebp - 0x1098]
inc ecx
mov dword [ebp - 0x1098], ecx
cmp ecx, esi
jl 0x433410
cmp edi, dword [ebp - 0x10a4]
jl 0x4332e0
mov ecx, dword [ebp - 0xcc0]
mov edx, 1
mov dword [ebp - 0x1094], edx
cmp ecx, edx
jle 0x433516
mov eax, dword [ebp - 0x109c]
lea esi, [ebp - 0xe88]
mov dword [ebp - 0x1098], esi
test eax, eax
jle 0x433502
mov edi, eax
mov edx, dword [esi]
lea esi, [esi + 4]
mov eax, edx
sar eax, 0x18
movzx ecx, al
mov eax, edx
sar eax, 0x10
movzx eax, al
mov ecx, dword [ecx*4 + 0x51e3e0]
xor ecx, dword [eax*4 + 0x51dfe0]
mov eax, edx
sar eax, 8
movzx eax, al
xor ecx, dword [eax*4 + 0x51dbe0]
movzx eax, dl
xor ecx, dword [eax*4 + 0x51d7e0]
mov dword [esi - 4], ecx
sub edi, 1
jne 0x4334a6
mov ecx, dword [ebp - 0xcc0]
mov eax, dword [ebp - 0x109c]
mov edx, dword [ebp - 0x1094]
mov esi, dword [ebp - 0x1098]
inc edx
add esi, 0x20
mov dword [ebp - 0x1094], edx
mov dword [ebp - 0x1098], esi
cmp edx, ecx
jl 0x4334a0
mov eax, dword [ebp - 0xc18]
sub eax, dword [ebp - 0xc1c]
push ecx
push eax
lea eax, [ebp - 0x810]
mov byte [ebp - 0x108c], 1
push eax
lea eax, [ebp - 0x410]
push eax
lea ecx, [ebp - 0x1090]
call fcn.004bbd10
lea ecx, [ebp - 0x810]
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x433550
sub ecx, edx
lea edi, [ecx + 1]
cmp edi, 0x3fffffff
jg 0x433594
lea eax, [edi + edi]
call fcn.0048c790
mov esi, esp
test esi, esi
je 0x433594
push edi
push esi
xor eax, eax
push 0xffffffffffffffff
mov word [esi], ax
lea eax, [ebp - 0x810]
push eax
push 0
push 3
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
neg eax
sbb eax, eax
and eax, esi
jmp 0x433596
xor eax, eax
push eax
push 0x400
push dword [ebp - 0x10a8]
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcscpy_s]
mov ecx, dword [ebp - 0xc1c]
add esp, 0xc
test ecx, ecx
je 0x4335e7
mov edx, dword [ebp - 0xc14]
mov eax, ecx
sub edx, ecx
cmp edx, 0x1000
jb 0x4335dd
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x4335dd
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.00489951
add esp, 8
lea esp, [ebp - 0x10cc]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00489916
mov esp, ebp
pop ebp
ret 0xc