Function at 0x10011d61
Capabilities:
Encode data using xor

Disassembly:
mov eax, 0x10062dac
call fcn.10062184
sub esp, 0x3c
push ebx
push esi
mov dword [ebp - 0x28], 0x3792
xor ebx, ebx
cmp dword [ebp - 0x28], 0x3a8f
push edi
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x30], edx
mov dword [ebp - 0x24], ecx
jle 0x10011e15
mov dword [ebp - 0x14], ebx
mov esi, ebx
mov dword [ebp - 0x20], ebx
mov edi, ebx
mov dword [ebp - 0x1c], ebx
mov eax, esi
mov dword [ebp - 0x18], 0x67ea
cdq
idiv edi
mov esi, dword [ebp - 0x14]
mov edi, ebx
mov dword [ebp - 0x2c], edx
mov ecx, edi
mov eax, esi
sar eax, cl
lea ecx, [ebp - 0x48]
cdq
push edx
push eax
call fcn.10001351
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10011dcc
mov eax, dword [eax]
push eax
call fcn.10049280
pop ecx
push ebx
push 1
lea ecx, [ebp - 0x48]
call fcn.100017dc
add edi, dword [ebp - 0x2c]
dec dword [ebp - 0x18]
jne 0x10011db1
mov edi, dword [ebp - 0x1c]
mov esi, dword [ebp - 0x20]
inc edi
mov dword [ebp - 0x1c], edi
cmp edi, 0x6666
jl 0x10011d9d
inc esi
mov dword [ebp - 0x20], esi
cmp esi, 0x5141
jl 0x10011d98
mov eax, dword [ebp - 0x14]
inc eax
mov dword [ebp - 0x14], eax
cmp eax, 0x3ff
jl 0x10011d93
mov ecx, dword [ebp - 0x24]
cmp byte [ebp + 0x2c], 0
je 0x10011f87
mov dword [ebp - 0x1c], 0x5ea7
mov edi, 0x1007f278
cmp dword [ebp - 0x1c], 0x608e
jle 0x10011e88
mov esi, ebx
mov dword [ebp - 0x20], esi
mov ecx, ebx
mov dword [ebp + 0x2c], ebx
mov eax, esi
mov dword [ebp - 0x2c], ebx
cdq
idiv ecx
mov esi, edx
mov ecx, ebx
mov eax, esi
sar eax, cl
mov ecx, edi
cdq
push edx
push eax
call fcn.1000b2a8
inc ebx
cmp ebx, 0x5fb1
jl 0x10011e48
mov ecx, dword [ebp + 0x2c]
mov esi, dword [ebp - 0x20]
inc ecx
mov dword [ebp + 0x2c], ecx
push 0
pop ebx
cmp ecx, 0x638f
jl 0x10011e3e
inc esi
mov dword [ebp - 0x20], esi
cmp esi, 0x60f9
jl 0x10011e39
call dword [sym.imp.KERNEL32.dll_GetUserDefaultLCID]
cmp byte [ebp + 0x24], 0
je 0x10011ec4
mov esi, dword [ebp + 0x30]
mov dword [esi], 2
jmp 0x10011ebb
mov byte [ebp + 0x2f], bl
cmp byte [ebp + 0x2f], 0
je 0x10011eb9
push ecx
push ecx
push 0x2329
push ecx
mov edx, 0x7f94
xor cl, cl
call fcn.10011906
add esp, 0x10
dec dword [esi]
cmp dword [esi], ebx
jge 0x10011e99
jmp 0x10011f4c
mov dword [ebp + 0x2c], 0x2241
cmp dword [ebp + 0x2c], 0x22e9
jle 0x10011f02
mov esi, ebx
mov dword [ebp - 0x2c], ebx
mov eax, ebx
mov ecx, edi
xor eax, esi
cdq
push edx
push eax
call fcn.1000b2a8
inc ebx
cmp ebx, 0x6fc5
jl 0x10011ed9
inc esi
push 0
pop ebx
cmp esi, 0x6f2
jl 0x10011ed6
call dword [sym.imp.KERNEL32.dll_GetUserDefaultLCID]
mov dword [ebp - 4], ebx
cmp dword [ebp + 0x2c], 0x1f1e
jge 0x10011f3d
mov edx, str.bhfyjgrnf_ggv_hztombux_ejvuus_dnbvx_crqby_cgvmz_kkhycc_cqsrbrlcd_cbj_ywdgl_evdpqjepf_piqz
mov ecx, edi
call fcn.1000ee32
jmp 0x10011f3d
mov eax, dword [ebp + 0x38]
cmp byte [eax], 0
je 0x10011f4c
push ebx
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
mov dword [ebp - 4], 2
cmp dword [ebp - 0x1c], 0x5bdb
jge 0x10011f68
mov edx, str.hjgj_jobirf_uvmed_cnnrvj_onceccjxg_xyuvvk_ufin_kkenk_atjuaslbc
mov ecx, edi
call fcn.1000ee32
jmp 0x10012056
cmp byte [ebp + 0x34], 0
je 0x10011fe7
mov esi, dword [ebp + 0x10]
xor edx, edx
mov ecx, dword [esi]
mov eax, dword [esi]
cmp ecx, eax
mov eax, dword [esi]
setge dl
imul eax, edx
test eax, eax
jne 0x10011fa6
mov eax, dword [esi]
mov eax, dword [esi]
xor edx, edx
mov eax, dword [esi]
mov eax, dword [esi]
mov eax, dword [esi]
mov eax, dword [esi]
mov eax, dword [esi]
mov eax, dword [ebp + 0x18]
mov ecx, dword [ebp + 0xc]
mov dword [eax], 0x920a
mov eax, dword [esi]
mov eax, dword [esi]
mov eax, dword [esi]
mov dword [ecx], eax
mov eax, dword [ecx]
test eax, eax
mov ecx, dword [esi]
mov eax, dword [esi]
sete dl
imul ecx, edx
xor edx, edx
cmp ecx, eax
mov ecx, dword [esi]
mov eax, dword [ebp + 0x28]
setne dl
imul ecx, edx
jmp 0x10012054
mov edx, dword [ebp + 8]
xor ebx, ebx
mov esi, dword [ebp + 0x1c]
mov edi, dword [ebp + 0x14]
mov eax, dword [edx]
mov eax, dword [edx]
mov eax, dword [esi]
mov eax, dword [ecx]
add eax, dword [edx]
mov dword [edi], eax
mov ecx, dword [esi]
mov eax, dword [ebp - 0x30]
mov eax, dword [eax]
mov dword [eax], ecx
mov eax, dword [edx]
cmp ecx, eax
mov eax, dword [edx]
mov ecx, dword [edi]
setne bl
sub ebx, 0x9200
neg ebx
sbb ebx, ebx
sub ecx, eax
mov eax, dword [ebp - 0x24]
inc ebx
xor edx, edx
cmp ecx, ebx
setne dl
xor ecx, ecx
mov eax, dword [eax]
cmp edx, eax
mov eax, dword [esi]
setle cl
imul eax, ecx
neg eax
jne 0x10012041
xor eax, eax
cmp dword [edi], eax
je 0x10012044
xor eax, eax
inc eax
xor ecx, ecx
cmp eax, 0x993dd61f
mov eax, dword [ebp + 0x20]
setne cl
sub ecx, 4
mov dword [eax], ecx
cmp dword [ebp - 0x28], 0x36b2
jge 0x1001206a
push str.ndsgf_rjbia_njwyad_vba_rhhfbkgdh_wfo_sfbqnil
call fcn.10049280
pop ecx
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret