Function at 0x1000931d
Capabilities:
Encode data using xor

Disassembly:
mov eax, 0x1005c152
call fcn.1005b9d8
sub esp, 0x4c
push ebx
push esi
mov dword [ebp - 0x1c], 0x6b0a
cmp dword [ebp - 0x1c], 0x6c12
push edi
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x20], ecx
jle 0x100093be
push 0
push 0
push 0x3a6
push 0
call dword [sym.imp.KERNEL32.dll_VerifyVersionInfoW]
xor esi, esi
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x14], 0x65d2
xor edi, edi
xor ebx, ebx
mov ecx, ebx
mov eax, edi
sar eax, cl
lea ecx, [ebp - 0x3c]
and eax, esi
cdq
push edx
push eax
call fcn.10001a84
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10009384
mov eax, dword [eax]
push eax
call fcn.1004434f
pop ecx
push 0
push 1
lea ecx, [ebp - 0x3c]
call fcn.100035c0
inc ebx
cmp ebx, 0x1ccd
jl 0x10009367
inc edi
cmp edi, 0x2624
jl 0x10009365
dec esi
dec dword [ebp - 0x14]
jne 0x10009363
mov esi, dword [ebp - 0x18]
inc esi
mov dword [ebp - 0x18], esi
cmp esi, 0x511d
jl 0x10009359
cmp dword [ebp - 0x1c], 0x68c0
jge 0x100093d2
push str.qizldvfq_rajbucwam_gtyoycoov_nbpnkusvd_bqybvhp_kgkustd_jpsv
call fcn.1004434f
pop ecx
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x14], 0x3254
cmp dword [ebp - 0x14], 0x35aa
jle 0x1000943a
xor ebx, ebx
xor edi, edi
mov dword [ebp - 0x18], edi
xor esi, esi
mov dword [ebp - 0x1c], esi
mov eax, edi
cdq
idiv esi
mov esi, 0x313d
mov edi, edx
mov eax, edi
mov ecx, 0x10077e58
xor eax, ebx
cdq
push edx
push eax
call fcn.100030bc
dec edi
dec esi
jne 0x100093fe
mov esi, dword [ebp - 0x1c]
mov edi, dword [ebp - 0x18]
inc esi
mov dword [ebp - 0x1c], esi
cmp esi, 0x6baf
jl 0x100093f2
inc edi
mov dword [ebp - 0x18], edi
cmp edi, 0x7b6e
jl 0x100093ed
inc ebx
cmp ebx, 0x2f6b
jl 0x100093e8
mov dword [ebp - 4], 2
cmp dword [ebp - 0x14], 0x30dc
jge 0x10009459
mov edx, str.igomzpxp_wct_kkha_dmfqdaysf_mhkk_prpphhfud_mvmupleod_lsray_ocdf_xcdqygy
mov ecx, 0x10077e58
call fcn.1000530a
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x18], 0x38b8
cmp dword [ebp - 0x18], 0x3a38
jle 0x100094e1
xor esi, esi
mov dword [ebp - 0x1c], esi
xor edi, edi
mov eax, esi
xor ebx, ebx
cdq
idiv edi
mov esi, edx
mov eax, esi
lea ecx, [ebp - 0x54]
or eax, ebx
cdq
push edx
push eax
call fcn.10001a84
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10009496
mov eax, dword [eax]
push eax
call fcn.1004434f
pop ecx
push 0
push 1
lea ecx, [ebp - 0x54]
call fcn.100035c0
inc ebx
cmp ebx, 0x9b1
jl 0x1000947d
mov esi, dword [ebp - 0x1c]
inc edi
cmp edi, 0x3d6c
jl 0x10009474
inc esi
mov dword [ebp - 0x1c], esi
cmp esi, 0x2542
jl 0x10009472
push 0x560
push 0x2604
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_EnableScrollBar]
cmp byte [ebp + 0x24], 0
je 0x1000952d
mov edx, dword [ebp + 0xc]
mov dword [edx], 0
cmp dword [edx], 1
jge 0x100095a4
mov esi, dword [ebp + 0x14]
mov ecx, dword [edx]
mov eax, dword [esi]
mov dword [eax + ecx*4], 1
inc dword [edx]
cmp dword [edx], 1
jl 0x100094fc
jmp 0x100095a4
mov edx, dword [ebp - 0x20]
xor ebx, ebx
mov esi, dword [ebp + 0x18]
mov edi, dword [ebp + 8]
mov eax, dword [edx]
mov dword [esi], eax
mov ecx, dword [edx]
mov eax, dword [edi]
cmp ecx, eax
mov ecx, dword [edx]
mov eax, dword [edx]
setg bl
xor edx, edx
cmp ecx, eax
mov ecx, dword [esi]
setg dl
xor eax, eax
cmp edx, ebx
setg al
xor edx, edx
mov dword [ebp - 0x24], eax
mov eax, dword [edi]
cmp ecx, eax
mov ecx, dword [ebp - 0x20]
setne dl
xor ebx, ebx
mov eax, dword [ecx]
cmp edx, eax
mov eax, dword [ebp + 0x28]
setge bl
xor ecx, ecx
mov eax, dword [eax]
cmp ebx, eax
mov eax, 0xffff
setle cl
cmp eax, ecx
mov eax, dword [edi]
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
mov eax, dword [ebp - 0x24]
setne cl
sub eax, ecx
xor ecx, ecx
cmp eax, 0x600d5493
mov eax, dword [ebp + 0x1c]
setle cl
mov dword [eax], ecx
cmp dword [ebp - 0x18], 0x3858
jge 0x100095b8
push str.sdtzjaat_cfcyye_mfowri_kdhaay_zxrgbpnk
call fcn.1004434f
pop ecx
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret