Function at 0x414410
Capabilities:
Contain obfuscated stackstrings
Encode data using xor
Encrypt data using aes
Reference aes constants
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x64
mov eax, dword [0x4aa018]
xor eax, esp
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0x6c]
push ebx
push ebp
push esi
mov esi, dword [esp + 0x74]
mov ebx, ecx
mov word [esp + 0x33], 0x7974
mov word [esp + 0x30], 0x6d45
mov byte [esp + 0x32], 0x70
mov dword [esp + 0x35], 0x79656b20
mov byte [esp + 0x39], 0
mov dword [esp + 0x47], 0x6c207965
mov dword [esp + 0x3e], 0x72726f63
mov word [esp + 0x4e], 0x6874
mov word [esp + 0x3c], 0x6e49
mov dword [esp + 0x42], 0x20746365
mov byte [esp + 0x46], 0x6b
mov word [esp + 0x4b], 0x6e65
mov byte [esp + 0x50], 0
mov byte [esp + 0x4d], 0x67
mov word [esp + 0x60], 0x636f
mov word [esp + 0x5d], 0x6220
mov word [esp + 0x55], 0x636e
mov dword [esp + 0x67], 0x687467
mov byte [esp + 0x54], 0x49
mov dword [esp + 0x58], 0x63657272
mov word [esp + 0x65], 0x6e65
mov word [esp + 0x62], 0x206b
mov byte [esp + 0x5c], 0x74
mov byte [esp + 0x64], 0x6c
mov byte [esp + 0x5f], 0x6c
mov byte [esp + 0x57], 0x6f
push edi
test esi, esi
je 0x4148a9
mov dword [ebx + 0x3c8], 0x20
mov dword [ebx + 0x3cc], 0x10
movups xmm0, xmmword [eax]
movups xmmword [ebx + 0x3d4], xmm0
movups xmm0, xmmword [eax]
movups xmmword [ebx + 0x3f4], xmm0
mov eax, dword [ebx + 0x3c8]
mov ecx, dword [ebx + 0x3cc]
cmp eax, 0x10
je 0x41452b
cmp eax, 0x18
je 0x414521
mov eax, 0xe
jmp 0x414544
xor eax, eax
cmp ecx, 0x20
sete al
jmp 0x41453d
cmp ecx, 0x10
jne 0x414535
lea eax, [ecx - 6]
jmp 0x414544
xor eax, eax
cmp ecx, 0x18
setne al
lea eax, [eax*2 + 0xc]
mov dword [ebx + 0x3d0], eax
mov eax, ecx
cdq
xor ecx, ecx
and edx, 3
mov dword [esp + 0x18], ecx
lea ebp, [edx + eax]
mov eax, dword [ebx + 0x3d0]
sar ebp, 2
mov dword [esp + 0x1c], ebp
test eax, eax
js 0x414592
lea edx, [ebx + 8]
nop dword [eax]
test ebp, ebp
jle 0x414580
mov ecx, ebp
xor eax, eax
mov edi, edx
rep stosd dword es:[edi], eax
mov ecx, dword [esp + 0x18]
mov eax, dword [ebx + 0x3d0]
inc ecx
add edx, 0x20
mov dword [esp + 0x18], ecx
cmp ecx, eax
jle 0x414570
xor edx, edx
test eax, eax
js 0x4145be
lea esi, [ebx + 0x1e8]
nop
test ebp, ebp
jle 0x4145ac
mov ecx, ebp
xor eax, eax
mov edi, esi
rep stosd dword es:[edi], eax
mov eax, dword [ebx + 0x3d0]
inc edx
add esi, 0x20
cmp edx, eax
jle 0x4145a0
mov esi, dword [esp + 0x78]
inc eax
lea edi, [ebx + 0x414]
imul eax, ebp
mov dword [esp + 0x24], eax
mov eax, dword [ebx + 0x3c8]
cdq
and edx, 3
add eax, edx
sar eax, 2
mov dword [esp + 0x18], eax
test eax, eax
jle 0x41467b
mov ebp, eax
nop dword [eax]
movzx eax, byte [esi]
lea esi, [esi + 4]
shl eax, 0x18
lea edi, [edi + 4]
mov dword [edi - 4], eax
movzx edx, byte [esi - 3]
shl edx, 0x10
or edx, eax
mov dword [edi - 4], edx
movzx ecx, byte [esi - 2]
shl ecx, 8
or ecx, edx
mov dword [edi - 4], ecx
movzx eax, byte [esi - 1]
or eax, ecx
mov dword [edi - 4], eax
sub ebp, 1
jne 0x4145f0
mov ebp, dword [esp + 0x1c]
lea ecx, [ebx + 0x414]
mov dword [esp + 0x14], ecx
xor edi, edi
cmp edi, dword [esp + 0x24]
jge 0x41480c
mov eax, edi
mov ecx, dword [ecx]
cdq
inc edi
idiv ebp
lea esi, [edx + eax*8]
mov dword [ebx + esi*4 + 8], ecx
mov ecx, dword [ebx + 0x3d0]
mov esi, dword [esp + 0x18]
sub ecx, eax
mov eax, dword [esp + 0x14]
lea ecx, [edx + ecx*8]
mov eax, dword [eax]
mov dword [ebx + ecx*4 + 0x1e8], eax
mov ecx, dword [esp + 0x14]
add ecx, 4
mov dword [esp + 0x14], ecx
cmp edi, esi
jl 0x414635
jmp 0x41467f
xor edi, edi
mov esi, eax
cmp edi, dword [esp + 0x24]
jge 0x41480c
mov dword [esp + 0x14], 0x4a1a10
lea ebp, [ebx + 0x414]
nop word [eax + eax]
mov edx, dword [ebx + esi*4 + 0x410]
mov eax, edx
sar eax, 0x10
movzx eax, al
movsx ecx, byte [eax + 0x4a4b30]
mov eax, dword [esp + 0x14]
inc dword [esp + 0x14]
movsx eax, byte [eax]
xor ecx, eax
mov eax, edx
sar eax, 8
movzx eax, al
shl ecx, 8
movzx eax, byte [eax + 0x4a4b30]
xor ecx, eax
movzx eax, dl
shl ecx, 8
sar edx, 0x18
movzx eax, byte [eax + 0x4a4b30]
xor ecx, eax
movzx eax, dl
shl ecx, 8
movzx eax, byte [eax + 0x4a4b30]
xor ecx, eax
xor dword [ebp], ecx
cmp esi, 8
je 0x41472b
cmp esi, 1
jle 0x41471e
lea ecx, [ebx + 0x418]
lea edx, [esi - 1]
nop
mov eax, dword [ecx - 4]
lea ecx, [ecx + 4]
xor dword [ecx - 4], eax
sub edx, 1
jne 0x414710
test esi, esi
jle 0x4147fe
jmp 0x4147af
lea eax, [ebx + 0x418]
mov edx, 3
mov ecx, dword [eax - 4]
lea eax, [eax + 4]
xor dword [eax - 4], ecx
sub edx, 1
jne 0x414736
mov edx, dword [ebx + 0x420]
mov eax, edx
sar eax, 0x18
movzx eax, al
movsx ecx, byte [eax + 0x4a4b30]
mov eax, edx
sar eax, 0x10
movzx eax, al
shl ecx, 8
movzx eax, byte [eax + 0x4a4b30]
xor ecx, eax
mov eax, edx
sar eax, 8
movzx eax, al
shl ecx, 8
movzx eax, byte [eax + 0x4a4b30]
xor ecx, eax
movzx eax, dl
shl ecx, 8
mov edx, 3
movzx eax, byte [eax + 0x4a4b30]
xor ecx, eax
xor dword [ebx + 0x424], ecx
lea ecx, [ebx + 0x428]
mov eax, dword [ecx - 4]
lea ecx, [ecx + 4]
xor dword [ecx - 4], eax
sub edx, 1
jne 0x4147a1
mov dword [esp + 0x20], 0
cmp edi, dword [esp + 0x24]
jge 0x414808
mov eax, edi
mov ecx, dword [ebp]
cdq
inc edi
idiv dword [esp + 0x1c]
lea esi, [edx + eax*8]
mov dword [ebx + esi*4 + 8], ecx
mov ecx, dword [ebx + 0x3d0]
mov esi, dword [esp + 0x18]
sub ecx, eax
mov eax, dword [ebp]
add ebp, 4
lea ecx, [edx + ecx*8]
mov dword [ebx + ecx*4 + 0x1e8], eax
mov eax, dword [esp + 0x20]
inc eax
mov dword [esp + 0x20], eax
cmp eax, esi
jl 0x4147b7
lea ebp, [ebx + 0x414]
cmp edi, dword [esp + 0x24]
jl 0x4146a0
mov ebp, dword [esp + 0x1c]
mov eax, 1
mov dword [esp + 0x20], eax
cmp dword [ebx + 0x3d0], eax
jle 0x414890
lea ecx, [ebx + 0x208]
mov dword [esp + 0x1c], ecx
test ebp, ebp
jle 0x41487c
mov esi, ecx
mov edi, ebp
nop
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 + 0x4a2630]
xor ecx, dword [eax*4 + 0x4a2230]
mov eax, edx
sar eax, 8
movzx eax, al
xor ecx, dword [eax*4 + 0x4a1e30]
movzx eax, dl
xor ecx, dword [eax*4 + 0x4a1a30]
mov dword [esi - 4], ecx
sub edi, 1
jne 0x414830
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x1c]
inc eax
add ecx, 0x20
mov dword [esp + 0x20], eax
mov dword [esp + 0x1c], ecx
cmp eax, dword [ebx + 0x3d0]
jl 0x414827
mov ecx, dword [esp + 0x70]
pop edi
pop esi
pop ebp
mov byte [ebx + 4], 1
pop ebx
xor ecx, esp
call fcn.0041c13e
add esp, 0x64
ret 0x10
lea eax, [esp + 0x34]
push eax
lea ecx, [esp + 0x2c]
call fcn.00403650
push 0x4a88ec
lea eax, [esp + 0x2c]
push eax
call fcn.0041f31d
int3