Function at 0x10029202
Capabilities:
Encode data using xor

Disassembly:
mov eax, 0x1005a89c
call fcn.100595f8
sub esp, 0x34
push ebx
push esi
mov byte [ebp - 0x14], dl
xor esi, esi
mov dword [ebp - 0x28], 0x6d60
cmp dword [ebp - 0x28], 0x7106
push edi
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x24], ecx
jle 0x10029289
mov ebx, esi
mov edi, esi
mov dword [ebp - 0x1c], esi
mov dword [ebp - 0x20], edi
mov dword [ebp - 0x18], 0x4b39
mov ecx, edi
mov eax, ebx
shl eax, cl
lea ecx, [ebp - 0x40]
cdq
push edx
push eax
call fcn.10001a8f
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10029259
mov eax, dword [eax]
push eax
call fcn.10041543
pop ecx
push esi
push 1
lea ecx, [ebp - 0x40]
call fcn.1000ea77
dec edi
dec dword [ebp - 0x18]
jne 0x1002923e
mov edi, dword [ebp - 0x1c]
inc edi
mov dword [ebp - 0x1c], edi
cmp edi, 0x3a55
jl 0x10029234
inc ebx
cmp ebx, 0x5a6b
jl 0x1002922f
cmp byte [ebp + 0xc], 0
je 0x1002943c
cmp byte [ebp - 0x14], 0
je 0x10029422
mov dword [ebp - 0x20], 0xc2e
cmp dword [ebp - 0x20], 0xd98
jle 0x10029301
push esi
call dword [sym.imp.KERNEL32.dll_SetThreadLocale]
mov ebx, esi
mov edi, 0x10075878
mov dword [ebp - 0x18], ebx
mov dword [ebp + 0xc], ebx
mov dword [ebp - 0x1c], 0x3878
mov ebx, esi
mov esi, dword [ebp + 0xc]
mov eax, esi
mov ecx, edi
xor eax, ebx
cdq
push edx
push eax
call fcn.1000dfeb
inc ebx
cmp ebx, 0x7913
jl 0x100292cd
dec esi
dec dword [ebp - 0x1c]
push 0
mov dword [ebp + 0xc], esi
pop esi
jne 0x100292c8
mov ebx, dword [ebp - 0x18]
inc ebx
mov dword [ebp - 0x18], ebx
cmp ebx, 0x2eef
jl 0x100292be
jmp 0x10029306
mov edi, 0x10075878
mov dword [ebp - 4], esi
cmp dword [ebp - 0x20], 0x98e
jge 0x1002931e
mov edx, str.rnblfmm_xgmabu_zqdhli_pxsx_hsmjipedd_grsw_hyhxurakw_hrdf
mov ecx, edi
call fcn.10010d3e
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x1c], 0x116b
cmp dword [ebp - 0x1c], 0x1441
jle 0x10029379
mov dword [ebp + 0xc], esi
mov ebx, esi
mov esi, dword [ebp + 0xc]
mov dword [ebp - 0x20], ebx
mov dword [ebp - 0x18], ebx
mov dword [ebp + 0xc], 0x3344
mov eax, ebx
mov ecx, edi
xor eax, esi
cdq
push edx
push eax
call fcn.1000dfeb
dec ebx
dec dword [ebp + 0xc]
jne 0x10029347
mov ebx, dword [ebp - 0x20]
inc ebx
mov dword [ebp - 0x20], ebx
cmp ebx, 0x248c
jl 0x1002933d
inc esi
push 0
mov dword [ebp + 0xc], esi
cmp esi, 0x747f
pop esi
jl 0x10029335
mov eax, dword [ebp - 0x24]
cmp dword [eax], esi
jbe 0x100293e7
push 0x1a
pop ebx
mov edi, eax
call fcn.100276a3
push 0x34
xor edx, edx
pop ecx
div ecx
mov eax, edx
cmp eax, ebx
jge 0x100293c9
mov ecx, dword [ebp + 0x10]
movsx edx, byte [ecx]
jmp 0x100293d2
cdq
idiv ebx
mov eax, dword [ebp + 0x30]
movsx eax, byte [eax]
mov ecx, dword [ebp + 0x14]
add edx, eax
push edx
call fcn.1000e251
inc esi
cmp esi, dword [edi]
jb 0x10029385
mov edi, 0x10075878
mov dword [ebp - 4], 2
cmp dword [ebp - 0x1c], 0x1061
jge 0x10029403
mov edx, str.mlpwkbgq_ywejuehwp_nuhjamckh_cup_lgkluvj_hvafogx_otkwjxpd_kkjkvmf_diwcd_fgegtmst
mov ecx, edi
call fcn.10010d3e
jmp 0x10029489
mov eax, dword [ebp + 0x24]
cmp byte [eax], 0
je 0x10029489
push 0x1455
push 0x23ce
call dword [sym.imp.USER32.dll_GetDlgItem]
jmp 0x10029489
cmp byte [ebp + 0x1c], 0
je 0x10029470
mov eax, dword [ebp + 0x20]
push 0x1a
pop ebx
mov ecx, dword [eax]
cmp ecx, ebx
jge 0x10029458
mov eax, dword [ebp + 0x18]
movzx edx, word [eax]
add edx, ecx
jmp 0x10029465
mov eax, ecx
cdq
idiv ebx
mov eax, dword [ebp + 0x2c]
movzx eax, word [eax]
add edx, eax
mov ecx, dword [ebp + 0x28]
push edx
call fcn.1000e188
jmp 0x10029489
mov esi, dword [ebp + 8]
mov dword [esi], 1
jmp 0x10029484
push ecx
call fcn.10029063
inc dword [esi]
pop ecx
cmp dword [esi], 0x1b
jge 0x1002947b
cmp dword [ebp - 0x28], 0x6bde
jge 0x1002949d
push str.wxtylxb_dcocaeu_rhhgktr_detow_juyhgodo_ndvvlvgj_dkgxnmyi_smohd_mvxl_rmy_ltpxx_iykmfy_vqfb_jzn
call fcn.10041543
pop ecx
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret