Function at 0x10036a5e
Capabilities:
Identify system language via api

Disassembly:
mov eax, 0x10059aa9
call fcn.10058864
sub esp, 0xd0
mov byte [ebp - 0x3c], dl
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
test cl, cl
je 0x10037234
cmp byte [ebp + 0x20], 0
je 0x10036a9a
mov eax, dword [ebp + 0x14]
mov ecx, dword [eax + 4]
sub ecx, dword [eax]
mov eax, dword [ebp + 0x10]
sar ecx, 2
mov dword [eax], ecx
jmp 0x1003726a
mov dword [ebp - 0x14], 0xffffffff
xor ebx, ebx
mov dword [ebp - 0x1c], 0x3bfa32a1
mov dword [ebp - 0x1c], 0x3531
push 3
mov dword [ebp - 0x1c], 0xa13b2885
mov dword [ebp - 0x14], ebx
pop esi
jmp 0x10036aca
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x64], ebx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x10036ac0
mov dword [ebp - 0x14], ebx
jmp 0x10036b0c
mov dword [ebp - 0x18], 0xb96ca2cb
mov dword [ebp - 0x18], 0xffffffe3
jmp 0x10036b03
push 0x334b
push ebx
push 0x4be7
push 1
mov dl, 1
mov ecx, 0x28c2
call fcn.10035ccf
add esp, 0x10
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0x1b
jne 0x10036ae4
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 8
jg 0x10036ad4
mov ecx, dword [ebp - 0x64]
xor edx, edx
mov eax, dword [ebp - 0x14]
cmp eax, ecx
mov eax, dword [ebp - 0x60]
setle dl
xor ecx, ecx
cmp eax, edx
push 0x7e0a
setne cl
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x60]
mov ecx, dword [ebp - 0x1c]
add eax, 0xffffde5d
add ecx, eax
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x14]
push ebx
push ecx
push ecx
mov ecx, 0x595a
call fcn.10037734
add esp, 0x10
lea ecx, [ebp - 0x7c]
push dword [ebp + 0xc]
call fcn.10013fd9
mov dword [ebp - 4], ebx
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0x14], ebx
jmp 0x10036b80
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x88], ebx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x10036b73
mov edx, 0x20bf
xor cl, cl
call fcn.10037b2b
mov dword [ebp - 0x18], ebx
jmp 0x10036bb7
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0x14], ebx
jmp 0x10036baf
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x88], 0xa9ef72d4
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x10036b9e
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jle 0x10036b96
push ecx
push dword [ebp + 8]
lea ecx, [ebp - 0x7c]
call fcn.10039447
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x14], 0xf665683c
mov dword [ebp - 0x1c], 0x8b166c19
mov dword [ebp - 0x1c], 0x14fb
cmp dword [ebp - 0x1c], 0x16ca
jle 0x10036c14
mov edi, ebx
mov esi, ebx
mov eax, esi
mov ecx, 0x10072098
and eax, edi
cdq
push edx
push eax
call fcn.10013ec4
inc esi
cmp esi, 0x42b9
jl 0x10036bee
inc edi
cmp edi, 0x3c03
jl 0x10036bec
push 3
pop esi
mov dword [ebp - 0x18], 0x1f6f49c2
mov byte [ebp - 4], 1
cmp dword [ebp - 0x1c], 0x11e1
jge 0x10036c58
mov edx, str.ogts_jvygtyms_mxmjf_qbyj_mxxgu_dqbsz_btlv
mov ecx, 0x10072098
call fcn.1001684d
jmp 0x10036c58
mov dword [ebp - 4], ebx
mov dword [ebp - 0x1c], 0x8551b32e
mov dword [ebp - 0x20], 0xfffffffc
mov dword [ebp - 0x20], 1
mov dword [ebp - 0x20], 0x20410224
mov dword [ebp - 0x20], 0xae89405d
mov dword [ebp - 0x18], ebx
jmp 0x10036c94
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xc4], 6
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x10036c83
mov dword [ebp - 0x18], ebx
jmp 0x10036ca8
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x40], ebx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 1
jl 0x10036c9e
mov dword [ebp - 0x28], 0x44fb
cmp dword [ebp - 0x28], 0x465f
jle 0x10036d49
push 0x1e95
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_lstrcpynW]
mov esi, ebx
mov dword [ebp - 0x18], ebx
mov edi, ebx
mov dword [ebp - 0x1c], ebx
mov eax, esi
mov dword [ebp - 0x20], ebx
cdq
mov esi, ebx
idiv edi
mov edi, edx
mov ecx, esi
mov eax, edi
shl eax, cl
lea ecx, [ebp - 0xa0]
cdq
push edx
push eax
call fcn.10001ade
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10036d03
mov eax, dword [eax]
push eax
call fcn.1004041f
pop ecx
push ebx
push 1
lea ecx, [ebp - 0xa0]
call fcn.10014649
inc esi
cmp esi, 0x1f1b
jl 0x10036ce5
mov edi, dword [ebp - 0x1c]
mov esi, dword [ebp - 0x18]
inc edi
mov dword [ebp - 0x1c], edi
cmp edi, 0x2ede
jl 0x10036cd9
inc esi
mov dword [ebp - 0x18], esi
cmp esi, 0x15bf
jl 0x10036cd4
push ebx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push 3
pop esi
cmp dword [ebp - 0x14], ebx
jne 0x10036d7a
mov eax, dword [ebp - 0x14]
xor ecx, ecx
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
cmp eax, 0xfffffff8
setle cl
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], ebx
jne 0x10036d7a
mov edx, ebx
jmp 0x10036d7d
xor edx, edx
inc edx
mov eax, dword [ebp - 0x14]
xor ecx, ecx
cmp eax, edx
setge cl
xor eax, eax
cmp ecx, 0xfff7
setne al
xor edx, edx
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x14]
cmp ecx, eax
setle dl
cmp edx, 0xfffffff8
sbb eax, eax
neg eax
imul eax, dword [ebp - 0x14]
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x28], 0x440a
jge 0x10036dc4
push str.orfazc_rpkfsgj_ntzf_qduz_pga_wcmuk_mhnjjnb_tchs_lrese_edoqt
call fcn.1004041f
pop ecx
mov dword [ebp - 4], ebx
inc dword [ebp - 0x40]
cmp dword [ebp - 0x38], 0xffffffff
je 0x10036eae
mov dword [ebp - 0x14], 0xfffffffa
mov dword [ebp - 0x20], 0xffffffff
mov dword [ebp - 0x20], 0xc266d8ff
mov ecx, dword [ebp - 0x14]
add ecx, dword [ebp - 0x14]
sub ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
neg ecx
sbb ecx, ecx
xor edx, edx
inc ecx
cmp ecx, eax
setg dl
imul edx, dword [ebp - 0x14]
sub edx, 0x81a7ecc2
neg edx
sbb edx, edx
xor eax, eax
inc edx
imul edx, dword [ebp - 0x14]
cmp edx, 0xe752
setl al
sub eax, 0x31b4f528
je 0x10036e30
cmp dword [ebp - 0x14], ebx
je 0x10036e30
xor eax, eax
inc eax
jmp 0x10036e32
mov eax, ebx
neg eax
sub eax, dword [ebp - 0x14]
neg eax
sbb eax, eax
xor edx, edx
inc eax
cmp eax, 0xd73d
mov eax, dword [ebp - 0x14]
setne dl
xor ecx, ecx
cmp eax, edx
setle cl
cmp ecx, dword [ebp - 0x14]
jne 0x10036e66
push 1
xor dl, dl
mov ecx, 0x1823
call fcn.1003579e
pop ecx
jmp 0x10036e95
push ebx
push 0x7f5d
lea eax, [ebp - 0x4c]
mov dword [ebp - 0x4c], 0x162c5d17
push eax
push ebx
mov edx, 0x62a3
mov cl, 1
call fcn.10035675
mov byte [ebp - 0x21], bl
add esp, 0x10
cmp byte [ebp - 0x21], 0
je 0x10036e95
call sub.KERNEL32.dll_GetSystemDefaultUILanguage
push ebx
lea eax, [ebp - 0x38]
mov cl, 1
push eax
push 0x56ac
push 1
lea edx, [ebp - 0x7c]
call fcn.10035675
add esp, 0x10
mov dword [ebp - 0x14], 0x4a0d
mov dword [ebp - 0x34], 0xeb4c8f0d
mov dword [ebp - 0x30], 0x3eee
cmp dword [ebp - 0x30], 0x4286
jle 0x10036f54
mov eax, ebx
mov dword [ebp - 0x18], ebx
mov esi, ebx
mov dword [ebp - 0x1c], ebx
mov edi, ebx
mov dword [ebp - 0x28], ebx
lea ecx, [edi + esi]
mov dword [ebp - 0x20], ebx
mov edi, eax
mov esi, ebx
shl edi, cl
mov eax, edi
lea ecx, [ebp - 0xb8]
xor eax, esi
cdq
push edx
push eax
call fcn.10001ade
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10036f07
mov eax, dword [eax]
push eax
call fcn.1004041f
pop ecx
push ebx
push 1
lea ecx, [ebp - 0xb8]
call fcn.10014649
inc esi
cmp esi, 0x40ee
jl 0x10036eeb
mov edi, dword [ebp - 0x28]
mov esi, dword [ebp - 0x1c]
inc edi
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x28], edi
cmp edi, 0x14f9
jl 0x10036edf
inc esi
mov dword [ebp - 0x1c], esi
cmp esi, 0x18cb
jl 0x10036eda
inc eax
mov dword [ebp - 0x18], eax
cmp eax, 0x615
jl 0x10036ed5
push 3
pop esi
mov dword [ebp - 0x20], 1
cmp dword [ebp - 0x30], 0x3b76
jge 0x10036f6f
push str.aqd_xfrxeplyk_jgqcfn_fmgb_sdvjs_ycyzhliut_eqd_qnbnk_cnndeeq_qwob_kwedodu_rtzesrjrz_dhzl_qcv
call fcn.1004041f
pop ecx
mov dword [ebp - 4], ebx
mov dword [ebp - 0x20], 1
mov dword [ebp - 0x1c], 0x43e2
cmp dword [ebp - 0x1c], 0x47ac
jle 0x10036fea
mov esi, ebx
mov edi, ebx
mov eax, ebx
mov dword [ebp - 0x28], 0x6abe
mov dword [ebp - 0x30], eax
or eax, esi
lea ecx, [ebp - 0xdc]
cdq
push edx
push eax
call fcn.10001ade
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10036fb3
mov eax, dword [eax]
push eax
call fcn.1004041f
pop ecx
push ebx
push 1
lea ecx, [ebp - 0xdc]
call fcn.10014649
mov eax, dword [ebp - 0x30]
add eax, edi
dec dword [ebp - 0x28]
mov dword [ebp - 0x30], eax
jne 0x10036f99
inc edi
cmp edi, 0x5f53
jl 0x10036f8d
inc esi
cmp esi, 0x7ac6
jl 0x10036f8b
push 3
pop esi
cmp dword [ebp - 0x1c], 0x4289
jge 0x10036ffe
push str.fovujtj_xtk_xlwrltjuc_duomcrc_nwewxwz_qgtxaj_qrrjn_rcq_cts
call fcn.1004041f
pop ecx
mov dword [ebp - 4], ebx
mov dword [ebp - 0x1c], 0x14a9c79e
mov dword [ebp - 0x18], ebx
jmp 0x1003701b
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x58], 0x4dcc80fc
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x1003700d
mov dword [ebp - 0x18], ebx
jmp 0x10037033
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x48], 1
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jl 0x10037025
cmp dword [ebp - 0x14], ebx
jne 0x10037041
dec dword [ebp - 0x48]
mov eax, dword [ebp - 0x34]
cmp dword [ebp - 0x44], ebx
je 0x10037053
cmp dword [ebp - 0x50], ebx
je 0x10037053
xor ecx, ecx
inc ecx
jmp 0x10037055
mov ecx, ebx
mov eax, dword [ebp - 0x54]
xor edx, edx
add ecx, eax
mov eax, dword [ebp - 0x20]
cmp ecx, eax
setg dl
sub edx, dword [ebp - 0x14]
neg edx
sbb edx, edx
inc edx
add edx, dword [ebp - 0x34]
sub edx, dword [ebp - 0x20]
neg edx
sbb edx, edx
inc edx
jne 0x10037081
cmp dword [ebp - 0x50], ebx
je 0x10037081
inc edx
jmp 0x10037083
mov edx, ebx
mov eax, dword [ebp - 0x14]
xor ecx, ecx
cmp edx, eax
push 5
setne cl
imul eax, ecx, 0x8009
xor ecx, ecx
pop edi
cmp eax, edi
setle cl
add ecx, dword [ebp - 0x14]
mov dword [ebp - 0x50], ecx
mov dword [ebp - 0x14], ebx
cmp dword [ebp - 0x14], 1
jg 0x100370dc
mov ecx, 0x6d9e96b
mov dword [ebp - 0x20], 0x2e7eb665
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x58], ecx
mov eax, dword [ebp - 0x1c]
inc dword [ebp - 0x1c]
cmp eax, ecx
je 0x100370ce
xor eax, eax
inc eax
jmp 0x100370d0
mov eax, ebx
mov dword [ebp - 0x20], eax
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 1
jle 0x100370b1
push 0x26cb
lea eax, [ebp - 0x38]
push eax
push dword [ebp + 8]
lea ecx, [ebp - 0x7c]
call fcn.10037add
lea eax, [ebp - 0x38]
mov edx, 0x2e8b
push eax
push ebx
push 0x30c1
push 0x1d46
push 1
lea eax, [ebp - 0x7c]
mov ecx, 0x1587
push eax
push ebx
push 0x70df
call fcn.10037b58
add esp, 0x2c
push 0xfffffffffffffff8
pop esi
mov dword [ebp - 0x1c], esi
mov dword [ebp - 0x20], 0x28cb
mov dword [ebp - 0x34], 4
mov dword [ebp - 0x30], 0xa47b6c41
mov dword [ebp - 0x14], ebx
jmp 0x1003714b
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x2c], 7
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 1
jl 0x1003713d
mov dword [ebp - 0x2c], 0xfffffff2
jmp 0x10037205
mov dword [ebp - 0x14], 0x9f7fd1e8
mov dword [ebp - 0x18], 0x4145c174
mov dword [ebp - 0x28], esi
mov dword [ebp - 0x30], 0xffffffff
mov dword [ebp - 0x28], edi
mov eax, dword [ebp - 0x14]
sub eax, dword [ebp - 0x14]
neg eax
sbb eax, eax
inc eax
cmp eax, dword [ebp - 0x14]
jne 0x1003718b
mov eax, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x2c]
xor edx, edx
mov eax, dword [ebp - 0x2c]
cmp ecx, eax
setg dl
xor ebx, ebx
mov dword [ebp - 0x28], edx
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x1c]
cmp eax, ecx
mov eax, dword [ebp - 0x1c]
setge bl
xor edx, edx
cmp ebx, eax
mov eax, dword [ebp - 0x1c]
setle dl
xor ecx, ecx
cmp edx, eax
setg cl
xor ebx, ebx
cmp ecx, dword [ebp - 0x14]
je 0x100371cc
cmp dword [ebp - 0x20], ebx
jne 0x100371cc
mov ecx, ebx
jmp 0x100371cf
xor ecx, ecx
inc ecx
mov eax, dword [ebp - 0x14]
add eax, ecx
cmp eax, 6
je 0x100371dc
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x30]
imul eax, dword [ebp - 0x34]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x28]
imul eax, dword [ebp - 0x14]
mov dword [ebp - 0x28], eax
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], 0xc
jge 0x1003715d
call fcn.10037a83
mov ecx, dword [ebp + 0x18]
lea eax, [ebp - 0x7c]
cmp ecx, eax
je 0x10037227
push 0xffffffffffffffff
push ebx
push eax
call fcn.1001468d
push ebx
push 1
lea ecx, [ebp - 0x7c]
call fcn.100147bd
jmp 0x1003726a
test dl, dl
je 0x10037253
xor eax, eax
mov byte [ebp - 0x21], al
cmp byte [ebp - 0x21], al
je 0x1003726a
push eax
push 1
push 0x172b
push eax
call dword [sym.imp.USER32.dll_GetMenuItemInfoW]
jmp 0x1003726a
mov eax, dword [ebp + 0x1c]
cmp byte [eax], 0
je 0x1003726a
xor eax, eax
push eax
push 0x127e
push eax
call dword [sym.imp.GDI32.dll_GetEnhMetaFileHeader]
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret