Function at 0x1000ee22
Capabilities:
Encode data using xor

Disassembly:
mov eax, 0x10059215
call fcn.100586e8
sub esp, 0x30
cmp byte [ebp + 0x10], 0
push ebx
push esi
push edi
mov edi, edx
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x20], edi
mov byte [ebp - 0x14], cl
je 0x1000ef9f
mov dword [ebp - 0x1c], 0x7310
cmp dword [ebp - 0x1c], 0x7384
jle 0x1000eeab
xor esi, esi
mov edi, esi
mov dword [ebp + 0x10], 0x62c5
xor ebx, ebx
mov eax, edi
lea ecx, [ebp - 0x3c]
and eax, ebx
cdq
push edx
push eax
call fcn.10001a55
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x1000ee7d
mov eax, dword [eax]
push eax
call fcn.100402ac
pop ecx
push 0
push 1
lea ecx, [ebp - 0x3c]
call fcn.10004889
inc ebx
cmp ebx, 0x4277
jl 0x1000ee64
dec edi
dec dword [ebp + 0x10]
jne 0x1000ee62
inc esi
cmp esi, 0x58e9
jl 0x1000ee59
mov edi, dword [ebp - 0x20]
cmp byte [ebp + 0xc], 0
je 0x1000ef5a
mov dword [ebp - 0x18], 0x543e
cmp dword [ebp - 0x18], 0x55c4
jle 0x1000ef1c
push 0
push 0x791
push 0x2360
push 0
push 0x955
push 0x64f
push 0
call dword [sym.imp.KERNEL32.dll_CreateFileW]
xor esi, esi
xor edi, edi
xor ebx, ebx
mov dword [ebp + 0x10], 0x17f7
mov eax, ebx
mov ecx, 0x10073018
or eax, esi
cdq
push edx
push eax
call fcn.1000421d
add ebx, edi
dec dword [ebp + 0x10]
jne 0x1000eef2
inc edi
cmp edi, 0x5ac5
jl 0x1000eee9
inc esi
cmp esi, 0x4c79
jl 0x1000eee7
and dword [ebp - 4], 0
cmp dword [ebp - 0x18], 0x52ed
jge 0x1000ef38
mov edx, str.qdgaq_lqyvxwj_srmx_dlitfh_ykeytn_eoymglk_mfmblop_suefe_xvtp_scxui_ssrkskas_nzaklh_ffutigqkq
mov ecx, 0x10073018
call fcn.100065e2
mov eax, dword [ebp + 0x14]
mov byte [eax], 1
jmp 0x1000ef83
mov esi, dword [ebp + 8]
mov ebx, dword [ebp + 0x18]
mov eax, dword [esi + 4]
sub eax, dword [esi]
sar eax, 2
mov dword [edi], eax
jmp 0x1000ef7f
and dword [ebp - 0x24], 0
lea eax, [ebp - 0x24]
push eax
mov ecx, esi
call fcn.100102fa
inc dword [edi]
mov eax, dword [edi]
cmp eax, dword [ebx]
jl 0x1000ef6c
cmp dword [ebp - 0x1c], 0x72b6
jge 0x1000f075
push str.xgjhkg_bmgk_gieigsk_eiga_hqzdgj_yazffvium_jrgn_umshakd_rrjg_gaoepaf_vwsiougy_wuy
call fcn.100402ac
jmp 0x1000f04d
test cl, cl
je 0x1000f06a
mov dword [ebp - 0x20], 0x57cb
cmp dword [ebp - 0x20], 0x5a37
jle 0x1000f019
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_SaveDC]
xor esi, esi
mov dword [ebp - 0x18], esi
mov edi, esi
mov dword [ebp - 0x1c], 0xd0b
mov ebx, edi
mov dword [ebp + 0x10], 0x1a27
xor esi, esi
mov eax, ebx
mov ecx, 0x10073018
xor eax, esi
cdq
push edx
push eax
call fcn.1000421d
inc esi
cmp esi, 0x6d69
jl 0x1000efe4
dec ebx
dec dword [ebp + 0x10]
jne 0x1000efe2
dec edi
dec dword [ebp - 0x1c]
jne 0x1000efd9
mov esi, dword [ebp - 0x18]
inc esi
mov dword [ebp - 0x18], esi
cmp esi, 0x3203
jl 0x1000efd0
mov dword [ebp - 4], 4
cmp dword [ebp - 0x20], 0x546b
jge 0x1000f038
mov edx, str.nnudxrzsc_cepvywvat_npvd_msastv_hds_abjoi_sqgow_zvnthg_oedxriywa_jcgjt_ijn_liq
mov ecx, 0x10073018
call fcn.100065e2
mov eax, dword [ebp + 0x1c]
or dword [ebp - 4], 0xffffffff
cmp byte [eax], 0
je 0x1000f075
push ecx
push 1
call fcn.1000dc3e
pop ecx
pop ecx
jmp 0x1000f075
push 0x1411
call dword [sym.imp.USER32.dll_BeginDeferWindowPos]
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret