Function at 0x1003a40e
Capabilities:
Encode data using xor

Disassembly:
mov eax, 0x1005a647
call fcn.10058c78
sub esp, 0x78
push ebx
push esi
mov dword [ebp - 0x1c], 0x1a7
xor ebx, ebx
cmp dword [ebp - 0x1c], 0x1f4
push edi
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x30], ecx
jle 0x1003a47a
mov esi, ebx
mov edi, ebx
mov dword [ebp - 0x18], 0x57f8
mov eax, edi
lea ecx, [ebp - 0x6c]
cdq
push edx
push eax
call fcn.10001335
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x1003a458
mov eax, dword [eax]
push eax
call fcn.100420be
pop ecx
push ebx
push 1
lea ecx, [ebp - 0x6c]
call fcn.100015c8
add edi, esi
dec dword [ebp - 0x18]
jne 0x1003a441
inc esi
cmp esi, 0x2c78
jl 0x1003a438
cmp dword [ebp - 0x1c], 0xfffffebd
jge 0x1003a48e
push str.fnoddbpmo_nbyeqvlv_npit_sfbk_mjgecsz_vzvplumrs_jflrf_kpdhtwjt_wbrgxeetq_pngkridhf_eaxevzc_ekvsjhjtr
call fcn.100420be
pop ecx
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x28], 0x1380
cmp dword [ebp - 0x28], 0x1530
jle 0x1003a530
mov edi, ebx
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x20], ebx
mov eax, ebx
mov dword [ebp - 0x18], 0x6a71
mov dword [ebp - 0x1c], eax
mov esi, edi
mov dword [ebp - 0x2c], ebx
mov ecx, eax
mov edi, ebx
shl esi, cl
mov ecx, edi
mov eax, esi
shl eax, cl
lea ecx, [ebp - 0x84]
cdq
push edx
push eax
call fcn.10001335
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x1003a4e3
mov eax, dword [eax]
push eax
call fcn.100420be
pop ecx
push ebx
push 1
lea ecx, [ebp - 0x84]
call fcn.100015c8
inc edi
cmp edi, 0x3ba
jl 0x1003a4c5
mov eax, dword [ebp - 0x1c]
mov esi, dword [ebp - 0x20]
add eax, esi
dec dword [ebp - 0x18]
mov edi, dword [ebp - 0x24]
mov dword [ebp - 0x1c], eax
jne 0x1003a4ba
inc esi
mov dword [ebp - 0x20], esi
cmp esi, 0x4e51
jl 0x1003a4ae
inc edi
mov dword [ebp - 0x24], edi
cmp edi, 0x1786
jl 0x1003a4ab
cmp dword [ebp - 0x28], 0x10ed
jge 0x1003a544
push str.unxqwlu_cvelxdhmc_aqloolku_fxqjf_lgo_ggjurvffl_lsxzdw_wkphuoojo_chebteiwg_tbkeb_azuvszk
call fcn.100420be
pop ecx
or dword [ebp - 4], 0xffffffff
cmp byte [ebp + 0x14], 0
je 0x1003a66b
mov dword [ebp - 0x28], 0x2e7f
cmp dword [ebp - 0x28], 0x313e
jle 0x1003a5a3
mov esi, ebx
mov edi, ebx
mov dword [ebp - 0x2c], ebx
mov ecx, ebx
mov eax, edi
sar eax, cl
mov ecx, 0x10074f78
xor eax, esi
cdq
push edx
push eax
call fcn.10009792
inc ebx
cmp ebx, 0x2db1
jl 0x1003a569
inc edi
push 0
pop ebx
cmp edi, 0x67a
jl 0x1003a566
inc esi
cmp esi, 0x2c51
jl 0x1003a564
push ebx
call dword [sym.imp.USER32.dll_RegisterClassW]
mov dword [ebp - 4], 4
cmp dword [ebp - 0x28], 0x2e2e
jge 0x1003a5c2
mov edx, str.lwymym_zdulvgg_xktpulqy_zfonwbg_yznt_rsyeyzapd_aaaibfi_cedrnr_wjccss
mov ecx, 0x10074f78
call fcn.1000cd04
or dword [ebp - 4], 0xffffffff
sub esp, 0x18
mov ecx, esp
push dword [ebp + 0x24]
call fcn.10001442
lea ecx, [ebp - 0x3c]
call fcn.10039b8a
add esp, 0x18
mov dword [ebp - 4], 6
mov eax, dword [ebp - 0x38]
cmp dword [ebp - 0x3c], eax
je 0x1003a664
push dword [ebp - 0x2c]
xor ecx, ecx
mov dword [ebp - 0x40], 7
push eax
push dword [ebp - 0x3c]
mov word [ebp - 0x54], cx
lea ecx, [ebp - 0x54]
mov dword [ebp - 0x44], ebx
call fcn.10026b7a
mov ecx, dword [ebp - 0x30]
lea edx, [ebp - 0x54]
mov byte [ebp - 4], 7
call fcn.1003a3c1
lea ecx, [ebp - 0x54]
push ebx
push 1
test eax, eax
jns 0x1003a65f
mov eax, dword [ebp + 8]
mov byte [eax], 1
call fcn.10001734
lea ecx, [ebp - 0x3c]
call fcn.10014a1c
jmp 0x1003a68b
call fcn.10001734
mov eax, dword [ebp + 8]
mov byte [eax], bl
jmp 0x1003a630
mov eax, dword [ebp + 0x10]
mov esi, dword [eax]
mov eax, dword [ebp + 0x18]
mov edx, dword [eax]
mov eax, dword [ebp + 0x1c]
mov ecx, dword [eax]
mov eax, dword [edx + esi*4]
cmp eax, dword [ecx + esi*4]
jle 0x1003a68b
mov eax, dword [ebp + 0xc]
mov dword [eax], 1
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret