Function at 0x10003831
Capabilities:
Identify system language via api

Disassembly:
mov eax, 0x10061c30
call fcn.100616f8
sub esp, 0x3c
cmp byte [ebp + 0x18], 0
push ebx
push esi
push edi
mov ebx, edx
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x30], ecx
je 0x10003a52
mov dword [ebp - 0x1c], 0x2d3e
cmp dword [ebp - 0x1c], 0x2feb
jle 0x100038f5
call dword [sym.imp.KERNEL32.dll_GetUserDefaultUILanguage]
xor esi, esi
mov edi, esi
mov dword [ebp - 0x18], esi
mov ebx, esi
mov dword [ebp - 0x14], esi
mov eax, edi
mov ecx, esi
cdq
idiv ebx
mov dword [ebp + 0x18], ecx
mov eax, edx
mov dword [ebp - 0x24], eax
lea edi, [eax + ecx]
mov ebx, 0x5c28
mov eax, edi
lea ecx, [ebp - 0x48]
cdq
push edx
push eax
call fcn.10001a65
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x100038aa
mov eax, dword [eax]
push eax
call fcn.1004ad2c
pop ecx
push esi
push 1
lea ecx, [ebp - 0x48]
call fcn.1000b74b
dec edi
dec ebx
jne 0x10003893
mov ecx, dword [ebp + 0x18]
mov eax, dword [ebp - 0x24]
inc ecx
mov dword [ebp + 0x18], ecx
cmp ecx, 0x4b4a
jl 0x1000388b
mov ebx, dword [ebp - 0x14]
mov edi, dword [ebp - 0x18]
inc ebx
mov dword [ebp - 0x14], ebx
cmp ebx, 0x4788
jl 0x1000387c
inc edi
mov dword [ebp - 0x18], edi
cmp edi, 0x1dc
jl 0x10003877
mov ebx, dword [ebp - 0x28]
jmp 0x100038f7
xor esi, esi
cmp dword [ebp - 0x1c], 0x2c58
jge 0x1000390b
push str.mmumlpr_acbidrum_zqugnce_cblckkrap_czrydmod_hmbsdd_nhvyyn_soboamahq_lhbhqvvf
call fcn.1004ad2c
pop ecx
or dword [ebp - 4], 0xffffffff
cmp byte [ebp + 8], 0
je 0x10003a3a
mov dword [ebp + 0x18], 0x6947
cmp dword [ebp + 0x18], 0x6a93
jle 0x10003963
mov edi, esi
mov ebx, esi
mov dword [ebp - 0x28], esi
mov ecx, esi
mov eax, ebx
sar eax, cl
mov ecx, 0x1007da98
and eax, edi
cdq
push edx
push eax
call fcn.1000b132
inc esi
cmp esi, 0x5bf8
jl 0x10003930
inc ebx
push 0
pop esi
cmp ebx, 0x2a4e
jl 0x1000392d
inc edi
cmp edi, 0x496e
jl 0x1000392b
mov dword [ebp - 4], 2
cmp dword [ebp + 0x18], 0x67c9
jge 0x10003982
mov edx, str.hgg_dsnrobhf_wcfbesrit_ageg_jcmq_juwfwurj_hbsksobdx
mov ecx, 0x1007da98
call fcn.1000d503
or dword [ebp - 4], 0xffffffff
mov edi, dword [ebp + 0x24]
mov dword [edi], esi
cmp dword [edi], esi
jg 0x10003a72
mov ebx, dword [ebp + 0x1c]
push ecx
push dword [ebp + 0x10]
lea eax, [ebp - 0x2c]
mov dword [ebp - 0x20], 0xffffffff
push esi
push edi
push ecx
push eax
push dword [ebp + 0x2c]
mov dword [ebp - 0x2c], 0x469f41af
push dword [ebp + 0x28]
call fcn.10003612
mov eax, dword [ebp + 0x28]
xor ecx, ecx
add esp, 0x20
mov eax, dword [eax]
mov eax, dword [ebp - 0x30]
mov eax, dword [eax]
cmp eax, 0xd6b9ec49
mov eax, dword [ebp - 0x20]
sete cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp + 0x28]
sete dl
mov eax, dword [eax]
add eax, dword [ebp - 0x20]
cmp eax, edx
jle 0x10003a17
mov eax, dword [ebp + 0x34]
cmp dword [eax], esi
jne 0x10003a17
mov ecx, esi
jmp 0x10003a1a
xor ecx, ecx
inc ecx
xor eax, eax
cmp ecx, 0xfbae
mov ecx, dword [ebp + 0x20]
setle al
mov dword [ebx], eax
mov eax, dword [ebx]
mov dword [ecx], eax
inc dword [edi]
cmp dword [edi], esi
jle 0x10003996
jmp 0x10003a72
cmp byte [ebx], 0
je 0x10003a72
push 0x151c
push 0x869
push esi
call dword [sym.imp.GDI32.dll_PtInRegion]
jmp 0x10003a72
cmp byte [ebp + 0xc], 0
je 0x10003a5f
mov eax, dword [ebp + 0x14]
dec dword [eax]
jmp 0x10003a72
mov eax, dword [ebp + 0x30]
cmp byte [eax], 0
je 0x10003a72
push 0x15aa
call dword [sym.imp.KERNEL32.dll_Sleep]
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret