Function at 0x41a3c0
Capabilities:
Get keyboard layout

Disassembly:
sub esp, 0x10
push ebx
mov ebx, dword [esp + 0x18]
xor eax, eax
mov dword [esp + 4], ecx
mov dword [esp + 0xc], 0x90020
mov word [esp + 0x12], ax
push ebp
mov bp, word [0x4daadc]
mov word [esp + 0x14], bp
push esi
push edi
mov edi, ebx
test ebx, ebx
je 0x41a435
movzx eax, word [ebx]
test ax, ax
je 0x41a435
mov esi, eax
nop word [eax + eax]
lea ecx, [esp + 0x18]
mov edx, 0x20
nop dword [eax]
cmp si, dx
je 0x41a4bb
movzx eax, word [ecx + 2]
add ecx, 2
mov edx, eax
test ax, ax
jne 0x41a410
movzx eax, word [edi + 2]
add edi, 2
mov esi, eax
test ax, ax
jne 0x41a400
mov ecx, ebx
lea edx, [ecx + 2]
nop word [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x41a440
sub ecx, edx
sar ecx, 1
lea edi, [ebx + ecx*2]
xor esi, esi
sub edi, ebx
mov edx, str.Include
sar edi, 1
mov ecx, ebx
push 0xffffffffffffffff
push edi
call fcn.0047ca70
add esp, 8
test eax, eax
je 0x41b323
push 0xffffffffffffffff
push edi
mov edx, str.IncludeAgain
mov ecx, ebx
call fcn.0047ca70
add esp, 8
test eax, eax
je 0x41b323
push 0xffffffffffffffff
push edi
mov edx, str.NoEnv
mov ecx, ebx
call fcn.0047ca70
add esp, 8
test eax, eax
jne 0x41a504
mov dword [0x4dcd98], 1
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret 4
mov esi, edi
nop dword [eax]
movzx eax, word [esi]
mov ecx, eax
cmp eax, 0x20
je 0x41a4cf
cmp eax, 9
jne 0x41a4d4
add esi, 2
jmp 0x41a4c0
test ax, ax
je 0x41a452
cmp cx, bp
jne 0x41a454
movzx eax, word [esi + 2]
add esi, 2
cmp eax, 0x20
je 0x41a4e6
cmp eax, 9
je 0x41a4e6
xor ecx, ecx
test ax, ax
cmove esi, ecx
jmp 0x41a454
push 0xffffffffffffffff
push edi
mov edx, str.NoTrayIcon
mov ecx, ebx
call fcn.0047ca70
add esp, 8
test eax, eax
jne 0x41a530
mov byte [0x4dcd9d], 1
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.Persistent
mov ecx, ebx
call fcn.0047ca70
add esp, 8
test eax, eax
jne 0x41a55c
mov byte [0x4dc435], 1
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.SingleInstance
mov ecx, ebx
call fcn.0047ca70
add esp, 8
test eax, eax
jne 0x41a60d
mov dword [0x4dc444], 1
test esi, esi
je 0x41b323
push str.Force
push esi
call fcn.00499643
add esp, 8
test eax, eax
jne 0x41a5b3
mov dword [0x4dc444], 2
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret 4
push str.Ignore
push esi
call fcn.00499643
add esp, 8
test eax, eax
jne 0x41a5de
mov dword [0x4dc444], 3
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret 4
push 0x4ca350
push esi
call fcn.00499643
add esp, 8
test eax, eax
jne 0x41b323
mov dword [0x4dc444], 4
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.InstallKeybdHook
mov ecx, ebx
call fcn.0047ca70
add esp, 8
test eax, eax
jne 0x41a639
or byte [0x4dcf12], 1
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.InstallMouseHook
mov ecx, ebx
call fcn.0047ca70
add esp, 8
test eax, eax
jne 0x41a665
or byte [0x4dcf12], 2
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.UseHook
mov ecx, ebx
call fcn.0047ca70
add esp, 8
test eax, eax
jne 0x41a6b9
test esi, esi
je 0x41a6a3
xor edx, edx
mov ecx, esi
call fcn.0040a310
cmp eax, 2
jne 0x41a6a3
xor al, al
mov byte [0x4dc475], al
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret 4
mov al, 1
mov byte [0x4dc475], al
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret 4
push 0xffffffffffffffff
push edi
mov edx, 0x4b8970
mov ecx, ebx
call fcn.0047ca70
add esp, 8
test eax, eax
jne 0x41a7f0
test esi, esi
je 0x41a8a8
mov edi, dword [0x4dcd84]
test edi, edi
je 0x41a726
mov ecx, dword [edi + 4]
mov eax, esi
nop word [eax + eax]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x41a716
test dx, dx
je 0x41a712
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x41a716
add eax, 4
add ecx, 4
test dx, dx
jne 0x41a6f0
xor eax, eax
jmp 0x41a71b
sbb eax, eax
or eax, 1
test eax, eax
je 0x41a728
mov edi, dword [edi + 0x10]
test edi, edi
jne 0x41a6e5
xor edi, edi
mov dword [0x4dcd90], edi
test edi, edi
jne 0x41b323
mov eax, dword [0x4d98d8]
mov ebx, dword [esp + 0x10]
mov ecx, ebx
push 0
push 0
mov edi, dword [eax + 0xb4]
push 0
push 0x4b70dc
push 0
push 0xe3
mov dword [eax + 0xb4], 0
push esi
mov byte [ebx + 0x49], 1
call fcn.0041b840
test eax, eax
je 0x41a798
mov eax, dword [0x4d98d8]
mov ecx, 0x14
mov byte [ebx + 0x49], 0
mov dword [eax + 0xb4], edi
mov esi, dword [ebx + 4]
call fcn.004798b0
mov ecx, eax
test ecx, ecx
jne 0x41a7a4
mov dword [0x4dcd90], eax
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret 4
mov eax, dword [0x4dcd80]
mov dword [ecx + 0x10], 0
test eax, eax
je 0x41a7b9
mov dword [eax + 0x10], ecx
jmp 0x41a7bf
mov dword [0x4dcd84], ecx
mov byte [ecx], 5
mov dword [ecx + 0xc], esi
mov eax, dword [esi + 8]
mov dword [0x4dcd80], ecx
mov dword [0x4dcd90], ecx
mov eax, dword [eax + 4]
mov dword [ecx + 4], eax
mov eax, 3
mov dword [ecx + 8], 0x4b70dc
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.IfTimeout
mov ecx, ebx
call fcn.0047ca70
add esp, 8
test eax, eax
jne 0x41a829
test esi, esi
je 0x41b323
mov ecx, esi
call fcn.004151f0
mov dword [0x4daae0], eax
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret 4
push 6
push str.IfWin
push ebx
call fcn.0049b726
add esp, 0xc
test eax, eax
jne 0x41a9ea
push 3
lea eax, [ebx + 0xc]
push 0x4ca4ec
push eax
call fcn.0049b726
add esp, 0xc
mov edx, 0x12
test eax, eax
mov edi, 0xc
sete cl
test eax, eax
push 6
cmove edi, edx
mov byte [esp + 0x28], cl
add edi, ebx
push str.Active
push edi
call fcn.0049b726
add esp, 0xc
test eax, eax
jne 0x41a886
mov al, 1
jmp 0x41a8a0
push 5
push str.Exist
push edi
call fcn.0049b726
add esp, 0xc
test eax, eax
jne 0x41a9db
mov al, 3
add byte [esp + 0x24], al
test esi, esi
jne 0x41a8c1
mov dword [0x4dcd90], 0
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret 4
mov bp, word [0x4daadc]
xor ecx, ecx
mov dword [esp + 0x14], ecx
mov edi, esi
movzx eax, word [edi]
mov edx, eax
test ax, ax
je 0x41a914
mov ecx, eax
nop dword [eax]
movzx edx, cx
cmp cx, word [0x4daad4]
je 0x41a910
movzx edx, cx
cmp cx, bp
je 0x41a910
movzx edx, cx
cmp cx, word [0x4daad8]
je 0x41a910
movzx eax, word [edi + 2]
add edi, 2
mov ecx, eax
mov edx, eax
test ax, ax
jne 0x41a8e0
mov ecx, dword [esp + 0x14]
test dx, dx
je 0x41a95d
cmp dx, word [0x4daad8]
je 0x41a944
cmp dx, bp
jne 0x41a936
test ecx, ecx
jne 0x41a944
mov ecx, edi
add edi, 2
mov dword [esp + 0x14], ecx
jmp 0x41a8d0
add edi, 2
cmp word [edi], 0
je 0x41a95d
add edi, 2
jmp 0x41a8d0
mov ecx, dword [esp + 0x10]
push ebx
push str.Literal_commas_and_percent_signs_must_be_escaped__e.g.____
call fcn.004302e0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret 4
test ecx, ecx
je 0x41a996
lea edi, [ecx + 2]
movzx eax, word [edi]
cmp eax, 0x20
je 0x41a971
cmp eax, 9
jne 0x41a976
add edi, 2
jmp 0x41a964
xor eax, eax
mov word [ecx], ax
sub ecx, esi
sar ecx, 1
mov edx, ecx
mov ecx, esi
call fcn.00415190
push 1
mov ecx, edi
call fcn.0047eb50
add esp, 4
jmp 0x41a99b
mov edi, 0x4b70dc
push 1
mov ecx, esi
call fcn.0047eb50
mov cl, byte [esp + 0x28]
add esp, 4
mov edx, esi
push edi
call fcn.0040a6e0
add esp, 4
test eax, eax
jne 0x41b323
mov ecx, dword [esp + 0x10]
push 0x4b70dc
push str.Out_of_memory.
call fcn.004302e0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret 4
mov eax, 4
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret 4
push 0xffffffffffffffff
push edi
mov edx, 0x4ccee8
mov ecx, ebx
call fcn.0047ca70
add esp, 8
test eax, eax
jne 0x41ab25
test esi, esi
je 0x41b323
mov edx, str.EndChars
mov ecx, esi
call fcn.0047cda0
mov edi, eax
test edi, edi
je 0x41aaa8
movzx eax, word [edi]
test ax, ax
je 0x41b323
mov esi, eax
mov ecx, 0x4ccf00
mov edx, 9
nop word [eax + eax]
cmp si, dx
je 0x41aa70
movzx eax, word [ecx + 2]
add ecx, 2
mov edx, eax
test ax, ax
jne 0x41aa40
movzx eax, word [edi + 2]
add edi, 2
mov esi, eax
test ax, ax
jne 0x41aa30
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret 4
push 0x64
lea eax, [edi + 2]
push eax
push 0x4daa00
call fcn.004a1eb4
add esp, 0xc
xor eax, eax
mov ecx, 0x4daa00
mov word [0x4daac8], ax
push eax
call fcn.0047eb50
add esp, 4
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret 4
push 7
push str.NoMouse
push esi
call fcn.0049b726
add esp, 0xc
test eax, eax
jne 0x41aad0
mov byte [0x4daaca], al
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret 4
push 0x4dc434
push 0x4dc477
push 0x4dc58c
push 0x4daacb
push 0x4dc58f
push 0x4dc58d
push 0x4daacc
push 0x4daacd
push 0x4dc58e
push 0x4daad0
push 0x4dc590
mov edx, 0x4dc594
mov ecx, esi
call fcn.0040d8f0
add esp, 0x2c
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.HotkeyModifierTimeout
mov ecx, ebx
call fcn.0047ca70
add esp, 8
test eax, eax
jne 0x41ab5e
test esi, esi
je 0x41b323
mov ecx, esi
call fcn.0040f490
mov dword [0x4daaf0], eax
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.HotkeyInterval
mov ecx, ebx
call fcn.0047ca70
add esp, 8
test eax, eax
jne 0x41abaa
test esi, esi
je 0x41b323
mov ecx, esi
call fcn.0040f490
mov dword [0x4daae4], eax
cmp eax, 0xa
jge 0x41b323
mov dword [0x4daae4], 0xa
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.MaxHotkeysPerInterval
mov ecx, ebx
call fcn.0047ca70
add esp, 8
test eax, eax
jne 0x41abf6
test esi, esi
je 0x41b323
mov ecx, esi
call fcn.0040f490
mov dword [0x4daae8], eax
cmp eax, 1
jge 0x41b323
mov dword [0x4daae8], 1
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.MaxThreadsPerHotkey
mov ecx, ebx
call fcn.0047ca70
add esp, 8
test eax, eax
jne 0x41ac57
test esi, esi
je 0x41b323
mov ecx, esi
call fcn.0040f490
cmp eax, 0xff
jle 0x41ac3b
mov eax, 0xff
mov byte [0x4daace], al
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret 4
mov ecx, 1
cmp eax, ecx
cmovl eax, ecx
mov byte [0x4daace], al
lea eax, [ecx + 2]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.MaxThreadsBuffer
mov ecx, ebx
call fcn.0047ca70
add esp, 8
test eax, eax
jne 0x41acab
test esi, esi
je 0x41ac95
xor edx, edx
mov ecx, esi
call fcn.0040a310
cmp eax, 2
jne 0x41ac95
xor al, al
mov byte [0x4dcd94], al
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret 4
mov al, 1
mov byte [0x4dcd94], al
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.MaxThreads
mov ecx, ebx
call fcn.0047ca70
add esp, 8
test eax, eax
jne 0x41ad0c
test esi, esi
je 0x41b323
mov ecx, esi
call fcn.0040f490
cmp eax, 0xff
jle 0x41acf0
mov eax, 0xff
mov dword [0x4d98d4], eax
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret 4
mov ecx, 1
cmp eax, ecx
cmovl eax, ecx
mov dword [0x4d98d4], eax
lea eax, [ecx + 2]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.ClipboardTimeout
mov ecx, ebx
call fcn.0047ca70
add esp, 8
test eax, eax
jne 0x41ad45
test esi, esi
je 0x41b323
mov ecx, esi
call fcn.0040f490
mov dword [0x4d98e0], eax
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.LTrim
mov ecx, ebx
call fcn.0047ca70
add esp, 8
test eax, eax
jne 0x41ad99
test esi, esi
je 0x41ad83
xor edx, edx
mov ecx, esi
call fcn.0040a310
cmp eax, 2
jne 0x41ad83
xor al, al
mov byte [0x4dc476], al
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret 4
mov al, 1
mov byte [0x4dc476], al
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.WinActivateForce
mov ecx, ebx
call fcn.0047ca70
add esp, 8
test eax, eax
jne 0x41adc5
mov byte [0x4dcd9f], 1
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.ErrorStdOut
mov ecx, ebx
call fcn.0047ca70
add esp, 8
test eax, eax
jne 0x41adf5
mov ecx, dword [esp + 0x10]
mov eax, 3
mov byte [ecx + 0xae3], 1
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.MaxMem
mov ecx, ebx
call fcn.0047ca70
add esp, 8
test eax, eax
jne 0x41ae5b
test esi, esi
je 0x41b323
mov ecx, esi
call fcn.00415260
movsd xmm1, qword [0x4d46a8]
maxsd xmm1, xmm0
movsd xmm0, qword [0x4d46e8]
minsd xmm0, xmm1
mulsd xmm0, qword [0x4d46e0]
mulsd xmm0, qword [0x4d46e0]
call fcn.004af14f
mov dword [0x4daaec], eax
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.KeyHistory
mov ecx, ebx
call fcn.0047ca70
add esp, 8
test eax, eax
jne 0x41aec6
test esi, esi
je 0x41b323
mov ecx, esi
call fcn.0040f490
mov dword [0x4d98dc], eax
test eax, eax
jns 0x41aea2
mov dword [0x4d98dc], 0
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret 4
cmp eax, 0x1f4
jle 0x41b323
mov dword [0x4d98dc], 0x1f4
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.CommentFlag
mov ecx, ebx
call fcn.0047ca70
add esp, 8
test eax, eax
jne 0x41afb4
test esi, esi
je 0x41b323
cmp word [esi + 2], ax
jne 0x41af69
movzx eax, word [esi]
cmp eax, 0x23
je 0x41b1a1
cmp ax, word [0x4daad8]
je 0x41b1a1
cmp ax, word [0x4daad4]
je 0x41b1a1
cmp ax, word [0x4daadc]
je 0x41b1a1
cmp eax, 0x21
je 0x41b1a1
cmp eax, 0x5e
je 0x41b1a1
cmp eax, 0x2b
je 0x41b1a1
cmp eax, 0x24
je 0x41b1a1
cmp eax, 0x7e
je 0x41b1a1
cmp eax, 0x2a
je 0x41b1a1
cmp eax, 0x3c
je 0x41b1a1
cmp eax, 0x3e
je 0x41b1a1
push 0xf
push esi
push 0x4db014
call fcn.004a1eb4
mov ecx, 0x4db014
add esp, 0xc
xor eax, eax
mov word [0x4db032], ax
lea edx, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x41af90
sub ecx, edx
mov eax, 3
sar ecx, 1
mov dword [0x4db034], ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.EscapeChar
mov ecx, ebx
call fcn.0047ca70
add esp, 8
test eax, eax
jne 0x41b02c
test esi, esi
je 0x41b323
movzx eax, word [esi]
cmp eax, 0x23
je 0x41b1a1
cmp ax, word [0x4daad8]
je 0x41b1a1
cmp ax, word [0x4daadc]
je 0x41b1a1
cmp eax, 0x2e
je 0x41b1a1
cmp dword [0x4db034], 1
jne 0x41b017
cmp ax, word [0x4db014]
je 0x41b1a1
mov word [0x4daad4], ax
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.DerefChar
mov ecx, ebx
call fcn.0047ca70
add esp, 8
test eax, eax
jne 0x41b09b
test esi, esi
je 0x41b323
movzx eax, word [esi]
cmp ax, word [0x4daad4]
je 0x41b1a1
cmp ax, word [0x4daadc]
je 0x41b1a1
cmp eax, 0x2e
je 0x41b1a1
cmp dword [0x4db034], 1
jne 0x41b086
cmp ax, word [0x4db014]
je 0x41b1a1
mov word [0x4daad8], ax
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret 4
push 0xffffffffffffffff
push edi
mov edx, 0x4cd0cc
mov ecx, ebx
call fcn.0047ca70
add esp, 8
test eax, eax
jne 0x41b113
test esi, esi
je 0x41b323
movzx eax, word [esi]
cmp eax, 0x23
je 0x41b1a1
cmp ax, word [0x4daad4]
je 0x41b1a1
cmp ax, word [0x4daad8]
je 0x41b1a1
cmp eax, 0x2e
je 0x41b1a1
cmp dword [0x4db034], 1
jne 0x41b0fe
cmp ax, word [0x4db014]
je 0x41b1a1
mov word [0x4daadc], ax
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.MenuMaskKey
mov ecx, ebx
call fcn.0047ca70
add esp, 8
test eax, eax
jne 0x41b177
test esi, esi
je 0x41b153
push eax
call dword [sym.imp.USER32.dll_GetKeyboardLayout]
push eax
push 0
push 0x4daaf4
mov edx, 0x4daacf
mov ecx, esi
call fcn.00414350
add esp, 0xc
test al, al
jne 0x41b323
test esi, esi
mov ecx, str.Parameter_1_required
mov eax, str.Parameter_1_invalid.
cmove eax, ecx
mov ecx, dword [esp + 0x10]
push ebx
push eax
call fcn.004302e0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.InputLevel
mov ecx, ebx
call fcn.0047ca70
add esp, 8
test eax, eax
jne 0x41b1d0
test esi, esi
je 0x41b1ba
mov ecx, esi
call fcn.0040f490
test eax, eax
js 0x41b1a1
cmp eax, 0x64
jle 0x41b1bc
mov ecx, dword [esp + 0x10]
push ebx
push str.Parameter_1_invalid.
call fcn.004302e0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret 4
xor eax, eax
mov byte [0x4dc65f], al
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.Warn
mov ecx, ebx
call fcn.0047ca70
add esp, 8
test eax, eax
jne 0x41a9db
movzx eax, word [0x4daadc]
test esi, esi
mov edi, 0x4b70dc
cmovne edi, esi
push eax
push edi
call fcn.00496bcf
mov ecx, eax
add esp, 8
mov ebp, 0x4b70dc
test ecx, ecx
je 0x41b24a
lea ebp, [ecx + 2]
movzx eax, word [ebp]
cmp eax, 0x20
je 0x41b221
cmp eax, 9
jne 0x41b226
add ebp, 2
jmp 0x41b213
lea eax, [ecx - 2]
cmp eax, edi
jbe 0x41b244
nop dword [eax]
movzx ecx, word [eax]
cmp ecx, 0x20
je 0x41b23d
cmp ecx, 9
jne 0x41b244
sub eax, 2
cmp eax, edi
ja 0x41b230
xor ecx, ecx
mov word [eax + 2], cx
cmp word [edi], 0
mov esi, 5
je 0x41b293
xor esi, esi
nop word [eax + eax]
push dword [esi*4 + 0x4d0064]
push edi
call fcn.00499643
add esp, 8
test eax, eax
je 0x41b293
inc esi
cmp esi, 6
jne 0x41b260
mov ecx, dword [esp + 0x10]
push ebx
push str.Parameter_1_invalid.
call fcn.004302e0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret 4
cmp word [ebp], 0
mov edi, 2
je 0x41b2d4
xor edi, edi
push dword [edi*4 + 0x4d0054]
push ebp
call fcn.00499643
add esp, 8
test eax, eax
je 0x41b2d4
inc edi
cmp edi, 4
jne 0x41b2a1
mov ecx, dword [esp + 0x10]
push ebp
push str.Parameter_2_invalid.
call fcn.004302e0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret 4
test esi, esi
je 0x41b2dd
cmp esi, 5
jne 0x41b2e3
mov dword [0x4dcdb0], edi
cmp esi, 1
je 0x41b2ed
cmp esi, 5
jne 0x41b2f3
mov dword [0x4dcdac], edi
cmp esi, 3
je 0x41b2fd
cmp esi, 5
jne 0x41b303
mov dword [0x4dcda8], edi
cmp esi, 2
je 0x41b30d
cmp esi, 5
jne 0x41b313
mov dword [0x4dcda4], edi
cmp esi, 4
je 0x41b31d
cmp esi, 5
jne 0x41b323
mov dword [0x4dcda0], edi
pop edi
pop esi
pop ebp
mov eax, 3
pop ebx
add esp, 0x10
ret 4