Function at 0x10037bb1
Capabilities:
Encode data using xor

Disassembly:
mov eax, 0x10060026
call fcn.1005e738
sub esp, 0x68
cmp byte [ebp + 0x34], 0
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x2c], edx
je 0x10037dc1
mov dword [ebp + 0x34], 0x746e
xor esi, esi
cmp dword [ebp + 0x34], 0x7554
jle 0x10037c24
mov edi, esi
mov ebx, esi
mov eax, ebx
lea ecx, [ebp - 0x44]
xor eax, edi
cdq
push edx
push eax
call fcn.10002dd6
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10037c00
mov eax, dword [eax]
push eax
call fcn.100476ff
pop ecx
push esi
push 1
lea ecx, [ebp - 0x44]
call fcn.10004d30
inc ebx
cmp ebx, 0x1144
jl 0x10037be7
inc edi
cmp edi, 0x55ea
jl 0x10037be5
cmp dword [ebp + 0x34], 0x7195
jge 0x10037c38
push str.tijziyf_zttlpq_dqovn_ezoefkp_ymo_qiurkcwvg_uwjn
call fcn.100476ff
pop ecx
or dword [ebp - 4], 0xffffffff
cmp byte [ebp + 0x30], 0
je 0x10037cf7
mov dword [ebp + 0x34], 0xed5
cmp dword [ebp + 0x34], 0x1112
jle 0x10037c9d
mov edi, esi
mov ebx, esi
mov dword [ebp - 0x24], esi
mov eax, esi
mov ecx, 0x10079c18
and eax, ebx
xor eax, edi
cdq
push edx
push eax
call fcn.100048ed
inc esi
cmp esi, 0x2399
jl 0x10037c5d
inc ebx
push 0
pop esi
cmp ebx, 0x31bb
jl 0x10037c5a
inc edi
cmp edi, 0x83d
jl 0x10037c58
push esi
push esi
push 0x23b2
push esi
push esi
call dword [sym.imp.USER32.dll_CreateDialogParamA]
mov edi, dword [ebp + 8]
push 2
pop edx
mov dword [edi], esi
cmp dword [edi], edx
jge 0x10037cbd
mov esi, dword [ebp + 0xc]
mov ecx, dword [edi]
mov eax, dword [esi]
mov dword [eax + ecx*4], 0xfffffff6
inc dword [edi]
cmp dword [edi], edx
jl 0x10037cac
mov dword [ebp - 4], edx
cmp dword [ebp + 0x34], 0xc30
jge 0x10037cd8
mov edx, str.ffwffb_ufgax_fun_ntguyzbd_bud_irajavf_jkczslje_mfovgpxu_dnxyppylz_ustqmocaa_xsouc_cur_orwtqvoyg
mov ecx, 0x10079c18
call fcn.10006b05
jmp 0x10037e91
mov dword [ebp - 0x24], 0x2df
cmp dword [ebp - 0x24], 0x4b3
jle 0x10037d98
mov edi, esi
mov dword [ebp - 0x20], esi
mov ebx, esi
mov dword [ebp - 0x1c], esi
mov ecx, ebx
mov dword [ebp + 0x34], edi
mov ebx, edi
mov eax, esi
sar ebx, cl
mov dword [ebp - 0x18], eax
mov dword [ebp + 0x34], ebx
mov ecx, eax
mov dword [ebp - 0x28], ebx
mov edi, esi
shl ebx, cl
mov ecx, edi
mov eax, ebx
shl eax, cl
lea ecx, [ebp - 0x5c]
cdq
push edx
push eax
call fcn.10002dd6
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10037d4a
mov eax, dword [eax]
push eax
call fcn.100476ff
pop ecx
push esi
push 1
lea ecx, [ebp - 0x5c]
call fcn.10004d30
inc edi
cmp edi, 0x172d
jl 0x10037d2f
mov eax, dword [ebp - 0x18]
mov ebx, dword [ebp + 0x34]
inc eax
mov dword [ebp - 0x18], eax
cmp eax, 0x55bd
jl 0x10037d26
mov ebx, dword [ebp - 0x1c]
mov edi, dword [ebp - 0x20]
inc ebx
mov dword [ebp - 0x1c], ebx
cmp ebx, 0x4420
jl 0x10037d15
inc edi
mov dword [ebp - 0x20], edi
cmp edi, 0x19ac
jl 0x10037d10
cmp dword [ebp - 0x24], 0x6c
jge 0x10037da9
push str.pwp_pahoqz_ugaxv_nidodmrfm_mih
call fcn.100476ff
pop ecx
mov eax, dword [ebp - 0x2c]
cmp byte [eax], 0
je 0x10037e91
push esi
call dword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
jmp 0x10037e91
cmp byte [ebp + 0x18], 0
je 0x10037e6c
mov dword [ebp - 0x24], 0x5f23
xor esi, esi
cmp dword [ebp - 0x24], 0x6297
jle 0x10037e36
push 0x7a4
push 0x10df
push esi
call dword [sym.imp.USER32.dll_InflateRect]
mov edi, esi
mov dword [ebp + 0x34], esi
mov ebx, edi
mov edi, 0x6bd0
mov eax, ebx
lea ecx, [ebp - 0x74]
cdq
push edx
push eax
call fcn.10002dd6
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10037e11
mov eax, dword [eax]
push eax
call fcn.100476ff
pop ecx
push esi
push 1
lea ecx, [ebp - 0x74]
call fcn.10004d30
dec ebx
dec edi
jne 0x10037dfa
mov edi, dword [ebp + 0x34]
inc edi
mov dword [ebp + 0x34], edi
cmp edi, 0x1699
jl 0x10037df3
cmp dword [ebp - 0x24], 0x5bdf
jge 0x10037e4a
push str.nuchvazsy_ags_vjwrri_pfjavrem_iaehdlt_bddgugnwl_lajmsw_bbalqgek_oyvfeqyxw_zjmdrhyzi_rykibji_mkrdr
call fcn.100476ff
pop ecx
mov edi, dword [ebp + 0x14]
push 2
pop edx
mov dword [edi], esi
cmp dword [edi], edx
jge 0x10037e91
mov esi, dword [ebp + 0x1c]
mov ecx, dword [edi]
mov eax, dword [esi]
mov dword [eax + ecx*4], 1
inc dword [edi]
cmp dword [edi], edx
jl 0x10037e59
jmp 0x10037e91
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 0x2c]
push dword [eax]
mov eax, dword [ebp + 0x20]
mov edx, dword [edx]
push dword [eax]
movzx eax, byte [ecx]
mov ecx, dword [ebp + 0x28]
push eax
mov eax, dword [ebp + 0x24]
mov ecx, dword [ecx]
push dword [eax]
call fcn.10034809
add esp, 0x10
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret