Function at 0x10002210
Capabilities:
Identify system language via api

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x30
push esi
mov dword [ebp - 0x14], 0x91
mov dword [ebp - 0x10], 0xeb
push 0
push 0x1001b118
call dword [sym.imp.USER32.dll_FindWindowA]
mov dword [ebp - 0xc], eax
mov eax, dword [ebp - 0xc]
push eax
call dword [sym.imp.USER32.dll_GetParent]
mov dword [0x1001b740], eax
lea ecx, [ebp - 0x14]
push ecx
call sym.fsgsemrtddzn.dll_ewaxtqsxfvg
add esp, 4
mov eax, dword [0x1001a3a8]
shl eax, 3
cdq
mov ecx, 0xe6f
idiv ecx
and edx, dword [0x1001a3b4]
mov dword [0x1001a3b4], edx
mov eax, dword [0x1001a3b0]
cdq
mov ecx, 0x64
idiv ecx
mov edx, dword [0x1001a3a8]
xor edx, 0x3d9
add eax, edx
mov ecx, dword [0x1001a3b0]
shl ecx, 2
mov esi, 9
sub esi, ecx
cdq
idiv esi
mov dword [0x1001a3b4], edx
fild dword [0x1001a3b4]
push ecx
fstp dword [esp]
call fcn.100010a0
fld dword [0x1001a3a4]
fstp dword [esp]
fstp qword [ebp - 0x20]
call fcn.100010a0
add esp, 4
fsubr qword [ebp - 0x20]
push ecx
fld dword [0x1001a3a4]
fstp dword [esp]
fstp qword [ebp - 0x28]
call fcn.100010a0
add esp, 4
fdivr qword [ebp - 0x28]
fstp dword [0x1001b21c]
mov edx, 0x1001b220
test edx, edx
je 0x100026c5
mov dword [0x1001a38c], 0
jmp 0x1000230a
mov eax, dword [0x1001a38c]
add eax, 1
mov dword [0x1001a38c], eax
cmp dword [0x1001a38c], 0x100
jae 0x1000235c
mov ecx, dword [0x1001a38c]
mov edx, dword [0x1001a38c]
mov dword [ecx*4 + 0x1001b328], edx
mov eax, dword [0x1001a3a8]
imul eax, eax, 0xfffffff3
mov dword [ebp - 0x2c], eax
fild dword [ebp - 0x2c]
fstp qword [ebp - 8]
cmp dword [0x1001a3b4], 0
jle 0x10002351
mov ecx, dword [0x1001a3a8]
mov dword [0x1001a3b4], ecx
jmp 0x1000235a
fld dword [ebp - 0x18]
fstp dword [0x1001b21c]
jmp 0x100022fd
mov eax, 5
sub eax, dword [0x1001a3b0]
mov edx, dword [0x1001a3a8]
lea ecx, [edx*4 - 1]
cdq
idiv ecx
add eax, dword [0x1001a3b4]
mov dword [0x1001a3b4], eax
mov dword [0x1001a38c], 0
mov dword [0x1001a388], 0
jmp 0x100023a7
mov edx, dword [0x1001a38c]
add edx, 1
mov dword [0x1001a38c], edx
cmp dword [0x1001a38c], 0x100
jae 0x1000248b
mov eax, dword [0x1001a38c]
mov ecx, dword [0x1001a388]
add ecx, dword [eax*4 + 0x1001b328]
mov eax, dword [0x1001a38c]
xor edx, edx
div dword [ebp - 0x14]
movsx edx, byte [edx + 0x1001b220]
add ecx, edx
mov eax, ecx
xor edx, edx
mov ecx, 0x100
div ecx
mov dword [0x1001a388], edx
mov edx, dword [0x1001a38c]
mov eax, dword [edx*4 + 0x1001b328]
mov dword [0x1001b738], eax
mov eax, dword [0x1001a3a8]
cdq
and edx, 7
add eax, edx
mov ecx, eax
sar ecx, 3
mov edx, dword [0x1001a3a8]
imul edx, edx, 0xa
mov eax, dword [0x1001a3b0]
lea edx, [edx + eax + 0x4a]
sub ecx, edx
or ecx, 0x36
mov eax, dword [0x1001a3b0]
cdq
and edx, 7
add eax, edx
sar eax, 3
add eax, 9
mov edx, dword [0x1001a3b4]
imul edx, edx, 0x5c0
mov esi, dword [0x1001a3a8]
imul esi, esi, 0xa6
sub edx, esi
or eax, edx
add ecx, eax
mov dword [0x1001a3b4], ecx
mov eax, dword [0x1001a38c]
mov ecx, dword [0x1001a388]
mov edx, dword [ecx*4 + 0x1001b328]
mov dword [eax*4 + 0x1001b328], edx
mov eax, dword [0x1001a388]
mov ecx, dword [0x1001b738]
mov dword [eax*4 + 0x1001b328], ecx
jmp 0x10002398
push ecx
fld dword [0x10017700]
fstp dword [esp]
fld dword [0x1001a3a4]
fadd st(0), st(0)
fstp dword [ebp - 0x30]
fld dword [ebp - 0x30]
push ecx
fstp dword [esp]
call fcn.10001060
add esp, 8
fcomp qword [0x100176f8]
fnstsw ax
test ah, 1
jne 0x100024d1
mov eax, dword [0x1001a3ac]
cdq
mov ecx, 0x34d
idiv ecx
neg edx
mov dword [0x1001a3b4], edx
call sym.fsgsemrtddzn.dll_zuapfeltvrhvxgl
push eax
call dword [sym.imp.USER32.dll_DestroyMenu]
mov dword [0x1001b73c], 0
mov dword [ebp - 0x10], 0
mov edx, dword [0x1001b748]
cmp dword [edx], 0
jne 0x10002505
xor eax, eax
jmp 0x100026ca
call dword [sym.imp.KERNEL32.dll_GetUserDefaultLangID]
movzx eax, ax
mov dword [0x1001a3c4], eax
mov ecx, dword [0x1001a3a8]
imul ecx, dword [0x1001a3b0]
neg ecx
mov edx, dword [0x1001a3a8]
imul edx, edx, 6
add ecx, edx
mov dword [0x1001a3b4], ecx
mov dword [0x1001a38c], 0
jmp 0x1000254c
mov eax, dword [0x1001a38c]
add eax, 1
mov dword [0x1001a38c], eax
mov ecx, dword [0x1001b748]
mov edx, dword [0x1001a38c]
cmp edx, dword [ecx]
jae 0x100026bb
mov ecx, dword [0x1001a3a8]
imul ecx, ecx, 7
mov esi, dword [0x1001a3a8]
imul esi, esi, 5
add esi, 2
mov eax, 0x11d
cdq
idiv esi
add ecx, eax
mov dword [0x1001a3b4], ecx
mov eax, dword [0x1001b73c]
add eax, 1
xor edx, edx
mov ecx, 0x100
div ecx
mov dword [0x1001b73c], edx
mov edx, dword [0x1001b73c]
mov eax, dword [ebp - 0x10]
add eax, dword [edx*4 + 0x1001b328]
xor edx, edx
mov ecx, 0x100
div ecx
mov dword [ebp - 0x10], edx
mov edx, dword [0x1001b73c]
mov eax, dword [edx*4 + 0x1001b328]
mov dword [0x1001b738], eax
mov ecx, dword [0x1001a3b0]
imul ecx, ecx, 3
imul ecx, dword [0x1001a3a8]
mov dword [0x1001a3b4], ecx
mov edx, dword [0x1001b73c]
mov eax, dword [ebp - 0x10]
mov ecx, dword [eax*4 + 0x1001b328]
mov dword [edx*4 + 0x1001b328], ecx
xor edx, edx
cmp dword [0x1001a3ac], 0
sete dl
imul edx, dword [0x1001a3b4]
imul edx, edx, 0x18
mov eax, dword [0x1001a3ac]
imul eax, eax, 0x7f
movzx ecx, byte [0x1001a3a3]
neg ecx
imul ecx, ecx, 0x4e
xor eax, ecx
sub edx, eax
mov dword [0x1001a3b4], edx
mov edx, dword [ebp - 0x10]
mov eax, dword [0x1001b738]
mov dword [edx*4 + 0x1001b328], eax
mov ecx, dword [0x1001b73c]
mov eax, dword [ecx*4 + 0x1001b328]
mov edx, dword [ebp - 0x10]
add eax, dword [edx*4 + 0x1001b328]
xor edx, edx
mov ecx, 0x100
div ecx
mov dword [0x1001b738], edx
mov edx, dword [0x1001a3ac]
imul edx, edx, 0xfffffbc3
xor edx, dword [0x1001a3b0]
mov eax, dword [0x1001a3a8]
imul eax, eax, 0x54
lea ecx, [edx + eax - 0x274]
mov dword [0x1001a3b4], ecx
mov edx, dword [0x1001b744]
mov eax, dword [edx]
mov ecx, dword [0x1001a38c]
movzx edx, byte [eax + ecx]
mov eax, dword [0x1001b738]
xor edx, dword [eax*4 + 0x1001b328]
mov ecx, dword [0x1001b744]
mov eax, dword [ecx]
mov ecx, dword [0x1001a38c]
mov byte [eax + ecx], dl
jmp 0x1000253f
mov edx, dword [0x1001b744]
mov eax, dword [edx]
call eax
mov eax, 1
pop esi
mov esp, ebp
pop ebp
ret