Function at 0x1003a4b0
Capabilities:
Encode data using xor

Disassembly:
mov eax, 0x1005dfb3
call fcn.1005c588
sub esp, 0x3c
cmp byte [ebp + 0x28], 0
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x2c], ecx
je 0x1003a73a
mov dword [ebp - 0x1c], 0x3e2a
xor esi, esi
cmp dword [ebp - 0x1c], 0x3ee0
jle 0x1003a53e
push esi
call dword [sym.imp.KERNEL32.dll_LocalFree]
mov ebx, esi
mov edi, 0x10079cf8
mov dword [ebp - 0x18], ebx
mov eax, esi
mov dword [ebp - 0x14], esi
mov ecx, eax
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x20], esi
shl ebx, cl
mov eax, ebx
mov ecx, edi
xor eax, esi
cdq
push edx
push eax
call fcn.1000dad0
inc esi
cmp esi, 0x793b
jl 0x1003a505
mov eax, dword [ebp - 0x14]
mov ebx, dword [ebp - 0x18]
inc eax
mov dword [ebp - 0x14], eax
push 0
pop esi
cmp eax, 0x683
jl 0x1003a4fb
inc ebx
mov dword [ebp - 0x18], ebx
cmp ebx, 0x22d1
jl 0x1003a4f6
jmp 0x1003a543
mov edi, 0x10079cf8
mov dword [ebp - 4], esi
cmp dword [ebp - 0x1c], 0x3a8a
jge 0x1003a55b
mov edx, str.abemtl_ekqpw_aleuepx_ijry_edawaw_krmoawwre_slgdrib_anqfuaf_tlomfntx_fmvpd_pyfvi_soo_mujdbcfh_ightonmzz
mov ecx, edi
call fcn.1001081c
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x24], 0xe54
cmp dword [ebp - 0x24], 0xfa4
jle 0x1003a5b7
mov dword [ebp - 0x20], esi
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x14], 0x10a
mov ebx, esi
mov dword [ebp - 0x1c], 0xa2f
mov esi, dword [ebp - 0x18]
mov eax, ebx
mov ecx, edi
cdq
push edx
push eax
call fcn.1000dad0
add ebx, esi
dec dword [ebp - 0x1c]
jne 0x1003a588
mov ebx, dword [ebp - 0x20]
add esi, ebx
dec dword [ebp - 0x14]
push 0
mov dword [ebp - 0x18], esi
pop esi
jne 0x1003a57c
inc ebx
mov dword [ebp - 0x20], ebx
cmp ebx, 0x1bd8
jl 0x1003a572
mov dword [ebp - 4], 2
cmp dword [ebp - 0x24], 0xcb6
jge 0x1003a5d3
mov edx, str.hrrgnwwq_joqonkkk_ccdvsjyf_lnoyejo_zgpceqs_nmqpdvnrf
mov ecx, edi
call fcn.1001081c
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x1c], 0x1132
cmp dword [ebp - 0x1c], 0x12d1
jle 0x1003a651
mov edi, esi
mov dword [ebp - 0x20], esi
mov ebx, esi
mov dword [ebp - 0x24], esi
mov ecx, ebx
mov dword [ebp - 0x18], edi
mov ebx, edi
mov dword [ebp - 0x14], esi
sar ebx, cl
mov edi, esi
mov eax, ebx
lea ecx, [ebp - 0x44]
and eax, edi
cdq
push edx
push eax
call fcn.10001abf
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x1003a618
mov eax, dword [eax]
push eax
call fcn.10044453
pop ecx
push esi
push 1
lea ecx, [ebp - 0x44]
call fcn.1000e569
inc edi
cmp edi, 0x2e0b
jl 0x1003a5ff
mov ebx, dword [ebp - 0x24]
mov edi, dword [ebp - 0x20]
inc ebx
mov dword [ebp - 0x24], ebx
cmp ebx, 0x5cbc
jl 0x1003a5f1
inc edi
mov dword [ebp - 0x20], edi
cmp edi, 0x4716
jl 0x1003a5ec
cmp dword [ebp - 0x1c], 0xe30
jge 0x1003a665
push str.ulj_drxnfrfet_vzqx_njxbora_rweugpx_omyeqcikd_bbywy_krnfn_bcpndpx_gupji
call fcn.10044453
pop ecx
mov edx, dword [ebp - 0x28]
mov ebx, dword [ebp - 0x2c]
mov edi, dword [ebp + 0x24]
mov eax, dword [edx]
mov eax, dword [ebp + 0x20]
mov eax, dword [eax]
add eax, dword [ebx]
jne 0x1003a67f
mov eax, dword [edi]
cmp dword [eax], esi
je 0x1003a682
xor esi, esi
inc esi
mov eax, dword [ebx]
xor ecx, ecx
cmp esi, 1
mov esi, dword [ebp + 0x14]
setne cl
xor ebx, ebx
cmp ecx, eax
mov ecx, dword [esi]
mov eax, dword [edx]
setne bl
xor edx, edx
cmp ecx, eax
sete dl
xor ecx, ecx
add edx, ebx
cmp edx, 0xffffffff
setne cl
xor eax, eax
cmp ecx, 0x4191
setg al
xor ecx, ecx
mov dword [esi], eax
mov eax, dword [edi]
cmp dword [eax + 8], 0xffff
mov eax, dword [ebp + 0x18]
setne cl
mov dword [eax], ecx
xor ecx, ecx
mov eax, dword [eax]
cmp eax, 0xc2b2
mov eax, dword [edi]
setle cl
xor edx, edx
cmp ecx, dword [eax + 8]
mov eax, dword [ebp + 0xc]
setl dl
mov eax, dword [eax]
mov dword [eax + 8], edx
jmp 0x1003a742
push 0
call dword [sym.imp.USER32.dll_CreateIconIndirect]
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret