Function at 0x100395f8
Capabilities:
Encode data using xor

Disassembly:
mov eax, 0x1006161b
call fcn.1005fb28
sub esp, 0x6c
push ebx
push esi
mov dword [ebp - 0x28], 0x4747
xor esi, esi
cmp dword [ebp - 0x28], 0x48bd
push edi
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x30], ecx
jle 0x10039663
mov edi, esi
mov ebx, esi
mov eax, ebx
mov ecx, 0x1007d058
xor eax, edi
cdq
push edx
push eax
call fcn.100136b0
inc ebx
cmp ebx, 0x6ddb
jl 0x10039624
inc edi
cmp edi, 0x7e55
jl 0x10039622
push 0x839
push 0x3b3
push esi
push esi
push 0x19ec
push 0x1951
call dword [sym.imp.USER32.dll_ToUnicode]
mov dword [ebp - 0x24], 0x4b08
cmp dword [ebp - 0x24], 0x4e45
jle 0x10039709
mov edi, esi
mov dword [ebp - 0x20], esi
mov ebx, esi
mov dword [ebp - 0x1c], esi
mov ecx, ebx
mov dword [ebp - 0x14], edi
mov ebx, edi
mov eax, esi
shl ebx, cl
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], ebx
mov ecx, eax
mov dword [ebp - 0x2c], ebx
mov edi, esi
shl ebx, cl
mov eax, ebx
lea ecx, [ebp - 0x48]
and eax, edi
cdq
push edx
push eax
call fcn.10001ade
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x100396b4
mov eax, dword [eax]
push eax
call fcn.1004752f
pop ecx
push esi
push 1
lea ecx, [ebp - 0x48]
call fcn.10013e9b
inc edi
cmp edi, 0x6565
jl 0x1003969b
mov eax, dword [ebp - 0x18]
mov ebx, dword [ebp - 0x14]
inc eax
mov dword [ebp - 0x18], eax
cmp eax, 0x1ef0
jl 0x10039692
mov ebx, dword [ebp - 0x1c]
mov edi, dword [ebp - 0x20]
inc ebx
mov dword [ebp - 0x1c], ebx
cmp ebx, 0x8061
jl 0x10039681
inc edi
mov dword [ebp - 0x20], edi
cmp edi, 0x5c32
jl 0x1003967c
push esi
call dword [sym.imp.GDI32.dll_CreateFontIndirectA]
cmp dword [ebp - 0x24], 0x4acb
jge 0x1003971d
push str.ipvmd_kqeccy_kjbm_vhwovqscf
call fcn.1004752f
pop ecx
or dword [ebp - 4], 0xffffffff
cmp byte [ebp + 0x24], 0
je 0x100397d2
mov dword [ebp - 0x20], 0x19bb
cmp dword [ebp - 0x20], 0x1b4d
jle 0x10039791
push esi
push 0x1e35
push 0x74
call dword [sym.imp.USER32.dll_SetDlgItemTextA]
mov edi, esi
mov dword [ebp - 0x24], esi
mov ebx, edi
mov edi, 0x69e5
mov eax, ebx
lea ecx, [ebp - 0x60]
cdq
push edx
push eax
call fcn.10001ade
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x1003976c
mov eax, dword [eax]
push eax
call fcn.1004752f
pop ecx
push esi
push 1
lea ecx, [ebp - 0x60]
call fcn.10013e9b
dec ebx
dec edi
jne 0x10039755
mov edi, dword [ebp - 0x24]
inc edi
mov dword [ebp - 0x24], edi
cmp edi, 0x237a
jl 0x1003974e
cmp dword [ebp - 0x20], 0x1607
jge 0x100397a5
push str.aqxxcpfh_pxyurl_njr_hhettqo_tnzfn_csfwrczob_dauhi_gizi_mhjs_emivdiot_viudybl_sakianz_bdouo_vwi
call fcn.1004752f
pop ecx
mov eax, dword [ebp - 0x30]
mov edx, dword [ebp + 0x14]
mov ecx, dword [ebp + 0x28]
push dword [eax]
mov eax, dword [ebp + 0x20]
mov edx, dword [edx]
mov ecx, dword [ecx]
push dword [eax]
mov eax, dword [ebp + 0x10]
movzx eax, byte [eax]
push eax
mov eax, dword [ebp + 0x1c]
push dword [eax]
call fcn.10037542
add esp, 0x10
jmp 0x1003985b
mov dword [ebp - 0x18], 0x3981
cmp dword [ebp - 0x18], 0x3d27
jle 0x10039841
mov dword [ebp - 0x1c], esi
mov ebx, esi
mov dword [ebp - 0x20], 0x4f30
mov dword [ebp - 0x24], ebx
mov edi, ebx
mov ebx, 0x6163
mov eax, edi
lea ecx, [ebp - 0x78]
cdq
push edx
push eax
call fcn.10001ade
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x1003980f
mov eax, dword [eax]
push eax
call fcn.1004752f
pop ecx
push esi
push 1
lea ecx, [ebp - 0x78]
call fcn.10013e9b
inc edi
dec ebx
jne 0x100397f8
mov ebx, dword [ebp - 0x24]
mov edi, dword [ebp - 0x1c]
add ebx, edi
dec dword [ebp - 0x20]
mov dword [ebp - 0x24], ebx
jne 0x100397f1
inc edi
mov dword [ebp - 0x1c], edi
cmp edi, 0x5e24
jl 0x100397e5
cmp dword [ebp - 0x18], 0x36ae
mov eax, dword [ebp + 8]
mov byte [eax], 1
jge 0x1003985b
push str.btuzz_rowjxkj_pcau_fqhfa_jva_sffdaxm_bsdutxz_fpm_itytk_viqizdcg_wmokb_wxi_vngwjcx
call fcn.1004752f
pop ecx
mov dword [ebp - 4], 6
cmp dword [ebp - 0x28], 0x45cd
jge 0x1003987a
mov edx, str.getxnyua_buadxmjv_byg_txxihnx_xljmbcyy_lxdsw
mov ecx, 0x1007d058
call fcn.100160b3
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret