Function at 0x457040
Capabilities:
Encode data using xor
Resolve function by parsing pe exports

Disassembly:
mov eax, 0x1118
call fcn.0078c8d0
mov eax, dword [0x7fa354]
cmp eax, 0x4592abf1
jne 0x457440
mov eax, str.fZbalZvaZi5r6a
push ebx
mov dword [esp + 0x94], eax
mov dword [esp + 0xb4], eax
push ebp
lea eax, [esp + 0x14]
push esi
push edi
mov dword [esp + 0x1c], str.jgo_fqvaag
mov dword [esp + 0x20], str.dwhjwlkl
mov dword [esp + 0x24], str.gjk_vlkl
mov dword [esp + 0x28], str.vpwcdf__cc_fqvlkl
mov dword [esp + 0x2c], str.fdh_wdvlkl
mov dword [esp + 0x30], str.fZkjaZhbZi5r6a
mov dword [esp + 0x34], str.fZkjaZwnZi5r6a
mov dword [esp + 0x38], str.fZkjaZciZi5r6a
mov dword [esp + 0x3c], str.fZkjaZ_kZi5r6a
mov dword [esp + 0x40], str.fZkjaZhbjZi5r6a
mov dword [esp + 0x44], str.fZkjaZwnjZi5r6a
mov dword [esp + 0x48], str.fZkjaZfm_hqZi5r6a
mov dword [esp + 0x4c], str.fZkjaZvklu_wZi5r6a
mov dword [esp + 0x50], str.fZkjaZwvjiaZi5r6a
mov dword [esp + 0x54], str.fZkjaZvqiqmZi5r6a
mov dword [esp + 0x58], str.fZkjaZvdnpZi5r6a
mov dword [esp + 0x5c], str.fZkjaZvdnp7Zi5r6a
mov dword [esp + 0x60], str.fZkjaZwdsZi5r6a
mov dword [esp + 0x64], str.fZkjaZhwdsZi5r6a
mov dword [esp + 0x68], str.fZkjaZha
mov dword [esp + 0x6c], 0x7fa684
mov dword [esp + 0x70], str.fZkjaZqfZi5r6a
mov dword [esp + 0x74], str.fZkjaZhpqdkqZi5r6a
mov dword [esp + 0x78], str.fZkjaZhviaZi5r6a
mov dword [esp + 0x7c], str.fZkjaZvvjiaZi5r6a
mov dword [esp + 0x80], str.fZkjaZu_qhZi5r6a
mov dword [esp + 0x84], str.fZkjaZndk_Zi5r6a
mov dword [esp + 0x88], str.fZbalZhbZi5r6a
mov dword [esp + 0x8c], str.fZbalZwnZi5r6a
mov dword [esp + 0x90], str.fZbalZbwZi5r6a
mov dword [esp + 0x94], str.fZbalZ_kZi5r6a
mov dword [esp + 0x98], str.fZbalZhbjZi5r6a
mov dword [esp + 0x9c], str.fZbalZwnjZi5r6a
mov dword [esp + 0xa4], str.fZbalZa_daZi5r6a
mov dword [esp + 0xa8], str.fZbalZbpkZi5r6a
mov dword [esp + 0xac], str.fZbalZuqfmZi5r6a
mov dword [esp + 0xb0], str.fZmdsjfZi5r6a
mov dword [esp + 0xb4], str.fZmdsjfkZi5r6a
mov dword [esp + 0xb8], str.fZmdsjfrZi5r6a
mov dword [esp + 0xbc], str.fZmdsjfaZi5r6a
mov dword [esp + 0xc4], str.fZbalZva7Zi5r6a
mov dword [esp + 0xc8], str.fZbalZhjglZi5r6a
mov dword [esp + 0xcc], str.fZbalZmjqrZi5r6a
mov dword [esp + 0xd0], str.fZbalZiqZi5r6a
mov dword [esp + 0xd4], str.fZkjaZu_qwZi5r6a
mov dword [esp + 0xd8], str.fZijbdkZi5r6a
mov dword [esp + 0xdc], str.fZbalZijfn_Zi5r6a
mov dword [esp + 0xe0], str.sZkjaZgpbbr6a
mov dword [esp + 0xe4], str.sZkjaZdufZhr6a
mov dword [esp + 0xe8], str.sZkjaZdwqiwr6a
mov dword [esp + 0xec], str.sZkjaZcidh_r6a
mov dword [esp + 0xf0], str.sZkjaZiqdknr6a
mov dword [esp + 0xf4], str.sZkjaZvqiqmr6a
mov dword [esp + 0xf8], str.sZkjaZqwkvuqZhr6a
mov dword [esp + 0xfc], str.sZkjaZdudfm_Zhr6a
mov dword [esp + 0x100], str.sZfmdh_i_jkr6a
mov dword [esp + 0x104], str.sZbalZmphs__r6a
mov dword [esp + 0x108], str.sZbalZdufZhr6a
mov dword [esp + 0x10c], str.sZbalZhwivr6a
mov dword [esp + 0x110], str.sZbalZh_aqknr6a
mov dword [esp + 0x114], str.sZbalZhdhhqmr6a
mov dword [esp + 0x118], str.sZulfnpu54r6a
mov dword [esp + 0x11c], str.sZv_adk54r6a
mov dword [esp + 0x120], str.sZbalZjwfdZhr6a
mov dword [esp + 0x124], str.sZbalZqwkvuqZhr6a
mov dword [0x7fa354], 0
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], 0x43
mov ecx, dword [esp + 0x14]
mov eax, dword [0x809d38]
mov dword [esp + 0x10], eax
mov esi, dword [ecx]
test esi, esi
je 0x45737d
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
test ecx, ecx
jle 0x45733a
inc ecx
push eax
push ecx
lea ecx, [esp + 0x18]
call fcn.005dcfa0
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebp, ecx
lea ecx, [esp + 0x10]
lea ebx, [ebp + 1]
push ebx
call fcn.005dd330
mov edi, dword [esp + 0x10]
mov eax, dword [0x809d38]
cmp edi, eax
je 0x457369
mov dword [edi - 4], ebp
mov edi, dword [esp + 0x10]
mov ecx, ebx
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [esp + 0x10]
mov cl, byte [eax]
test cl, cl
je 0x457394
xor cl, 5
mov byte [eax], cl
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x457383
mov eax, dword [esp + 0x10]
mov ecx, dword [0x809e74]
push eax
mov edx, dword [ecx]
call dword [edx + 4]
mov esi, eax
test esi, esi
je 0x457414
mov eax, dword [esi]
push 0
mov ecx, esi
call dword [eax + 0x14]
test al, al
je 0x457414
mov edx, dword [esi]
mov ecx, esi
call dword [edx + 0x30]
mov edi, eax
mov eax, dword [esi]
push 1
mov ecx, esi
call dword [eax + 0x1c]
test edi, edi
jle 0x45740d
cmp edi, 0x1000
mov eax, edi
jl 0x4573d8
mov eax, 0x1000
mov edx, dword [esi]
push eax
lea eax, [esp + 0x12c]
mov ecx, esi
push eax
call dword [edx + 0x24]
mov ecx, dword [0x7fa354]
mov ebx, eax
push ecx
lea edx, [esp + 0x12c]
push ebx
push edx
call fcn.005e6bd0
sub edi, ebx
add esp, 0xc
test edi, edi
mov dword [0x7fa354], eax
jg 0x4573c9
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x38]
lea ecx, [esp + 0x10]
call fcn.005dd410
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
add ecx, 4
dec eax
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], eax
jne 0x45730b
mov eax, dword [0x7fa354]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1118
ret