Function at 0x4157f3
Capabilities:
Identify system language via api

Disassembly:
push 0x9c
mov eax, 0x57eb16
call fcn.00552eab
mov esi, ecx
mov eax, dword [0x5fc298]
test al, 1
jne 0x41582d
or eax, 1
mov dword [0x5fc298], eax
and dword [ebp - 4], 0
call fcn.004176ff
push 0x58c68b
call fcn.00552bdf
pop ecx
or dword [ebp - 4], 0xffffffff
cmp byte [0x5fc20e], 0
jne 0x4158a7
cmp byte [0x5fc20d], 0
jne 0x4158a7
cmp byte [0x5fc20c], 0
jne 0x4158a7
call fcn.00417451
mov ecx, eax
cmp ecx, 2
je 0x415859
cmp ecx, 3
jne 0x415860
call fcn.00416f35
mov ecx, eax
cmp ecx, 2
je 0x4158a7
cmp ecx, 3
je 0x4158a7
mov eax, dword [0x5efbf4]
cmp ecx, 0xb
cmovne eax, ecx
mov dword [0x5efbf4], eax
cmp ecx, 3
jle 0x4158a7
cmp ecx, 5
jle 0x4158a0
cmp ecx, 7
je 0x415897
cmp ecx, 9
jne 0x4158a7
mov byte [0x5fc20e], 1
jmp 0x4158a7
mov byte [0x5fc20c], 1
jmp 0x4158a7
mov byte [0x5fc20d], 1
cmp dword [0x5fc2a0], 0
mov edi, 0x409
jne 0x416e5e
push dword [ebp - 0x9c]
lea eax, [ebp - 0x98]
mov dword [ebp - 0x98], 0x4010401
push eax
push ecx
lea eax, [ebp - 0xa0]
push eax
lea ebx, [edi - 8]
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x801
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], bx
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0xc01
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], bx
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x1001
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], bx
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x1401
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], bx
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x1801
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], bx
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x1c01
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], bx
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x2001
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], bx
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x2401
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], bx
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x2801
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], bx
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x2c01
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], bx
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x3001
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], bx
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x3401
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], bx
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x3801
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], bx
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x3c01
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], bx
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x4001
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], bx
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
push dword [ebp - 0x9c]
lea eax, [ebp - 0x98]
mov dword [ebp - 0x98], 0x8040804
push eax
push ecx
lea eax, [ebp - 0xa8]
mov ebx, 0x804
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x1004
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], bx
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
push dword [ebp - 0x9c]
lea eax, [ebp - 0x98]
mov dword [ebp - 0x98], 0x4040404
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
lea ebx, [edi - 5]
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0xc04
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], bx
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x1404
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], bx
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x7c04
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], bx
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
push dword [ebp - 0x9c]
lea eax, [ebp - 0x98]
mov dword [ebp - 0x98], 0x4050405
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
push dword [ebp - 0x9c]
lea eax, [ebp - 0x98]
mov dword [ebp - 0x98], 0x4060406
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
push dword [ebp - 0x9c]
lea eax, [ebp - 0x98]
mov dword [ebp - 0x98], 0x4130413
push eax
push ecx
lea eax, [ebp - 0xa8]
add ebx, 0xf
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x813
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], bx
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
push dword [ebp - 0x9c]
lea eax, [ebp - 0x98]
mov dword [ebp - 0x98], 0x4090409
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x809
call fcn.00403d80
mov ax, word [eax]
push dword [ebp - 0x9c]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
mov word [ebp - 0x96], di
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0xc09
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], di
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x1009
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], di
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x1409
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], di
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x1809
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], di
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x1c09
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], di
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x2009
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], di
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x2409
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], di
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x2809
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], di
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x2c09
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], di
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x3009
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], di
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x3409
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], di
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x4009
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], di
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x4409
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], di
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x4809
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], di
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
push dword [ebp - 0x9c]
lea eax, [ebp - 0x98]
mov dword [ebp - 0x98], 0x40b040b
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
push dword [ebp - 0x9c]
lea eax, [ebp - 0x98]
mov dword [ebp - 0x98], 0x40c040c
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
lea ebx, [edi + 3]
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x80c
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], bx
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0xc0c
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], bx
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x100c
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], bx
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x140c
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], bx
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x180c
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], bx
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
push dword [ebp - 0x9c]
lea eax, [ebp - 0x98]
mov dword [ebp - 0x98], 0x4070407
push eax
push ecx
lea eax, [ebp - 0xa8]
add ebx, 0xfffffffb
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x807
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], bx
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0xc07
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], bx
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x1007
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], bx
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x1407
call fcn.00403d80
mov ax, word [eax]
push dword [ebp - 0x9c]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
mov word [ebp - 0x96], bx
push eax
call fcn.00417870
push dword [ebp - 0x9c]
lea eax, [ebp - 0x98]
mov dword [ebp - 0x98], 0x4080408
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
push dword [ebp - 0x9c]
lea eax, [ebp - 0x98]
mov dword [ebp - 0x98], 0x40d040d
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
push dword [ebp - 0x9c]
lea eax, [ebp - 0x98]
mov dword [ebp - 0x98], 0x40e040e
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
push dword [ebp - 0x9c]
lea eax, [ebp - 0x98]
mov dword [ebp - 0x98], 0x4100410
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
lea ebx, [edi + 7]
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x810
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], bx
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
push dword [ebp - 0x9c]
lea eax, [ebp - 0x98]
mov dword [ebp - 0x98], 0x4110411
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
push dword [ebp - 0x9c]
lea eax, [ebp - 0x98]
mov dword [ebp - 0x98], 0x4120412
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
push dword [ebp - 0x9c]
lea eax, [ebp - 0x98]
mov dword [ebp - 0x98], 0x4140414
push eax
push ecx
lea eax, [ebp - 0xa8]
add ebx, 4
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x814
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], bx
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
push dword [ebp - 0x9c]
lea eax, [ebp - 0x98]
mov dword [ebp - 0x98], 0x4150415
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
push dword [ebp - 0x9c]
lea eax, [ebp - 0x98]
mov dword [ebp - 0x98], 0x4160416
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
lea ebx, [edi + 0xd]
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x816
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], bx
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
push dword [ebp - 0x9c]
lea eax, [ebp - 0x98]
mov dword [ebp - 0x98], 0x4190419
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
push dword [ebp - 0x9c]
lea eax, [ebp - 0x98]
mov dword [ebp - 0x98], 0x40a040a
push eax
push ecx
lea eax, [ebp - 0xa8]
add ebx, 0xfffffff4
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x80a
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], bx
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0xc0a
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], bx
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x100a
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], bx
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x140a
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], bx
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x180a
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], bx
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x1c0a
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], bx
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x200a
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], bx
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x240a
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], bx
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x280a
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], bx
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x2c0a
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], bx
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x300a
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], bx
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x340a
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], bx
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x380a
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], bx
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x3c0a
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], bx
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
mov dword [ebp - 0x9c], 0x400a
lea ecx, [ebp - 0x9c]
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], bx
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x440a
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], bx
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x480a
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], bx
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x4c0a
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], bx
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x500a
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], bx
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x540a
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], bx
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x403
call fcn.00403d80
mov ax, word [eax]
push dword [ebp - 0x9c]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
mov word [ebp - 0x96], bx
push eax
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 3
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], bx
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
push dword [ebp - 0x9c]
lea eax, [ebp - 0x98]
mov dword [ebp - 0x98], 0x41d041d
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
lea ebx, [edi + 0x14]
call fcn.00417870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0x81d
call fcn.00403d80
push dword [ebp - 0x9c]
mov word [ebp - 0x96], bx
mov ax, word [eax]
mov word [ebp - 0x98], ax
lea eax, [ebp - 0x98]
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
push dword [ebp - 0x9c]
lea eax, [ebp - 0x98]
mov dword [ebp - 0x98], 0x41f041f
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
push dword [ebp - 0x9c]
lea eax, [ebp - 0x98]
mov dword [ebp - 0x98], 0x41e041e
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
push dword [ebp - 0x9c]
lea eax, [ebp - 0x98]
mov dword [ebp - 0x98], 0x4210421
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
cmp byte [0x5fc20e], 0
jne 0x416df2
cmp byte [0x5fc20c], 0
je 0x416e5e
push dword [ebp - 0x9c]
lea eax, [ebp - 0x98]
mov dword [ebp - 0x98], 0x4220422
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
push dword [ebp - 0x9c]
lea eax, [ebp - 0x98]
mov dword [ebp - 0x98], 0x42a042a
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
push dword [ebp - 0x9c]
lea eax, [ebp - 0x98]
mov dword [ebp - 0x98], 0x4180418
push eax
push ecx
lea eax, [ebp - 0xa8]
push eax
call fcn.00417870
test si, si
jne 0x416e6c
call dword [sym.imp.KERNEL32.dll_GetUserDefaultUILanguage]
movzx esi, ax
push ecx
push 0
lea ecx, [ebp - 0x94]
call fcn.0040afe7
mov dword [ebp - 4], 1
lea ecx, [ebp - 0x28]
call fcn.00404998
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x40]
push str.langid
call fcn.0040b595
mov byte [ebp - 4], 3
lea eax, [ebp - 0x28]
push eax
lea eax, [ebp - 0x40]
push eax
lea ecx, [ebp - 0x94]
call fcn.0040b3ef
mov bl, al
mov byte [ebp - 4], 2
push 0
push 1
lea ecx, [ebp - 0x40]
call fcn.0040b70f
test bl, bl
je 0x416ee3
lea ecx, [ebp - 0x28]
call fcn.00403d80
cmp dword [eax + 0x14], 8
jb 0x416ed7
mov eax, dword [eax]
push eax
call fcn.0055b555
pop ecx
movzx eax, ax
jmp 0x416ee6
movzx eax, si
mov dword [ebp - 0x98], eax
lea eax, [ebp - 0x98]
push eax
lea eax, [ebp - 0x9c]
push eax
call fcn.004175f7
mov eax, dword [ebp - 0x9c]
cmp eax, dword [0x5fc29c]
je 0x416f11
movzx edi, word [eax + 0x10]
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x28]
call fcn.004043b0
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x94]
call fcn.0040b335
mov ax, di
call fcn.00552e55
ret