Function at 0x4358e0
Capabilities:
Get keyboard layout
Resolve function by parsing pe exports

Disassembly:
mov eax, 0x184c
call fcn.004db810
mov eax, dword [esp + 0x1858]
mov dword [esp + 8], eax
push ebx
mov ebx, ecx
mov dword [esp + 8], ebx
push ebp
push esi
push edi
cmp eax, 0xff
jl 0x435916
sub eax, 0xff
mov byte [esp + 0x2b], 0
mov dword [esp + 0x18], eax
jmp 0x43591f
cmp byte [ebx + 0x25], 0
sete byte [esp + 0x2b]
mov byte [esp + 0x2a], 0
test eax, eax
jne 0x435a0f
xor esi, esi
mov dword [esp + 0x1c], esi
mov al, byte [esp + 0x1860]
mov byte [esp + 0x13], al
cmp dword [0x4fd1cc], 0
jne 0x435958
call fcn.004a8b90
mov dword [0x4fd1cc], eax
test eax, eax
je 0x439d55
mov eax, dword [0x4fd1c8]
cmp dword [eax + 8], 0x24
jae 0x435979
call fcn.004a8b90
mov ecx, dword [0x4fd1c8]
mov dword [ecx + 0xc], eax
test eax, eax
je 0x439d55
mov ecx, dword [0x4fd1c8]
mov edi, dword [ecx + 4]
add dword [ecx + 8], 0xffffffdc
mov dword [0x4fd1c4], edi
lea eax, [edi + 0x24]
mov dword [ecx + 4], eax
test edi, edi
je 0x439d55
movzx eax, word [ebx + 0x14c]
mov ecx, dword [ebx + 0x150]
mov dl, byte [esp + 0x13]
mov word [edi + 2], ax
lea eax, [edi + 0xc]
mov byte [edi], dl
mov edx, dword [esp + 0x18]
mov byte [edi + 1], dl
mov dword [edi + 4], ecx
mov dword [edi + 8], esi
mov dword [eax], 0
mov dword [edi + 0x10], 0
mov dword [edi + 0x14], 0
mov dword [edi + 0x18], 0
mov dword [edi + 0x1c], 0
mov dword [edi + 0x20], 0
mov dword [esp + 0x20], eax
mov eax, dword [ebx + 0x354]
mov dword [edi + 0x10], eax
cmp dword [ebx + 0x350], 0
jne 0x4365e6
mov dword [ebx + 0x350], edi
jmp 0x4365ef
mov esi, eax
shl esi, 4
lea eax, [esi - 1]
cmp eax, 0x7fff
ja 0x439d55
cmp dword [0x4fd1cc], 0
jne 0x435a3d
call fcn.004a8b90
mov dword [0x4fd1cc], eax
test eax, eax
je 0x439d55
mov eax, dword [0x4fd1c8]
cmp esi, dword [eax + 8]
jbe 0x435a5d
call fcn.004a8b90
mov ecx, dword [0x4fd1c8]
mov dword [ecx + 0xc], eax
test eax, eax
je 0x439d55
mov ecx, dword [0x4fd1c8]
mov eax, dword [ecx + 4]
sub dword [ecx + 8], esi
mov dword [esp + 0x1c], eax
mov dword [0x4fd1c4], eax
add eax, esi
mov esi, dword [esp + 0x1c]
mov dword [ecx + 4], eax
test esi, esi
je 0x439d55
xor eax, eax
mov dword [esp + 0x20], eax
cmp dword [esp + 0x18], eax
jle 0x435932
mov bl, byte [esp + 0x1860]
mov byte [esp + 0x13], bl
mov ecx, dword [esp + 0x1864]
mov edx, dword [esp + 0x186c]
mov edi, dword [ecx + eax*4]
test edx, edx
je 0x435ab8
mov ebx, dword [edx + eax*4]
jmp 0x435aba
xor ebx, ebx
mov dl, byte [esp + 0x13]
mov ebp, eax
shl ebp, 4
mov dword [esp + 0x24], ebx
mov dword [esp + 0x3c], ebp
mov byte [esi + ebp + 1], 0
cmp dl, 0x69
jne 0x435afd
cmp eax, 1
jne 0x435afd
mov eax, dword [ecx]
test eax, eax
je case.0x435b06.1
push str.Parse
push eax
call fcn.004c408e
mov dl, byte [esp + 0x1b]
add esp, 8
test eax, eax
jne case.0x435b06.1
mov al, 1
jmp 0x435b8b
cmp eax, 7
ja case.0x435b1f.3
jmp dword [eax*4 + 0x439d74]
movzx eax, dl
dec eax
cmp eax, 0xe0
ja case.0x435b1f.3
movzx eax, byte [eax + 0x439da0]
jmp dword [eax*4 + 0x439d94]
mov al, 2
jmp 0x435b8b
movzx eax, dl
add eax, 0xffffffd4
cmp eax, 0x8f
ja case.0x435b1f.3
movzx eax, byte [eax + 0x439e90]
jmp dword [eax*4 + 0x439e84]
mov al, 1
jmp 0x435b8b
movzx eax, dl
add eax, 0xffffffc9
cmp eax, 0x84
ja case.0x435b1f.3
movzx eax, byte [eax + 0x439f28]
jmp dword [eax*4 + 0x439f20]
movzx eax, dl
add eax, 0xffffffc9
cmp eax, 0x84
ja case.0x435b1f.3
movzx eax, byte [eax + 0x439fb8]
jmp dword [eax*4 + 0x439fb0]
cmp dl, 0x37
je case.0x435b1f.1
cmp dl, 0xbb
je case.0x435b1f.1
xor al, al
mov byte [esi + ebp], al
mov cl, byte [edi]
cmp cl, byte [0x4f9b6e]
jne 0x435bf9
test ebx, ebx
je 0x435ba1
cmp byte [ebx], 0
jne 0x435bf9
mov al, byte [edi + 1]
cmp al, 0x20
je 0x435bac
cmp al, 9
jne 0x435bf9
mov al, byte [esi + ebp]
cmp al, 2
je 0x436510
cmp al, 1
jne 0x435bd2
cmp dl, 0x38
je 0x436510
cmp dl, 9
jb 0x435bd2
cmp dl, 0x20
jbe 0x436510
add edi, 2
mov word [esi + ebp], 0x100
test ebx, ebx
je 0x435be6
add ebx, 2
mov dword [esp + 0x24], ebx
cmp dl, 1
jne 0x435cb3
mov byte [esp + 0x13], 2
jmp 0x435cb3
cmp byte [esi + ebp], 0
je 0x435cb3
test cl, cl
jne 0x435c0f
mov byte [esi + ebp], cl
jmp 0x435cb3
mov esi, ebx
xor edx, edx
mov eax, edi
sub esi, edi
cmp cl, byte [0x4f9b6e]
jne 0x435c29
test ebx, ebx
je 0x435c32
cmp byte [esi + eax], 0
je 0x435c32
mov cl, byte [eax + 1]
inc eax
inc edx
test cl, cl
jne 0x435c17
cmp byte [edx + edi], 0
jne 0x435caf
mov ebx, dword [esp + 0x14]
lea eax, [esp + 0x3a]
push eax
push 3
lea eax, [esp + 0x48]
mov ecx, ebx
push eax
push 0
push edi
call fcn.0043eed0
mov ecx, eax
test ecx, ecx
jne 0x435c78
cmp byte [esp + 0x3a], al
setne al
inc eax
push eax
push dword [esp + 0x44]
push ecx
push edi
mov ecx, ebx
call fcn.0043f410
mov ecx, eax
test ecx, ecx
je 0x4372e2
mov esi, dword [esp + 0x1c]
cmp byte [esi + ebp], 2
jne 0x435c97
mov al, byte [ecx + 0x17]
test al, al
jne 0x435c8f
mov eax, dword [ecx + 0xc]
mov al, byte [eax + 0x17]
cmp al, 2
ja 0x43652c
xor eax, eax
mov dword [esi + ebp + 4], 0x4e3371
mov word [esi + ebp + 2], ax
mov dword [esi + ebp + 8], ecx
jmp 0x4364f8
mov esi, dword [esp + 0x1c]
mov edx, edi
lea ecx, [edx + 1]
mov al, byte [edx]
inc edx
test al, al
jne 0x435cb8
sub edx, ecx
mov ecx, edi
mov word [esi + ebp + 2], dx
movzx edx, dx
call fcn.004a8ac0
mov dword [esi + ebp + 4], eax
test eax, eax
je 0x4372e2
xor ebx, ebx
mov dword [esp + 0x34], ebx
mov dword [esp + 0x30], ebx
cmp byte [eax], bl
je 0x435e0e
mov bl, byte [esp + 0x13]
push dword [esp + 0x18]
movzx ecx, bl
push dword [esp + 0x24]
push dword [esp + 0x186c]
lea eax, [ecx*8]
sub eax, ecx
mov cl, bl
lea edx, [eax*2 + 0x4f8e3f]
call fcn.00435840
add esp, 0xc
test al, al
je 0x435e0e
cmp bl, 2
je 0x435e09
cmp bl, 0x6a
jb 0x435d3d
cmp bl, 0x6c
jbe 0x435e09
cmp bl, 0x74
jb 0x435d4b
cmp bl, 0x76
jbe 0x435e09
mov edi, dword [esi + ebp + 4]
mov esi, edi
test esi, esi
je 0x435d7f
mov dl, byte [esi]
test dl, dl
je 0x435d7f
nop dword [eax + eax]
mov ecx, str.__t____:______
mov al, 0x20
cmp dl, al
je 0x435e05
mov al, byte [ecx + 1]
inc ecx
test al, al
jne 0x435d67
mov dl, byte [esi + 1]
inc esi
test dl, dl
jne 0x435d60
mov esi, dword [esp + 0x1c]
cmp bl, 0x2b
jne 0x435d8f
cmp byte [esi + ebp + 1], 0
jne 0x435e0e
mov al, byte [edi]
cmp al, 0x2d
je 0x435d9d
cmp al, 0x2b
je 0x435d9d
xor eax, eax
jmp 0x435da2
mov eax, 1
mov dl, byte [0x4f9b6e]
lea ecx, [edi + eax]
mov ebx, dword [esp + 0x24]
cmp byte [ecx], dl
jne 0x435dfd
test ebx, ebx
je 0x435dfd
xor eax, eax
cmp ecx, edi
setne al
cmp byte [eax + ebx], 0
jne 0x435dfd
movsx eax, dl
push eax
lea eax, [ecx + 1]
push eax
call fcn.004ca733
add esp, 8
test eax, eax
je 0x435dfd
cmp byte [eax + 1], 0
lea ecx, [eax + 1]
je 0x435df5
push 0
push 1
push 1
xor edx, edx
call fcn.004ab8c0
add esp, 0xc
test eax, eax
je 0x435dfd
xor al, al
mov byte [esi + ebp + 1], al
jmp 0x435e12
mov al, 1
mov byte [esi + ebp + 1], al
jmp 0x435e12
mov esi, dword [esp + 0x1c]
mov byte [esi + ebp + 1], 1
mov ebx, dword [esp + 0x24]
cmp byte [esi + ebp + 1], 0
je 0x435e51
mov ecx, dword [esi + ebp + 4]
mov edx, 1
push 0
push 1
push 1
call fcn.004ab8c0
add esp, 0xc
test eax, eax
je 0x435e51
mov al, byte [esp + 0x13]
cmp al, 2
je 0x435e51
cmp al, 0x6a
jb 0x435e44
cmp al, 0x6c
jbe 0x435e51
cmp al, 0x74
jb 0x435e4c
cmp al, 0x76
jbe 0x435e51
mov byte [esi + ebp + 1], 0
mov edi, dword [esp + 0x3c]
mov ebp, dword [esi + ebp + 4]
cmp byte [edi + esi + 1], 0
je 0x436421
mov al, byte [ebp]
test al, al
je 0x4364ec
nop
cmp al, 0x2e
jne 0x435e84
cmp byte [ebp + 1], 0x3d
jne 0x435e84
mov al, byte [ebp + 2]
add ebp, 2
test al, al
je 0x435ea1
movsx eax, al
push eax
push str.__t____:_______
call fcn.004ca733
add esp, 8
test eax, eax
je 0x435ea1
mov al, byte [ebp + 1]
inc ebp
test al, al
jne 0x435e84
mov al, byte [ebp]
test al, al
je 0x43636a
lea ebx, [ebp + 1]
mov esi, ebx
cmp al, 0x22
jne 0x435ecf
mov al, byte [esi]
test al, al
je 0x436546
cmp al, 0x22
jne 0x435ecc
inc esi
cmp byte [esi], al
jne 0x43635a
inc esi
jmp 0x435eb5
movsx eax, byte [esi]
push eax
push str.__t____:_______
call fcn.004ca733
add esp, 8
test eax, eax
jne 0x435efb
movsx eax, byte [esi + 1]
inc esi
push eax
push str.__t____:_______
call fcn.004ca733
add esp, 8
test eax, eax
je 0x435ee4
cmp byte [esi], 0x3d
jne 0x435f0a
cmp byte [esi - 1], 0x2e
lea eax, [esi - 1]
cmove esi, eax
cmp byte [ebp], 0x2e
jne 0x435f29
movsx eax, byte [ebx]
push eax
push 0x4ec37c
call fcn.004ca733
add esp, 8
test eax, eax
jne 0x43635a
mov eax, esi
nop dword [eax + eax]
mov cl, byte [eax]
cmp cl, 0x20
je 0x435f3c
cmp cl, 9
jne 0x435f3f
inc eax
jmp 0x435f30
cmp cl, 0x3a
jne 0x435fd6
cmp byte [eax + 1], 0x3d
je 0x435fd6
mov ecx, dword [esp + 0x1c]
lea eax, [ebp - 1]
mov edx, dword [edi + ecx + 4]
cmp eax, edx
jbe 0x435f72
mov cl, byte [eax]
cmp cl, 0x20
je 0x435f6d
cmp cl, 9
jne 0x435f72
dec eax
cmp eax, edx
ja 0x435f61
mov al, byte [eax]
cmp al, 0x2c
je 0x435f7c
cmp al, 0x7b
jne 0x435fd6
mov edi, ebp
nop
mov cl, byte [edi]
movzx eax, cl
test eax, 0xffffff80
jne 0x435fa0
push 0x107
push eax
call fcn.004c7451
mov cl, byte [edi]
add esp, 8
test eax, eax
jne 0x435faa
cmp cl, 0x5f
je 0x435faa
cmp cl, 0x7f
jbe 0x435fad
inc edi
jmp 0x435f80
cmp cl, 0x2e
je 0x435fd6
cmp edi, esi
je 0x43635a
mov ecx, dword [esp + 0x14]
push ebp
push str.Quote_marks_are_required_around_this_key.
call fcn.0044dd10
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x184c
ret 0x10
mov ecx, esi
sub ecx, ebp
mov dword [esp + 0x2c], ecx
cmp ecx, 4
jae case.0x436034.66
cmp ecx, 1
jbe case.0x436034.66
mov al, byte [ebp]
cmp ecx, 2
jne 0x43601e
cmp al, 0x6f
je 0x436004
cmp al, 0x4f
jne case.0x436034.66
mov al, byte [ebx]
cmp al, 0x72
je 0x436012
cmp al, 0x52
jne case.0x436034.66
mov byte [ebp], 0x7c
mov byte [ebx], 0x7c
jmp 0x43635a
movsx eax, al
add eax, 0xffffffbf
cmp eax, 0x2d
ja case.0x436034.66
movzx eax, byte [eax + 0x43a04c]
jmp dword [eax*4 + 0x43a040]
mov al, byte [ebx]
cmp al, 0x6e
je 0x436049
cmp al, 0x4e
jne case.0x436034.66
mov al, byte [ebp + 2]
cmp al, 0x64
je 0x436058
cmp al, 0x44
jne case.0x436034.66
mov byte [ebp], 0x26
mov byte [ebx], 0x26
mov byte [ebp + 2], 0x20
jmp 0x43635a
mov al, byte [ebx]
cmp al, 0x6f
je 0x436072
cmp al, 0x4f
jne 0x436087
mov cl, byte [ebp + 2]
cmp cl, 0x74
je 0x43635a
cmp cl, 0x54
je 0x43635a
cmp al, 0x65
je 0x436093
cmp al, 0x45
jne case.0x436034.66
mov al, byte [ebp + 2]
cmp al, 0x77
je 0x4360a2
cmp al, 0x57
jne case.0x436034.66
mov al, byte [ebp + 3]
cmp al, 0x20
je 0x4360ad
cmp al, 9
jne case.0x436034.66
lea edi, [ebp + 4]
mov al, byte [edi]
cmp al, 0x20
je 0x4360ba
cmp al, 9
jne 0x4360bd
inc edi
jmp 0x4360b0
movsx eax, al
push eax
push str.__t____:_______.
call fcn.004ca733
add esp, 8
test eax, eax
jne case.0x436034.66
mov al, byte [edi]
cmp al, 0x22
je case.0x436034.66
movsx eax, al
push eax
push str.__t____:_______.
call fcn.004ca733
add esp, 8
test eax, eax
jne 0x436107
nop dword [eax]
movsx eax, byte [edi + 1]
inc edi
push eax
push str.__t____:_______.
call fcn.004ca733
add esp, 8
test eax, eax
je 0x4360f0
cmp byte [edi], 0x28
sete byte [esp + 0x2a]
jmp 0x43635a
mov bh, byte [esi]
mov edi, ebp
mov byte [esi], 0
mov dl, byte [ebp]
mov byte [esp + 0x29], bh
test dl, dl
je 0x436148
mov ecx, 0x4ec3c8
mov al, 0x27
nop dword [eax]
cmp dl, al
je 0x436562
mov al, byte [ecx + 1]
inc ecx
test al, al
jne 0x436130
mov dl, byte [edi + 1]
inc edi
test dl, dl
jne 0x436126
push 0
push 1
push 0
mov edx, 1
mov ecx, ebp
call fcn.004ab8c0
add esp, 0xc
test eax, eax
jne 0x436358
cmp byte [ebp], 0x2e
jne 0x4361a0
movsx eax, byte [0x4f9b6e]
push eax
push ebp
call fcn.004ca733
add esp, 8
test eax, eax
je 0x436358
mov ecx, dword [esp + 0x14]
push ebp
push str.Ambiguous_or_invalid_use_of__._
call fcn.0044dd10
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x184c
ret 0x10
lea eax, [ebp + 1]
push 0x2e
push eax
call fcn.004ca733
mov edi, eax
add esp, 8
test edi, edi
je 0x436241
movzx ebx, byte [esi - 1]
test ebx, 0xffffff80
jne 0x4361d6
push 2
push ebx
call fcn.004c7451
add esp, 8
test eax, eax
je 0x4361d6
and ebx, 0xffffffdf
mov bh, byte [esp + 0x29]
cmp bl, 0x45
jne 0x43621e
cmp bh, 0x2b
je 0x4361e9
cmp bh, 0x2d
jne 0x43621e
mov byte [esi], bh
nop dword [eax + eax]
mov bh, byte [esi + 1]
inc esi
cmp bh, 0x30
jl 0x4361fe
cmp bh, 0x39
jle 0x4361f0
push 0
push 1
push 0
mov edx, 1
mov byte [esi], 0
mov ecx, ebp
call fcn.004ab8c0
add esp, 0xc
test eax, eax
jne 0x436358
movsx eax, byte [0x4f9b6e]
push eax
push edi
call fcn.004ca733
add esp, 8
test eax, eax
jne 0x43657e
mov eax, edi
sub eax, ebp
mov dword [esp + 0x2c], eax
jmp 0x436258
cmp bh, 0x28
sete bl
cmp bh, 0x28
jne 0x43625a
cmp byte [esp + 0x2a], 0
je 0x43625a
mov byte [esp + 0x2a], 0
xor bl, bl
movsx eax, byte [0x4f9b6e]
push eax
push ebp
call fcn.004ca733
add esp, 8
test eax, eax
je 0x4362c5
mov edx, dword [esp + 0x24]
test edx, edx
je 0x436289
mov edi, dword [esp + 0x3c]
mov eax, ebp
mov ecx, dword [esp + 0x1c]
sub eax, dword [edi + ecx + 4]
add eax, edx
jmp 0x43628b
xor eax, eax
lea ecx, [esp + 0x30]
push ecx
lea ecx, [esp + 0x5c]
push ecx
mov ecx, dword [esp + 0x1c]
push eax
push ebp
call fcn.0043a3e0
test eax, eax
je 0x4372e2
test bl, bl
je 0x4362b8
mov eax, dword [esp + 0x34]
lea eax, [eax + eax*2]
mov byte [esp + eax*4 + 0x61], 0
mov eax, dword [esp + 0x30]
mov dword [esp + 0x34], eax
jmp 0x436358
mov ecx, dword [esp + 0x34]
cmp ecx, 0x200
jge 0x43659a
mov eax, dword [esp + 0x2c]
lea edi, [ecx + ecx*2]
mov dword [esp + edi*4 + 0x58], ebp
mov word [esp + edi*4 + 0x62], ax
mov byte [esp + edi*4 + 0x60], bl
test bl, bl
je 0x4362f7
mov dword [esp + edi*4 + 0x5c], 0
jmp 0x43634f
cmp byte [ebp], 0
je 0x4372e2
lea ecx, [esp + 0x3b]
push ecx
push 3
lea ecx, [esp + 0x4c]
push ecx
mov ecx, dword [esp + 0x20]
push eax
push ebp
call fcn.0043eed0
test eax, eax
je 0x436322
mov dword [esp + edi*4 + 0x5c], eax
jmp 0x43634b
mov ecx, dword [esp + 0x14]
xor eax, eax
cmp byte [esp + 0x3b], al
setne al
inc eax
push eax
push dword [esp + 0x48]
push dword [esp + 0x34]
push ebp
call fcn.0043f410
mov dword [esp + edi*4 + 0x5c], eax
test eax, eax
je 0x4372e2
mov ecx, dword [esp + 0x34]
inc ecx
mov dword [esp + 0x34], ecx
mov dword [esp + 0x30], ecx
mov byte [esi], bh
mov al, byte [esi]
mov ebp, esi
mov edi, dword [esp + 0x3c]
test al, al
jne 0x435e70
mov ebx, dword [esp + 0x34]
mov esi, dword [esp + 0x1c]
cmp ebx, 1
jne 0x4363b0
mov ecx, dword [edi + esi + 4]
xor edx, edx
call fcn.004b0c40
test eax, eax
je 0x4363b8
mov cl, byte [esp + 0x13]
cmp cl, 0x6a
jb 0x436398
cmp cl, 0x6c
jbe 0x436450
cmp cl, 0x74
jb 0x4363a6
cmp cl, 0x76
jbe 0x436450
mov byte [edi + esi + 1], 0
jmp 0x436450
test ebx, ebx
je 0x4364ec
mov esi, dword [edi + esi + 4]
test esi, esi
je 0x4363e8
mov dl, byte [esi]
test dl, dl
je 0x4363e8
mov ecx, str.__t____:_______.
mov al, 0x20
nop dword [eax]
cmp dl, al
je 0x436444
mov al, byte [ecx + 1]
inc ecx
test al, al
jne 0x4363d0
mov dl, byte [esi + 1]
inc esi
test dl, dl
jne 0x4363c6
cmp byte [esp + 0x60], 0
jne 0x436444
mov eax, dword [esp + 0x58]
mov al, byte [eax]
cmp al, byte [0x4f9b6e]
jne 0x436444
mov cl, byte [esp + 0x13]
cmp cl, 0x6a
jb 0x43640b
cmp cl, 0x6c
jbe 0x436444
cmp cl, 0x74
jb 0x436415
cmp cl, 0x76
jbe 0x436444
mov esi, dword [esp + 0x1c]
mov word [edi + esi], 1
jmp 0x436448
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x30]
push eax
lea eax, [esp + 0x5c]
push eax
push ebx
push ebp
call fcn.0043a3e0
test eax, eax
je 0x4372e2
mov ebx, dword [esp + 0x30]
jmp 0x436448
mov esi, dword [esp + 0x1c]
test ebx, ebx
je 0x4364ec
lea esi, [ebx + ebx*2]
shl esi, 2
lea edi, [esi + 0xc]
lea eax, [edi - 1]
cmp eax, 0x7fff
ja 0x4365b6
cmp dword [0x4fd1cc], 0
jne 0x436482
call fcn.004a8b90
mov dword [0x4fd1cc], eax
test eax, eax
je 0x4365b6
mov eax, dword [0x4fd1c8]
cmp edi, dword [eax + 8]
jbe 0x4364a2
call fcn.004a8b90
mov ecx, dword [0x4fd1c8]
mov dword [ecx + 0xc], eax
test eax, eax
je 0x4365b6
mov ecx, dword [0x4fd1c8]
mov ebx, dword [esp + 0x1c]
mov edx, dword [ecx + 4]
sub dword [ecx + 8], edi
mov dword [0x4fd1c4], edx
lea eax, [edx + edi]
mov edi, dword [esp + 0x3c]
mov dword [ecx + 4], eax
mov dword [edi + ebx + 8], edx
test edx, edx
je 0x4365c6
push esi
lea eax, [esp + 0x5c]
push eax
push edx
call fcn.004c2440
mov eax, dword [edi + ebx + 8]
add esp, 0xc
mov dword [esi + eax], 0
mov esi, ebx
jmp 0x4364f4
mov dword [edi + esi + 8], 0
mov ebx, dword [esp + 0x14]
mov eax, dword [esp + 0x20]
inc eax
mov dword [esp + 0x20], eax
cmp eax, dword [esp + 0x18]
jge 0x43593d
jmp 0x435a9e
mov ecx, dword [esp + 0x14]
push edi
push str.Unexpected__
call fcn.0044dd10
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x184c
ret 0x10
push edi
push str.Not_allowed_as_an_output_variable.
mov ecx, ebx
call fcn.0044dd10
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x184c
ret 0x10
mov ecx, dword [esp + 0x14]
push ebp
push str.Missing_close_quote
call fcn.0044dd10
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x184c
ret 0x10
mov ecx, dword [esp + 0x14]
push edi
push str.The_leftmost_character_above_is_illegal_in_an_expression.
call fcn.0044dd10
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x184c
ret 0x10
mov ecx, dword [esp + 0x14]
push edi
push str.Ambiguous_or_invalid_use_of__._
call fcn.0044dd10
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x184c
ret 0x10
mov ecx, dword [esp + 0x14]
push ebp
push str.Too_many_var_func_refs.
call fcn.0044dd10
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x184c
ret 0x10
mov eax, dword [esp + 0x1c]
mov edi, dword [esp + 0x3c]
mov dword [edi + eax + 8], 0
mov ecx, dword [esp + 0x14]
push 0x4e3371
push str.Out_of_memory.
call fcn.0044dd10
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x184c
ret 0x10
mov eax, dword [ebx + 0x354]
mov dword [eax + 0x14], edi
mov dword [ebx + 0x354], edi
mov dword [ebx + 0x38c], edi
test edx, edx
jle 0x436636
mov eax, dword [esi + 4]
mov esi, eax
cmp edx, 1
jle 0x43663b
cmp dword [esp + 0x18], 2
mov ecx, dword [esp + 0x1c]
mov edx, dword [ecx + 0x14]
mov ebp, edx
mov dword [esp + 0x2c], edx
jle 0x436644
cmp dword [esp + 0x18], 3
mov ecx, dword [ecx + 0x24]
mov ebx, ecx
mov dword [esp + 0x30], ecx
jle 0x43664d
mov ecx, dword [esp + 0x1c]
mov ecx, dword [ecx + 0x34]
jmp 0x436652
mov esi, 0x4e3371
mov ebp, 0x4e3371
mov dword [esp + 0x2c], ebp
mov ebx, 0x4e3371
mov dword [esp + 0x30], ebx
mov ecx, 0x4e3371
mov dl, byte [esp + 0x13]
movzx eax, dl
dec eax
mov dword [esp + 0x24], ecx
cmp eax, 0xe3
ja case.0x436670.3
movzx eax, byte [eax + 0x43a188]
jmp dword [eax*4 + 0x43a07c]
mov eax, dword [esp + 0x18]
cmp eax, 2
jge 0x4366a7
mov ecx, dword [esp + 0x14]
push 0x4e3371
push str.Parameter_2_required
call fcn.0044dd10
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x184c
ret 0x10
mov eax, dword [esp + 0x18]
cmp eax, 2
jle 0x43677d
mov dl, byte [ebx]
test dl, dl
je 0x43671d
cmp byte [edi + 1], 2
jbe 0x4366e0
mov eax, dword [edi + 8]
mov cl, byte [eax + 0x20]
test cl, cl
jne 0x4366db
mov ecx, dword [eax + 0x28]
test ecx, ecx
je 0x4366d3
cmp dword [ecx], 0
jne 0x43671d
cmp byte [eax + 0x21], 0
jne 0x43671d
jmp 0x4366e0
cmp cl, 1
je 0x43671d
movzx eax, dl
mov dword [esp + 0x20], eax
test eax, 0xffffff80
jne 0x436704
push 2
push eax
call fcn.004c7451
add esp, 8
test eax, eax
mov eax, dword [esp + 0x20]
je 0x436704
and eax, 0xffffffdf
movsx eax, al
push eax
push str.SMHD
call fcn.004ca733
add esp, 8
test eax, eax
je 0x436b40
mov bl, byte [esp + 0x13]
cmp bl, 5
jne 0x43676d
cmp byte [ebp], 0
je 0x43676d
cmp byte [edi + 1], 1
jbe 0x436755
mov eax, dword [edi + 8]
mov cl, byte [eax + 0x10]
test cl, cl
jne 0x436750
mov ecx, dword [eax + 0x18]
test ecx, ecx
je 0x436748
cmp dword [ecx], 0
jne 0x43676d
cmp byte [eax + 0x11], 0
jne 0x43676d
jmp 0x436755
cmp cl, 1
je 0x43676d
push 1
lea edx, [esp + 0x4c]
mov ecx, ebp
call fcn.004ab550
add esp, 4
test eax, eax
je case.0x439046.0
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x1c], 0
jmp 0x439b8f
mov bl, byte [esp + 0x13]
cmp bl, 7
jne 0x4367f2
cmp byte [edi + 1], 1
jbe 0x4367b3
mov eax, dword [edi + 8]
mov cl, byte [eax + 0x10]
test cl, cl
jne 0x4367ae
mov ecx, dword [eax + 0x18]
test ecx, ecx
je 0x4367a6
cmp dword [ecx], 0
jne 0x4367f2
cmp byte [eax + 0x11], 0
jne 0x4367f2
jmp 0x4367b3
cmp cl, 1
je 0x4367f2
mov eax, dword [esp + 0x1c]
cmp byte [eax + 0x11], 0
jne 0x4367f6
mov ecx, ebp
call fcn.00428cb0
ucomisd xmm0, qword [0x4f13b0]
lahf
test ah, 0x44
jp 0x4367f2
mov ecx, dword [esp + 0x14]
push ebp
push str.Divide_by_zero
call fcn.0044dd10
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x184c
ret 0x10
mov bl, byte [esp + 0x13]
mov eax, dword [esp + 0x1c]
mov ecx, 1
mov dword [esp + 0x20], ecx
cmp dword [esp + 0x18], ecx
jle 0x439b8f
mov edx, 0xfffffff4
lea esi, [eax + 0x1c]
sub edx, eax
mov dword [esp + 0x2c], edx
mov ebx, dword [esi - 8]
cmp byte [ebx], 0
je 0x436847
movzx eax, byte [edi + 1]
cmp ecx, eax
jge 0x43686e
mov eax, dword [edi + 8]
add eax, edx
mov cl, byte [eax + esi]
test cl, cl
jne 0x436869
mov ecx, dword [eax + esi + 8]
test ecx, ecx
je 0x436840
cmp dword [ecx], 0
jne 0x436847
cmp byte [eax + esi + 1], 0
je 0x43686e
mov dword [esi], 0
mov ecx, dword [esp + 0x20]
add esi, 0x10
inc ecx
mov dword [esp + 0x20], ecx
cmp ecx, dword [esp + 0x18]
jge case.0x436670.3
mov edx, dword [esp + 0x2c]
jmp 0x436817
cmp cl, 1
je 0x436847
cmp byte [esi - 0xb], 0
jne 0x436847
push 0
push 0
push 0
mov edx, 1
mov ecx, ebx
call fcn.004ab8c0
add esp, 0xc
test eax, eax
je 0x436847
mov al, byte [esp + 0x13]
cmp al, 1
je 0x436899
cmp al, 2
jne 0x4368af
mov al, byte [ebp]
cmp al, 0x30
je 0x436847
cmp al, 0x2b
je 0x436847
mov eax, dword [esp + 0x1c]
cmp word [eax + 0x12], 0x12
ja 0x436847
cmp dword [0x4fd1cc], 0
jne 0x4368ca
call fcn.004a8b90
mov dword [0x4fd1cc], eax
test eax, eax
je 0x436982
mov edx, dword [0x4fd1c8]
cmp dword [edx + 8], 8
jae 0x4368ec
call fcn.004a8b90
mov edx, dword [0x4fd1c8]
mov dword [edx + 0xc], eax
test eax, eax
je 0x436982
mov ecx, dword [edx + 4]
add dword [edx + 8], 0xfffffff8
mov dword [0x4fd1c4], ecx
lea eax, [ecx + 8]
mov dword [edx + 4], eax
mov dword [esi], ecx
test ecx, ecx
je 0x436988
mov ebx, dword [esi - 8]
mov ecx, ebx
nop
mov al, byte [ecx]
cmp al, 0x20
je 0x43691a
cmp al, 9
jne 0x43691d
inc ecx
jmp 0x436910
test al, al
je 0x43696b
cmp al, 0x2d
je 0x436929
cmp al, 0x2b
jne 0x436930
lea eax, [ecx + 1]
mov ecx, eax
mov al, byte [eax]
cmp al, 0x30
jne 0x43696b
mov al, byte [ecx + 1]
cmp al, 0x78
je 0x43693f
cmp al, 0x58
jne 0x43696b
movsx eax, byte [ecx + 2]
push eax
call fcn.004c4410
add esp, 4
test eax, eax
je 0x43696b
push 0x10
push 0
push ebx
call fcn.004c4c8d
mov ecx, eax
add esp, 0xc
mov eax, dword [esi]
mov dword [eax], ecx
mov dword [eax + 4], edx
jmp 0x43684d
push ebx
call fcn.004c4db1
mov ecx, eax
add esp, 4
mov eax, dword [esi]
mov dword [eax], ecx
mov dword [eax + 4], edx
jmp 0x43684d
mov dword [esi], 0
mov ecx, dword [esp + 0x14]
push 0x4e3371
push str.Out_of_memory.
call fcn.0044dd10
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x184c
ret 0x10
mov eax, dword [esp + 0x18]
sub eax, 0
je 0x436caf
sub eax, 1
je 0x436c1c
cmp byte [edi + 1], 0
jbe 0x436a02
mov eax, dword [edi + 8]
mov cl, byte [eax]
test cl, cl
jne 0x4369ee
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x4369d9
cmp dword [ecx], 0
jne 0x4369df
cmp byte [eax + 1], 0
je 0x436a02
mov eax, dword [esp + 0x20]
mov dword [eax], 1
jmp case.0x436670.3
mov eax, dword [esp + 0x20]
cmp cl, 1
jne 0x436a02
mov dword [eax], 1
jmp case.0x436670.3
push str.Read
push esi
call fcn.004c408e
add esp, 8
test eax, eax
jne 0x436a20
mov dword [edi + 0xc], 5
jmp case.0x436670.3
push str.Parse
push esi
call fcn.004c408e
add esp, 8
test eax, eax
jne 0x436a3e
mov dword [edi + 0xc], 6
jmp case.0x436670.3
push 0x4ec47c
push esi
call fcn.004c408e
add esp, 8
test eax, eax
jne 0x436a5c
mov dword [edi + 0xc], 9
jmp case.0x436670.3
push str.Files
push esi
call fcn.004c408e
add esp, 8
test eax, eax
jne 0x436a7a
mov dword [edi + 0xc], 0xa
jmp case.0x436670.3
push 0
push 0
xor edx, edx
mov ecx, esi
call fcn.004293a0
xor ecx, ecx
add esp, 8
test eax, eax
setne cl
add ecx, 3
mov dword [edi + 0xc], ecx
test eax, eax
jne 0x436b5c
cmp byte [edi + 1], 1
jbe 0x436ac8
mov eax, dword [edi + 8]
mov cl, byte [eax + 0x10]
test cl, cl
jne 0x436ac3
mov ecx, dword [eax + 0x18]
test ecx, ecx
je 0x436abb
cmp dword [ecx], 0
jne 0x436ad7
cmp byte [eax + 0x11], 0
jne 0x436ad7
jmp 0x436ac8
cmp cl, 1
je 0x436ad7
mov ecx, ebp
call fcn.0042b450
test eax, eax
je case.0x439046.0
mov dl, byte [ebx]
test dl, dl
je case.0x436670.3
cmp byte [edi + 1], 2
jbe 0x436b16
mov eax, dword [edi + 8]
mov cl, byte [eax + 0x20]
test cl, cl
jne 0x436b0d
mov ecx, dword [eax + 0x28]
test ecx, ecx
je 0x436b01
cmp dword [ecx], 0
jne case.0x436670.3
cmp byte [eax + 0x21], 0
jne case.0x436670.3
jmp 0x436b16
cmp cl, 1
je case.0x436670.3
mov ecx, ebx
lea esi, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x436b20
sub ecx, esi
cmp ecx, 1
ja 0x436b40
cmp dl, 0x30
je case.0x436670.3
cmp dl, 0x31
je case.0x436670.3
mov ecx, dword [esp + 0x14]
push ebx
push str.Parameter_3_invalid.
call fcn.0044dd10
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x184c
ret 0x10
cmp dword [esp + 0x18], 2
jle 0x436b97
cmp byte [edi + 1], 2
jbe 0x436b8c
mov eax, dword [edi + 8]
mov cl, byte [eax + 0x20]
test cl, cl
jne 0x436b87
mov ecx, dword [eax + 0x28]
test ecx, ecx
je 0x436b7f
cmp dword [ecx], 0
jne 0x436b97
cmp byte [eax + 0x21], 0
jne 0x436b97
jmp 0x436b8c
cmp cl, 1
je 0x436b97
mov ecx, ebx
call fcn.0042b450
test eax, eax
je 0x436b40
mov ebp, dword [esp + 0x24]
mov dl, byte [ebp]
test dl, dl
je case.0x436670.3
cmp byte [edi + 1], 3
jbe 0x436bdb
mov eax, dword [edi + 8]
mov cl, byte [eax + 0x30]
test cl, cl
jne 0x436bd2
mov ecx, dword [eax + 0x38]
test ecx, ecx
je 0x436bc6
cmp dword [ecx], 0
jne case.0x436670.3
cmp byte [eax + 0x31], 0
jne case.0x436670.3
jmp 0x436bdb
cmp cl, 1
je case.0x436670.3
mov ecx, ebp
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x436be0
sub ecx, esi
cmp ecx, 1
ja 0x436c00
cmp dl, 0x30
je case.0x436670.3
cmp dl, 0x31
je case.0x436670.3
mov ecx, dword [esp + 0x14]
push ebp
push str.Parameter_4_invalid.
call fcn.0044dd10
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x184c
ret 0x10
cmp byte [edi + 1], 0
jbe 0x436c55
mov eax, dword [edi + 8]
mov cl, byte [eax]
test cl, cl
jne 0x436c50
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x436c37
cmp dword [ecx], 0
jne 0x436c3d
cmp byte [eax + 1], 0
je 0x436c55
mov bl, byte [esp + 0x13]
lea edx, [edi + 0xc]
mov eax, 1
mov dword [edx], eax
jmp 0x439b92
cmp cl, 1
je 0x436c3d
mov eax, dword [esp + 0x1c]
cmp byte [eax + 1], 0
jne 0x436c3d
push 0
push 0
push 1
xor edx, edx
mov ecx, esi
call fcn.004ab8c0
add esp, 0xc
test eax, eax
je 0x436c88
mov bl, byte [esp + 0x13]
lea edx, [edi + 0xc]
mov eax, 2
mov dword [edx], eax
jmp 0x439b92
push 0
push 0
xor edx, edx
mov ecx, esi
call fcn.004293a0
mov bl, byte [esp + 0x1b]
lea edx, [edi + 0xc]
add esp, 8
neg eax
sbb eax, eax
neg eax
add eax, 3
mov dword [edx], eax
jmp 0x439b92
lea edx, [edi + 0xc]
mov dword [edx], 2
mov bl, byte [esp + 0x13]
jmp 0x439b92
mov bl, byte [esp + 0x13]
lea edx, [edi + 0xc]
mov dword [edx], 7
jmp 0x439b92
mov bl, byte [esp + 0x13]
lea edx, [edi + 0xc]
mov dword [edx], 8
jmp 0x439b92
cmp dword [esp + 0x18], 0
mov byte [0x4fb979], 1
jle case.0x436670.3
cmp byte [edi + 1], 0
jbe 0x436d2a
mov eax, dword [edi + 8]
mov cl, byte [eax]
test cl, cl
jne 0x436d21
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x436d16
cmp dword [ecx], 0
jne case.0x436670.3
cmp byte [eax + 1], 0
je 0x436d2a
jmp case.0x436670.3
cmp cl, 1
je case.0x436670.3
push 0
lea eax, [esp + 0x24]
mov ecx, esi
push 0
push eax
lea edx, [esp + 0x38]
call fcn.00483c50
add esp, 0xc
cmp dword [esp + 0x20], 0
jne 0x436d64
mov ecx, dword [esp + 0x14]
push esi
push str.Invalid_Gui_name.
call fcn.0044dd10
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x184c
ret 0x10
mov ecx, dword [esp + 0x2c]
call fcn.0042a150
cmp eax, 0x12
ja case.0x436670.3
movzx eax, byte [eax + 0x43a280]
jmp dword [eax*4 + 0x43a26c]
push esi
push str.Parameter_1_invalid.
mov ecx, dword [esp + 0x1c]
call fcn.0044dd10
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x184c
ret 0x10
mov ebx, dword [esp + 0x18]
cmp ebx, 1
jle case.0x436670.3
cmp byte [edi + 1], 1
jbe 0x436de4
mov eax, dword [edi + 8]
add eax, 0x10
mov cl, byte [eax]
test cl, cl
jne 0x436ddb
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x436dcf
cmp dword [ecx], 0
jne case.0x436670.3
cmp byte [eax + 1], 0
jne case.0x436670.3
jmp 0x436de4
cmp cl, 1
je case.0x436670.3
mov ecx, ebp
call fcn.0042a670
test al, al
je case.0x439046.0
cmp al, 0xb
jne case.0x436670.3
cmp ebx, 3
jle case.0x436670.3
mov ebp, dword [esp + 0x24]
mov ecx, dword [esp + 0x14]
push ebp
push str.Parameter_4_must_be_blank_in_this_case.
call fcn.0044dd10
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x184c
ret 0x10
cmp dword [esp + 0x18], 1
jle case.0x436670.3
mov ecx, dword [esp + 0x14]
push ebp
push str.Parameter_2_and_beyond_should_be_omitted_in_this_case.
call fcn.0044dd10
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x184c
ret 0x10
cmp dword [esp + 0x18], 2
jle case.0x436670.3
mov ecx, dword [esp + 0x14]
push ebx
push str.Parameter_3_and_beyond_should_be_omitted_in_this_case.
call fcn.0044dd10
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x184c
ret 0x10
cmp byte [edi + 1], 0
jbe 0x436e9a
mov eax, dword [edi + 8]
mov cl, byte [eax]
test cl, cl
jne 0x436e95
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x436e8d
cmp dword [ecx], 0
jne 0x436eb1
cmp byte [eax + 1], 0
jne 0x436eb1
jmp 0x436e9a
cmp cl, 1
je 0x436eb1
mov ecx, dword [esp + 0x14]
push 1
push esi
call fcn.0043fb00
mov dword [edi + 0xc], eax
test eax, eax
je 0x4372e2
mov bl, byte [esp + 0x13]
cmp bl, 0x99
je 0x436f75
cmp bl, 0x9a
je 0x436f75
cmp bl, 0x9b
jne 0x439b8f
mov dl, byte [ebp]
test dl, dl
je 0x439b8f
cmp byte [edi + 1], 1
jbe 0x436f10
mov eax, dword [edi + 8]
mov cl, byte [eax + 0x10]
test cl, cl
jne 0x436f07
mov ecx, dword [eax + 0x18]
test ecx, ecx
je 0x436efb
cmp dword [ecx], 0
jne 0x439b8f
cmp byte [eax + 0x11], 0
jne 0x439b8f
jmp 0x436f10
cmp cl, 1
je 0x439b8f
mov ecx, ebp
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x436f15
sub ecx, esi
cmp ecx, 1
ja case.0x439046.0
movzx ebx, dl
test ebx, 0xffffff80
jne 0x436f40
push 2
push ebx
call fcn.004c7451
add esp, 8
test eax, eax
je 0x436f40
and ebx, 0xffffffdf
movsx eax, bl
push eax
push 0x4ec550
call fcn.004ca733
add esp, 8
test eax, eax
jne case.0x436670.3
push ebp
push str.Parameter_2_invalid.
mov ecx, dword [esp + 0x1c]
call fcn.0044dd10
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x184c
ret 0x10
mov dl, byte [ebp]
test dl, dl
je 0x439b8f
cmp byte [edi + 1], 1
jbe 0x436fb5
mov eax, dword [edi + 8]
mov cl, byte [eax + 0x10]
test cl, cl
jne 0x436fac
mov ecx, dword [eax + 0x18]
test ecx, ecx
je 0x436fa0
cmp dword [ecx], 0
jne 0x439b8f
cmp byte [eax + 0x11], 0
jne 0x439b8f
jmp 0x436fb5
cmp cl, 1
je 0x439b8f
mov ecx, ebp
lea esi, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x436fc0
sub ecx, esi
cmp ecx, 1
ja case.0x439046.0
movzx ebx, dl
test ebx, 0xffffff80
jne 0x436feb
push 2
push ebx
call fcn.004c7451
add esp, 8
test eax, eax
je 0x436feb
and ebx, 0xffffffdf
cmp bl, 0x52
je case.0x436670.3
mov ecx, dword [esp + 0x14]
push ebp
push str.Parameter_2_invalid.
call fcn.0044dd10
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x184c
ret 0x10
mov ebx, dword [esp + 0x18]
cmp ebx, 1
jl case.0x436670.3
cmp byte [edi + 1], 0
jbe 0x43704a
mov eax, dword [edi + 8]
mov cl, byte [eax]
test cl, cl
jne 0x4370bc
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x437040
cmp dword [ecx], 0
jne 0x4370c1
cmp byte [eax + 1], 0
jne 0x4370c1
push 5
push str.Float
push esi
call fcn.004c4e4b
add esp, 0xc
test eax, eax
jne 0x43712e
lea eax, [esi + 5]
push str.Fast
push eax
call fcn.004c408e
mov ecx, dword [0x4fb970]
add esp, 8
test eax, eax
mov edx, 1
cmovne ecx, edx
mov dword [0x4fb970], ecx
cmp ebx, edx
jle case.0x436670.3
cmp byte [edi + 1], dl
jbe 0x4370e3
mov eax, dword [edi + 8]
mov cl, byte [eax + 0x10]
test cl, cl
jne 0x4370da
mov ecx, dword [eax + 0x18]
test ecx, ecx
je 0x4370b0
cmp dword [ecx], 0
jne case.0x436670.3
cmp byte [eax + 0x11], 0
jne case.0x436670.3
jmp 0x4370e3
cmp cl, 1
jne 0x43704a
mov dword [0x4fb974], 1
mov dword [0x4fb970], 1
jmp case.0x436670.3
cmp cl, 1
je case.0x436670.3
push 1
push 1
push 0
mov ecx, ebp
call fcn.004ab8c0
add esp, 0xc
test eax, eax
je case.0x439046.0
mov ecx, ebp
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x437100
sub ecx, edx
cmp ecx, 0x1e
jb case.0x436670.3
mov ecx, dword [esp + 0x14]
push ebp
push str.Parameter_2_invalid.
call fcn.0044dd10
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x184c
ret 0x10
push 7
push str.Integer
push esi
call fcn.004c4e4b
add esp, 0xc
test eax, eax
jne case.0x4391ed.0
lea eax, [esi + 7]
push str.Fast
push eax
call fcn.004c408e
mov ecx, dword [0x4fb974]
add esp, 8
test eax, eax
mov eax, 1
cmovne ecx, eax
mov dword [0x4fb974], ecx
cmp ebx, eax
jle case.0x436670.3
cmp byte [edi + 1], al
jbe 0x4371a9
mov eax, dword [edi + 8]
mov cl, byte [eax + 0x10]
test cl, cl
jne 0x4371a0
mov ecx, dword [eax + 0x18]
test ecx, ecx
je 0x437194
cmp dword [ecx], 0
jne case.0x436670.3
cmp byte [eax + 0x11], 0
jne case.0x436670.3
jmp 0x4371a9
cmp cl, 1
je case.0x436670.3
movzx ebx, byte [ebp]
test ebx, 0xffffff80
jne 0x4371c7
push 2
push ebx
call fcn.004c7451
add esp, 8
test eax, eax
je 0x4371c7
and ebx, 0xffffffdf
cmp bl, 0x48
je case.0x436670.3
movzx ebx, byte [ebp]
test ebx, 0xffffff80
jne 0x4371ee
push 2
push ebx
call fcn.004c7451
add esp, 8
test eax, eax
je 0x4371ee
and ebx, 0xffffffdf
cmp bl, 0x44
je case.0x436670.3
mov ecx, dword [esp + 0x14]
push ebp
push str.Parameter_2_invalid.
call fcn.0044dd10
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x184c
ret 0x10
cmp byte [esi], 0
je case.0x436670.3
cmp byte [edi + 1], 0
jbe 0x43724f
mov eax, dword [edi + 8]
mov cl, byte [eax]
test cl, cl
jne 0x437246
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x43723b
cmp dword [ecx], 0
jne case.0x436670.3
cmp byte [eax + 1], 0
je 0x43724f
jmp case.0x436670.3
cmp cl, 1
je case.0x436670.3
push esi
push 0x4ec55c
lea eax, [esp + 0x60]
push 0x107
push eax
call fcn.004aba90
add esp, 0x10
cmp byte [esp + 0x58], 0
jne 0x437287
mov eax, dword [esp + 0x20]
mov dword [eax], 0
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x184c
ret 0x10
mov ebx, dword [esp + 0x14]
lea eax, [esp + 0x29]
push eax
push 3
lea eax, [esp + 0x28]
mov ecx, ebx
push eax
push 0
lea eax, [esp + 0x68]
push eax
call fcn.0043eed0
test eax, eax
je 0x4372b7
mov bl, byte [esp + 0x13]
lea edx, [edi + 0xc]
mov dword [edx], eax
jmp 0x439b92
xor eax, eax
mov ecx, ebx
cmp byte [esp + 0x29], al
setne al
inc eax
push eax
push dword [esp + 0x24]
lea eax, [esp + 0x60]
push 0
push eax
call fcn.0043f410
mov dword [edi + 0xc], eax
lea edx, [edi + 0xc]
test eax, eax
jne 0x436cb8
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x184c
ret 0x10
cmp dword [esp + 0x18], 0
jle case.0x436670.3
mov eax, dword [0x4f898c]
cmp dword [eax + 0x94], 0
jne case.0x436670.3
mov ecx, dword [esp + 0x14]
push 0x4e3371
push str.Returns_parameter_should_be_blank_except_inside_a_function.
call fcn.0044dd10
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x184c
ret 0x10
cmp dword [esp + 0x18], 0
jle case.0x436670.3
cmp byte [edi + 1], 0
jbe 0x43736d
mov eax, dword [edi + 8]
mov cl, byte [eax]
test cl, cl
jne 0x437364
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x437358
cmp dword [ecx], 0
jne case.0x436670.3
cmp byte [eax + 1], 0
jne case.0x436670.3
jmp 0x43736d
cmp cl, 1
je case.0x436670.3
test esi, esi
je case.0x436670.3
cmp byte [esi], 0
je case.0x436670.3
push 0x4e8dac
push esi
call fcn.004c408e
add esp, 8
test eax, eax
je case.0x436670.3
push 0x4e37f8
push esi
call fcn.004c4262
add esp, 8
test eax, eax
je case.0x436670.3
push 0x4e8db0
push esi
call fcn.004c408e
add esp, 8
test eax, eax
je case.0x436670.3
push 0x4e33f8
push esi
call fcn.004c4262
add esp, 8
test eax, eax
je case.0x436670.3
mov ecx, dword [esp + 0x14]
push esi
push str.Parameter_1_invalid.
call fcn.0044dd10
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x184c
ret 0x10
cmp dword [esp + 0x18], 0
jle case.0x436670.3
cmp byte [edi + 1], 0
jbe 0x437431
mov eax, dword [edi + 8]
mov cl, byte [eax]
test cl, cl
jne 0x437428
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x43741c
cmp dword [ecx], 0
jne case.0x436670.3
cmp byte [eax + 1], 0
jne case.0x436670.3
jmp 0x437431
cmp cl, 1
je case.0x436670.3
push 0x4e8dac
push esi
call fcn.004c408e
add esp, 8
test eax, eax
je case.0x436670.3
push 0x4e37f8
push esi
call fcn.004c4262
add esp, 8
test eax, eax
je case.0x436670.3
push 0x4e8db0
push esi
call fcn.004c408e
add esp, 8
test eax, eax
je case.0x436670.3
push 0x4e33f8
push esi
call fcn.004c4262
add esp, 8
test eax, eax
je case.0x436670.3
push str.Locale
push esi
call fcn.004c408e
add esp, 8
test eax, eax
je case.0x436670.3
mov ecx, dword [esp + 0x14]
push esi
push str.Parameter_1_invalid.
call fcn.0044dd10
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x184c
ret 0x10
cmp dword [esp + 0x18], 0
jle case.0x436670.3
cmp byte [edi + 1], 0
jbe 0x4374f9
mov eax, dword [edi + 8]
mov cl, byte [eax]
test cl, cl
jne 0x4374f0
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x4374e5
cmp dword [ecx], 0
jne case.0x436670.3
cmp byte [eax + 1], 0
je 0x4374f9
jmp case.0x436670.3
cmp cl, 1
je case.0x436670.3
mov edx, 0x4ec5a0
mov ecx, esi
call fcn.004abe60
test eax, eax
jne case.0x436670.3
push eax
push eax
push eax
lea edx, [eax + 1]
mov ecx, esi
call fcn.004ab8c0
add esp, 0xc
test eax, eax
jne case.0x436670.3
mov ecx, dword [esp + 0x14]
push esi
push str.Parameter_1_invalid.
call fcn.0044dd10
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x184c
ret 0x10
cmp dword [esp + 0x18], 0
jle case.0x436670.3
cmp byte [edi + 1], 0
jbe 0x43757f
mov eax, dword [edi + 8]
mov cl, byte [eax]
test cl, cl
jne 0x437576
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x43756b
cmp dword [ecx], 0
jne case.0x436670.3
cmp byte [eax + 1], 0
je 0x43757f
jmp case.0x436670.3
cmp cl, 1
je case.0x436670.3
mov ecx, esi
call fcn.00413500
test eax, eax
jne case.0x436670.3
push str.Permit
jmp 0x43748e
cmp dword [esp + 0x18], 0
jle case.0x436670.3
cmp byte [edi + 1], 0
jbe 0x4375d7
mov eax, dword [edi + 8]
mov cl, byte [eax]
test cl, cl
jne 0x4375ce
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x4375c2
cmp dword [ecx], 0
jne case.0x436670.3
cmp byte [eax + 1], 0
jne case.0x436670.3
jmp 0x4375d7
cmp cl, 1
je case.0x436670.3
mov ecx, esi
call fcn.0042b2a0
test eax, eax
jne case.0x436670.3
jmp case.0x4391ed.0
cmp dword [esp + 0x18], 0
jle case.0x436670.3
cmp byte [edi + 1], 0
jbe 0x43762a
mov eax, dword [edi + 8]
mov cl, byte [eax]
test cl, cl
jne 0x437621
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x437615
cmp dword [ecx], 0
jne case.0x436670.3
cmp byte [eax + 1], 0
jne case.0x436670.3
jmp 0x43762a
cmp cl, 1
je case.0x436670.3
mov edx, 4
mov ecx, esi
call fcn.0042b3c0
cmp eax, 4
jne case.0x436670.3
jmp case.0x4391ed.0
cmp dword [esp + 0x18], 0
jle case.0x436670.3
cmp byte [edi + 1], 0
jbe 0x437683
mov eax, dword [edi + 8]
mov cl, byte [eax]
test cl, cl
jne 0x43767a
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x43766e
cmp dword [ecx], 0
jne case.0x436670.3
cmp byte [eax + 1], 0
jne case.0x436670.3
jmp 0x437683
cmp cl, 1
je case.0x436670.3
mov ecx, esi
mov al, byte [ecx]
cmp al, 0x20
je 0x43768f
cmp al, 9
jne 0x437692
inc ecx
jmp 0x437685
test al, al
je 0x4376d4
cmp al, 0x2d
je 0x43769e
cmp al, 0x2b
jne 0x4376a5
lea eax, [ecx + 1]
mov ecx, eax
mov al, byte [eax]
cmp al, 0x30
jne 0x4376d4
mov al, byte [ecx + 1]
cmp al, 0x78
je 0x4376b4
cmp al, 0x58
jne 0x4376d4
movsx eax, byte [ecx + 2]
push eax
call fcn.004c4410
add esp, 4
test eax, eax
je 0x4376d4
push 0x10
push 0
push esi
call fcn.004c4d25
add esp, 0xc
jmp 0x4376dd
push esi
call fcn.004c4df6
add esp, 4
cmp eax, 0x64
jbe case.0x436670.3
jmp case.0x4391ed.0
cmp dword [esp + 0x18], 0
jle case.0x436670.3
cmp byte [edi + 1], 0
jbe 0x43772a
mov eax, dword [edi + 8]
mov cl, byte [eax]
test cl, cl
jne 0x437721
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x437715
cmp dword [ecx], 0
jne case.0x436670.3
cmp byte [eax + 1], 0
jne case.0x436670.3
jmp 0x43772a
cmp cl, 1
je case.0x436670.3
mov ecx, esi
call fcn.00413500
test eax, eax
jne case.0x436670.3
jmp case.0x4391ed.0
cmp dword [esp + 0x18], 0
jle case.0x436670.3
cmp byte [edi + 1], 0
jbe 0x43777d
mov eax, dword [edi + 8]
mov cl, byte [eax]
test cl, cl
jne 0x437774
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x437768
cmp dword [ecx], 0
jne case.0x436670.3
cmp byte [eax + 1], 0
jne case.0x436670.3
jmp 0x43777d
cmp cl, 1
je case.0x436670.3
xor edx, edx
mov ecx, esi
call fcn.0042b180
test eax, eax
jne case.0x436670.3
jmp case.0x4391ed.0
cmp dword [esp + 0x18], 4
jle case.0x436670.3
cmp byte [edi + 1], 4
jbe 0x4377d3
mov eax, dword [edi + 8]
mov cl, byte [eax + 0x40]
test cl, cl
jne 0x4377ca
mov ecx, dword [eax + 0x48]
test ecx, ecx
je 0x4377be
cmp dword [ecx], 0
jne case.0x436670.3
cmp byte [eax + 0x41], 0
jne case.0x436670.3
jmp 0x4377d3
cmp cl, 1
je case.0x436670.3
mov ebx, dword [esp + 0x1c]
push 0x4e937c
push dword [ebx + 0x44]
call fcn.004c408e
add esp, 8
test eax, eax
je case.0x436670.3
push dword [ebx + 0x44]
push str.Parameter_5_invalid.
jmp 0x436d8a
mov dl, byte [ecx]
test dl, dl
je case.0x436670.3
cmp byte [edi + 1], 3
jbe 0x43783b
mov eax, dword [edi + 8]
mov cl, byte [eax + 0x30]
test cl, cl
jne 0x437832
mov ecx, dword [eax + 0x38]
test ecx, ecx
je 0x437826
cmp dword [ecx], 0
jne case.0x436670.3
cmp byte [eax + 0x31], 0
jne case.0x436670.3
jmp 0x43783b
cmp cl, 1
je case.0x436670.3
movzx ebx, dl
test ebx, 0xffffff80
jne 0x437858
push 2
push ebx
call fcn.004c7451
add esp, 8
test eax, eax
je 0x437858
and ebx, 0xffffffdf
movsx eax, bl
push eax
push 0x4ec5bc
call fcn.004ca733
add esp, 8
jmp 0x4384d6
cmp byte [edi + 1], 0
jbe 0x4378a1
mov eax, dword [edi + 8]
mov cl, byte [eax]
test cl, cl
jne 0x437898
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x43788d
cmp dword [ecx], 0
jne case.0x436670.3
cmp byte [eax + 1], 0
je 0x4378a1
jmp case.0x436670.3
cmp cl, 1
je case.0x436670.3
push str.Default
push esi
call fcn.004c408e
add esp, 8
test eax, eax
je case.0x436670.3
push 0x4ea868
push esi
call fcn.004c4262
add esp, 8
test eax, eax
je case.0x436670.3
push 0x4ea86c
jmp 0x4373c5
cmp dword [esp + 0x18], 1
jle case.0x436670.3
cmp byte [esi], 0
je case.0x436670.192
cmp byte [edi + 1], 0
jbe 0x43790f
mov eax, dword [edi + 8]
mov cl, byte [eax]
test cl, cl
jne 0x43790a
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x437902
cmp dword [ecx], 0
jne case.0x436670.192
cmp byte [eax + 1], 0
jne case.0x436670.192
jmp 0x43790f
cmp cl, 1
je case.0x436670.192
mov ecx, esi
call fcn.00429590
test eax, eax
je case.0x4391ed.0
cmp byte [ebp], 0
je case.0x436670.3
cmp byte [edi + 1], 1
jbe 0x43795d
mov eax, dword [edi + 8]
mov cl, byte [eax + 0x10]
test cl, cl
jne 0x437954
mov ecx, dword [eax + 0x18]
test ecx, ecx
je 0x437948
cmp dword [ecx], 0
jne case.0x436670.3
cmp byte [eax + 0x11], 0
jne case.0x436670.3
jmp 0x43795d
cmp cl, 1
je case.0x436670.3
push 0
push 0
mov edx, 2
mov ecx, ebp
call fcn.004293a0
add esp, 8
test eax, eax
jne case.0x436670.3
push ebp
push str.Parameter_2_invalid.
jmp 0x436d8a
cmp byte [esi], 0
je case.0x436670.3
cmp byte [edi + 1], 0
jbe 0x4379c0
mov eax, dword [edi + 8]
mov cl, byte [eax]
test cl, cl
jne 0x4379b7
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x4379ab
cmp dword [ecx], 0
jne case.0x436670.3
cmp byte [eax + 1], 0
jne case.0x436670.3
jmp 0x4379c0
cmp cl, 1
je case.0x436670.3
push 0
push 0
mov edx, 2
mov ecx, esi
call fcn.004293a0
add esp, 8
test eax, eax
jne case.0x436670.3
jmp case.0x4391ed.0
cmp dl, 0xa0
jne 0x437a3b
cmp dword [esp + 0x18], 0
jle 0x437a3b
cmp byte [edi + 1], 0
jbe 0x437a14
mov eax, dword [edi + 8]
mov cl, byte [eax]
test cl, cl
jne 0x437a0f
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x437a07
cmp dword [ecx], 0
jne 0x437a3b
cmp byte [eax + 1], 0
jne 0x437a3b
jmp 0x437a14
cmp cl, 1
je 0x437a3b
mov ecx, esi
call fcn.00428cb0
movsd xmm1, qword [0x4f14a0]
comisd xmm1, xmm0
ja case.0x4391ed.0
comisd xmm0, xmmword [0x4f1420]
ja case.0x4391ed.0
cmp byte [ebp], 0
je 0x437a7b
cmp byte [edi + 1], 1
jbe 0x437a6a
mov eax, dword [edi + 8]
mov cl, byte [eax + 0x10]
test cl, cl
jne 0x437a65
mov ecx, dword [eax + 0x18]
test ecx, ecx
je 0x437a5d
cmp dword [ecx], 0
jne 0x437a7b
cmp byte [eax + 0x11], 0
jne 0x437a7b
jmp 0x437a6a
cmp cl, 1
je 0x437a7b
xor edx, edx
mov ecx, ebp
call fcn.00429670
test eax, eax
je case.0x439046.0
cmp byte [ebx], 0
je case.0x436670.3
cmp byte [edi + 1], 2
jbe 0x437ab9
mov eax, dword [edi + 8]
mov cl, byte [eax + 0x20]
test cl, cl
jne 0x437ab0
mov ecx, dword [eax + 0x28]
test ecx, ecx
je 0x437aa4
cmp dword [ecx], 0
jne case.0x436670.3
cmp byte [eax + 0x21], 0
jne case.0x436670.3
jmp 0x437ab9
cmp cl, 1
je case.0x436670.3
mov ecx, ebx
call fcn.004298d0
cmp eax, 0xffffffff
jne case.0x436670.3
push ebx
push str.Parameter_3_invalid.
jmp 0x436d8a
cmp dword [esp + 0x18], 0
jle case.0x436670.3
cmp byte [edi + 1], 0
jbe 0x437b12
mov eax, dword [edi + 8]
mov cl, byte [eax]
test cl, cl
jne 0x437b09
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x437afe
cmp dword [ecx], 0
jne case.0x436670.3
cmp byte [eax + 1], 0
je 0x437b12
jmp case.0x436670.3
cmp cl, 1
je case.0x436670.3
mov ecx, esi
call fcn.00428cb0
movsd xmm1, qword [0x4f14a0]
comisd xmm1, xmm0
ja case.0x4391ed.0
comisd xmm0, xmmword [0x4f1420]
jbe case.0x436670.3
jmp case.0x4391ed.0
cmp byte [ebp], 0
je case.0x436670.3
cmp byte [edi + 1], 1
jbe 0x437b7d
mov eax, dword [edi + 8]
mov cl, byte [eax + 0x10]
test cl, cl
jne 0x437b74
mov ecx, dword [eax + 0x18]
test ecx, ecx
je 0x437b68
cmp dword [ecx], 0
jne case.0x436670.3
cmp byte [eax + 0x11], 0
jne case.0x436670.3
jmp 0x437b7d
cmp cl, 1
je case.0x436670.3
push str.wait
push ebp
call fcn.004c408e
add esp, 8
test eax, eax
je case.0x436670.3
push 0x4e37f8
push ebp
call fcn.004c408e
add esp, 8
test eax, eax
je case.0x436670.3
push ebp
push str.Parameter_2_invalid.
jmp 0x436d8a
cmp byte [ebx], 0
je 0x437cd8
cmp byte [ecx], 0
je 0x437cd8
mov ecx, dword [esp + 0x18]
cmp ecx, 4
jle 0x437cd8
mov ebx, dword [esp + 0x1c]
mov eax, dword [ebx + 0x44]
cmp byte [eax], 0
je 0x437cd8
cmp ecx, 5
jle 0x437cd8
mov eax, dword [ebx + 0x54]
cmp byte [eax], 0
je 0x437cd8
cmp ecx, 6
jle 0x437cd8
mov eax, dword [ebx + 0x64]
cmp byte [eax], 0
je 0x437cd8
cmp dl, 0x97
je case.0x436670.3
cmp ecx, 7
jle case.0x436670.3
mov esi, dword [ebx + 0x74]
mov al, byte [esi]
test al, al
je case.0x436670.3
cmp byte [edi + 1], 7
jbe 0x437c61
mov ecx, dword [edi + 8]
mov dl, byte [ecx + 0x70]
test dl, dl
jne 0x437c58
mov edx, dword [ecx + 0x78]
test edx, edx
je 0x437c4c
cmp dword [edx], 0
jne case.0x436670.3
cmp byte [ecx + 0x71], 0
jne case.0x436670.3
jmp 0x437c61
cmp dl, 1
je case.0x436670.3
mov ecx, esi
cmp al, 0x20
je 0x437c6b
cmp al, 9
jne 0x437c71
mov al, byte [ecx + 1]
inc ecx
jmp 0x437c63
test al, al
je 0x437cb3
cmp al, 0x2d
je 0x437c7d
cmp al, 0x2b
jne 0x437c84
lea eax, [ecx + 1]
mov ecx, eax
mov al, byte [eax]
cmp al, 0x30
jne 0x437cb3
mov al, byte [ecx + 1]
cmp al, 0x78
je 0x437c93
cmp al, 0x58
jne 0x437cb3
movsx eax, byte [ecx + 2]
push eax
call fcn.004c4410
add esp, 4
test eax, eax
je 0x437cb3
push 0x10
push 0
push esi
call fcn.004c4d25
add esp, 0xc
jmp 0x437cbc
push esi
call fcn.004c4df6
add esp, 4
test eax, eax
js 0x437ccb
cmp eax, 0xff
jle case.0x436670.3
push dword [ebx + 0x74]
push str.Parameter_8_invalid.
jmp 0x436d8a
push 0x4e3371
push str.Parameters_3_through_7_must_not_be_blank.
jmp 0x436d8a
cmp byte [esi], 0
je 0x437d1b
cmp byte [edi + 1], 0
jbe 0x437d14
mov eax, dword [edi + 8]
mov cl, byte [eax]
test cl, cl
jne 0x437d0f
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x437d07
cmp dword [ecx], 0
jne 0x437d1b
cmp byte [eax + 1], 0
jne 0x437d1b
jmp 0x437d14
cmp cl, 1
je 0x437d1b
mov ecx, esi
call fcn.0042b670
cmp byte [ebp], 0
je case.0x436670.3
cmp byte [edi + 1], 1
jbe 0x437d59
mov eax, dword [edi + 8]
mov cl, byte [eax + 0x10]
test cl, cl
jne 0x437d50
mov ecx, dword [eax + 0x18]
test ecx, ecx
je 0x437d45
cmp dword [ecx], 0
jne case.0x436670.3
cmp byte [eax + 0x11], 0
je 0x437d59
jmp case.0x436670.3
cmp cl, 1
je case.0x436670.3
push str.Screen
push ebp
call fcn.004c408e
add esp, 8
test eax, eax
je case.0x436670.3
push str.Relative
push ebp
call fcn.004c408e
add esp, 8
test eax, eax
je case.0x436670.3
push str.Window
push ebp
call fcn.004c408e
add esp, 8
test eax, eax
je case.0x436670.3
push str.Client
push ebp
call fcn.004c408e
add esp, 8
jmp case.0x436670.3
mov al, byte [esi]
test al, al
je case.0x436670.3
cmp byte [edi + 1], 0
jbe 0x437deb
mov ecx, dword [edi + 8]
mov dl, byte [ecx]
test dl, dl
jne 0x437de2
mov edx, dword [ecx + 8]
test edx, edx
je 0x437dd7
cmp dword [edx], 0
jne case.0x436670.3
cmp byte [ecx + 1], 0
je 0x437deb
jmp case.0x436670.3
cmp dl, 1
je case.0x436670.3
mov ecx, esi
nop dword [eax]
cmp al, 0x20
je 0x437df8
cmp al, 9
jne 0x437dfe
mov al, byte [ecx + 1]
inc ecx
jmp 0x437df0
test al, al
je 0x437e40
cmp al, 0x2d
je 0x437e0a
cmp al, 0x2b
jne 0x437e11
lea eax, [ecx + 1]
mov ecx, eax
mov al, byte [eax]
cmp al, 0x30
jne 0x437e40
mov al, byte [ecx + 1]
cmp al, 0x78
je 0x437e20
cmp al, 0x58
jne 0x437e40
movsx eax, byte [ecx + 2]
push eax
call fcn.004c4410
add esp, 4
test eax, eax
je 0x437e40
push 0x10
push 0
push esi
call fcn.004c4d25
add esp, 0xc
jmp 0x437e49
push esi
call fcn.004c4df6
add esp, 4
test eax, eax
js case.0x4391ed.0
cmp eax, 0x64
jle case.0x436670.3
jmp case.0x4391ed.0
mov al, byte [ebx]
test al, al
je 0x437f0a
cmp byte [edi + 1], 2
jbe 0x437e9e
mov ecx, dword [edi + 8]
mov dl, byte [ecx + 0x20]
test dl, dl
jne 0x437e95
mov edx, dword [ecx + 0x28]
test edx, edx
je 0x437e89
cmp dword [edx], 0
jne 0x437f0a
cmp byte [ecx + 0x21], 0
jne 0x437f0a
jmp 0x437e9e
cmp dl, 1
je 0x437f0a
mov ecx, ebx
cmp al, 0x20
je 0x437ea8
cmp al, 9
jne 0x437eae
mov al, byte [ecx + 1]
inc ecx
jmp 0x437ea0
test al, al
je 0x437ef0
cmp al, 0x2d
je 0x437eba
cmp al, 0x2b
jne 0x437ec1
lea eax, [ecx + 1]
mov ecx, eax
mov al, byte [eax]
cmp al, 0x30
jne 0x437ef0
mov al, byte [ecx + 1]
cmp al, 0x78
je 0x437ed0
cmp al, 0x58
jne 0x437ef0
movsx eax, byte [ecx + 2]
push eax
call fcn.004c4410
add esp, 4
test eax, eax
je 0x437ef0
push 0x10
push 0
push ebx
call fcn.004c4d25
add esp, 0xc
jmp 0x437ef9
push ebx
call fcn.004c4df6
add esp, 4
test eax, eax
js 0x436b40
cmp eax, 0x64
jg 0x436b40
mov ebp, dword [esp + 0x24]
mov dl, byte [ebp]
test dl, dl
je 0x437f64
cmp byte [edi + 1], 3
jbe 0x437f3e
mov eax, dword [edi + 8]
mov cl, byte [eax + 0x30]
test cl, cl
jne 0x437f39
mov ecx, dword [eax + 0x38]
test ecx, ecx
je 0x437f31
cmp dword [ecx], 0
jne 0x437f64
cmp byte [eax + 0x31], 0
jne 0x437f64
jmp 0x437f3e
cmp cl, 1
je 0x437f64
movzx ebx, dl
test ebx, 0xffffff80
jne 0x437f5b
push 2
push ebx
call fcn.004c7451
add esp, 8
test eax, eax
je 0x437f5b
and ebx, 0xffffffdf
cmp bl, 0x52
jne 0x436c00
cmp byte [esi], 0
mov eax, dword [esp + 0x2c]
mov al, byte [eax]
jne 0x437f82
test al, al
je case.0x436670.3
push esi
push str.X__Y_must_be_either_both_absent_or_both_present.
jmp 0x436d8a
test al, al
jne case.0x436670.3
push esi
push str.X__Y_must_be_either_both_absent_or_both_present.
jmp 0x436d8a
cmp dword [esp + 0x18], 4
jle 0x438063
mov edx, dword [esp + 0x1c]
mov ebx, dword [edx + 0x44]
mov al, byte [ebx]
test al, al
je 0x437fdf
cmp byte [edi + 1], 4
jbe 0x4380ab
mov ecx, dword [edi + 8]
mov dl, byte [ecx + 0x40]
test dl, dl
jne 0x4380a2
mov edx, dword [ecx + 0x48]
test edx, edx
je 0x437fd1
cmp dword [edx], 0
jne 0x437fdb
cmp byte [ecx + 0x41], 0
je 0x4380ab
mov edx, dword [esp + 0x1c]
cmp dword [esp + 0x18], 5
jle 0x438063
mov ecx, dword [edx + 0x54]
mov bl, byte [ecx]
test bl, bl
je 0x438025
cmp byte [edi + 1], 5
jbe 0x438130
mov eax, dword [edi + 8]
mov dl, byte [eax + 0x50]
test dl, dl
jne 0x438127
mov edx, dword [eax + 0x58]
test edx, edx
je 0x438017
cmp dword [edx], 0
jne 0x438021
cmp byte [eax + 0x51], 0
je 0x438130
mov edx, dword [esp + 0x1c]
cmp dword [esp + 0x18], 6
jle 0x438063
mov eax, dword [edx + 0x64]
mov dl, byte [eax]
test dl, dl
je 0x438063
cmp byte [edi + 1], 6
jbe 0x438191
mov eax, dword [edi + 8]
mov cl, byte [eax + 0x60]
test cl, cl
jne 0x438188
mov ecx, dword [eax + 0x68]
test ecx, ecx
je 0x438059
cmp dword [ecx], 0
jne 0x438063
cmp byte [eax + 0x61], 0
je 0x438191
cmp byte [esi], 0
je 0x4381e3
cmp byte [edi + 1], 0
jbe 0x4381cd
mov eax, dword [edi + 8]
mov cl, byte [eax]
test cl, cl
jne 0x4381c8
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x438093
cmp dword [ecx], 0
jne 0x4381e3
cmp byte [eax + 1], 0
jne 0x4381e3
jmp 0x4381cd
cmp dl, 1
je 0x437fdb
mov ecx, ebx
nop dword [eax]
cmp al, 0x20
je 0x4380b8
cmp al, 9
jne 0x4380be
mov al, byte [ecx + 1]
inc ecx
jmp 0x4380b0
test al, al
je 0x438100
cmp al, 0x2d
je 0x4380ca
cmp al, 0x2b
jne 0x4380d1
lea eax, [ecx + 1]
mov ecx, eax
mov al, byte [eax]
cmp al, 0x30
jne 0x438100
mov al, byte [ecx + 1]
cmp al, 0x78
je 0x4380e0
cmp al, 0x58
jne 0x438100
movsx eax, byte [ecx + 2]
push eax
call fcn.004c4410
add esp, 4
test eax, eax
je 0x438100
push 0x10
push 0
push ebx
call fcn.004c4d25
add esp, 0xc
jmp 0x438109
push ebx
call fcn.004c4df6
add esp, 4
test eax, eax
js 0x438116
cmp eax, 0x64
jle 0x437fdb
mov eax, dword [esp + 0x1c]
push dword [eax + 0x44]
push str.Parameter_5_invalid.
jmp 0x436d8a
cmp dl, 1
je 0x438021
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x438133
sub ecx, edx
cmp ecx, 1
ja 0x438177
movzx ebx, bl
test ebx, 0xffffff80
jne 0x43815e
push 2
push ebx
call fcn.004c7451
add esp, 8
test eax, eax
je 0x43815e
and ebx, 0xffffffdf
movsx eax, bl
push eax
push 0x4ec640
call fcn.004ca733
add esp, 8
test eax, eax
jne 0x438021
mov eax, dword [esp + 0x1c]
push dword [eax + 0x54]
push str.Parameter_6_invalid.
jmp 0x436d8a
cmp cl, 1
je 0x438063
movzx ebx, dl
test ebx, 0xffffff80
jne 0x4381ae
push 2
push ebx
call fcn.004c7451
add esp, 8
test eax, eax
je 0x4381ae
and ebx, 0xffffffdf
cmp bl, 0x52
je 0x438063
mov eax, dword [esp + 0x1c]
push dword [eax + 0x64]
push str.Parameter_7_invalid.
jmp 0x436d8a
cmp cl, 1
je 0x4381e3
push 0
mov dl, 1
mov ecx, esi
call fcn.004186e0
add esp, 4
test eax, eax
je case.0x4391ed.0
mov eax, dword [esp + 0x30]
cmp byte [ebp], 0
mov al, byte [eax]
jne 0x438202
test al, al
je case.0x436670.3
push ebp
push str.X__Y_must_be_either_both_absent_or_both_present.
jmp 0x436d8a
test al, al
jne case.0x436670.3
push ebp
push str.X__Y_must_be_either_both_absent_or_both_present.
jmp 0x436d8a
cmp byte [ecx], 0
je 0x438465
mov ebx, dword [esp + 0x18]
cmp ebx, 4
jle 0x438465
mov ecx, dword [esp + 0x1c]
mov eax, dword [ecx + 0x44]
cmp byte [eax], 0
je 0x438465
cmp ebx, 5
jle 0x438355
mov ebx, dword [ecx + 0x54]
mov al, byte [ebx]
test al, al
je 0x4382f6
cmp byte [edi + 1], 5
jbe 0x438286
mov ecx, dword [edi + 8]
mov dl, byte [ecx + 0x50]
test dl, dl
jne 0x43827d
mov edx, dword [ecx + 0x58]
test edx, edx
je 0x438271
cmp dword [edx], 0
jne 0x4382f2
cmp byte [ecx + 0x51], 0
jne 0x4382f2
jmp 0x438286
cmp dl, 1
je 0x4382f2
mov ecx, ebx
cmp al, 0x20
je 0x438290
cmp al, 9
jne 0x438296
mov al, byte [ecx + 1]
inc ecx
jmp 0x438288
test al, al
je 0x4382d8
cmp al, 0x2d
je 0x4382a2
cmp al, 0x2b
jne 0x4382a9
lea eax, [ecx + 1]
mov ecx, eax
mov al, byte [eax]
cmp al, 0x30
jne 0x4382d8
mov al, byte [ecx + 1]
cmp al, 0x78
je 0x4382b8
cmp al, 0x58
jne 0x4382d8
movsx eax, byte [ecx + 2]
push eax
call fcn.004c4410
add esp, 4
test eax, eax
je 0x4382d8
push 0x10
push 0
push ebx
call fcn.004c4d25
add esp, 0xc
jmp 0x4382e1
push ebx
call fcn.004c4df6
add esp, 4
test eax, eax
js 0x438177
cmp eax, 0x64
jg 0x438177
mov ecx, dword [esp + 0x1c]
cmp dword [esp + 0x18], 6
jle 0x438355
mov eax, dword [ecx + 0x64]
mov dl, byte [eax]
test dl, dl
je 0x438355
cmp byte [edi + 1], 6
jbe 0x43832f
mov eax, dword [edi + 8]
mov cl, byte [eax + 0x60]
test cl, cl
jne 0x43832a
mov ecx, dword [eax + 0x68]
test ecx, ecx
je 0x438322
cmp dword [ecx], 0
jne 0x438355
cmp byte [eax + 0x61], 0
jne 0x438355
jmp 0x43832f
cmp cl, 1
je 0x438355
movzx ebx, dl
test ebx, 0xffffff80
jne 0x43834c
push 2
push ebx
call fcn.004c7451
add esp, 8
test eax, eax
je 0x43834c
and ebx, 0xffffffdf
cmp bl, 0x52
jne 0x4381b7
cmp byte [edi + 1], 0
jbe 0x438389
mov eax, dword [edi + 8]
mov cl, byte [eax]
test cl, cl
jne 0x438380
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x438374
cmp dword [ecx], 0
jne 0x438432
cmp byte [eax + 1], 0
jne 0x438432
jmp 0x438389
cmp cl, 1
je 0x438432
cmp byte [esi], 0
je 0x438432
push str.LEFT
push esi
call fcn.004c408e
add esp, 8
test eax, eax
je 0x438432
push 0x4e937c
push esi
call fcn.004c408e
add esp, 8
test eax, eax
je 0x438432
push str.RIGHT
push esi
call fcn.004c408e
add esp, 8
test eax, eax
je 0x438432
push 0x4e9388
push esi
call fcn.004c408e
add esp, 8
test eax, eax
je 0x438432
push str.MIDDLE
push esi
call fcn.004c408e
add esp, 8
test eax, eax
je 0x438432
push 0x4e9394
push esi
call fcn.004c408e
add esp, 8
test eax, eax
je 0x438432
push 0x4e9398
push esi
call fcn.004c408e
add esp, 8
test eax, eax
je 0x438432
push 0x4e939c
push esi
call fcn.004c408e
add esp, 8
test eax, eax
jne case.0x4391ed.0
cmp byte [ebp], 0
mov eax, dword [esp + 0x30]
mov al, byte [eax]
jne 0x43844d
test al, al
je 0x438455
push ebp
push str.X__Y_must_be_either_both_absent_or_both_present.
jmp 0x436d8a
test al, al
je 0x43820a
mov eax, dword [esp + 0x1c]
mov ebp, dword [esp + 0x24]
mov eax, dword [eax + 0x44]
jmp 0x4381e7
push 0x4e3371
push str.Parameter_4_and_5_required.
jmp 0x436d8a
cmp byte [ebp], 0
jne case.0x436670.3
push 0x4e3371
push str.Parameter_2_required
jmp 0x436d8a
cmp byte [ecx], 0
je case.0x436670.3
cmp byte [edi + 1], 3
jbe 0x4384ca
mov eax, dword [edi + 8]
mov dl, byte [eax + 0x30]
test dl, dl
jne 0x4384c1
mov edx, dword [eax + 0x38]
test edx, edx
je 0x4384b6
cmp dword [edx], 0
jne case.0x436670.3
cmp byte [eax + 0x31], 0
je 0x4384ca
jmp case.0x436670.3
cmp dl, 1
je case.0x436670.3
push 0
mov dl, 1
call fcn.004186e0
add esp, 4
test eax, eax
jne case.0x436670.3
mov ebp, dword [esp + 0x24]
push ebp
push str.Parameter_4_invalid.
jmp 0x436d8a
mov al, byte [ebx]
test al, al
je 0x438603
cmp byte [edi + 1], 2
jbe 0x43852c
mov ecx, dword [edi + 8]
mov dl, byte [ecx + 0x20]
test dl, dl
jne 0x438523
mov edx, dword [ecx + 0x28]
test edx, edx
je 0x438517
cmp dword [edx], 0
jne 0x438603
cmp byte [ecx + 0x21], 0
jne 0x438603
jmp 0x43852c
cmp dl, 1
je 0x438603
mov ecx, ebx
nop
cmp al, 0x20
je 0x438538
cmp al, 9
jne 0x43853e
mov al, byte [ecx + 1]
inc ecx
jmp 0x438530
test al, al
je 0x438580
cmp al, 0x2d
je 0x43854a
cmp al, 0x2b
jne 0x438551
lea eax, [ecx + 1]
mov ecx, eax
mov al, byte [eax]
cmp al, 0x30
jne 0x438580
mov al, byte [ecx + 1]
cmp al, 0x78
je 0x438560
cmp al, 0x58
jne 0x438580
movsx eax, byte [ecx + 2]
push eax
call fcn.004c4410
add esp, 4
test eax, eax
je 0x438580
push 0x10
push 0
push ebx
call fcn.004c4d25
add esp, 0xc
jmp 0x438589
push ebx
call fcn.004c4df6
add esp, 4
push 0
push 0
push 1
xor edx, edx
mov ecx, ebx
mov ebp, eax
call fcn.004ab8c0
add esp, 0xc
test eax, eax
setne al
cmp byte [esp + 0x13], 0xaf
jne 0x4385f2
test al, al
jne 0x4385de
movzx eax, byte [ebx]
mov dword [esp + 0x20], eax
test eax, 0xffffff80
jne 0x4385d1
push 2
push eax
call fcn.004c7451
add esp, 8
test eax, eax
mov eax, dword [esp + 0x20]
je 0x4385d1
and eax, 0xffffffdf
cmp al, 0x52
jne 0x436b40
jmp case.0x436670.3
cmp ebp, 2
jle case.0x436670.3
push ebx
push str.Parameter_3_invalid.
jmp 0x436d8a
test al, al
je 0x436b40
cmp ebp, 1
jg 0x436b40
mov bl, byte [esp + 0x13]
cmp bl, 0xab
jne 0x439b8f
cmp dword [esp + 0x18], 0
jle 0x439b8f
cmp byte [edi + 1], 0
jbe 0x439b8f
mov eax, dword [edi + 8]
mov cl, byte [eax]
test cl, cl
jne 0x438645
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x43863a
cmp dword [ecx], 0
jne 0x43864e
cmp byte [eax + 1], 0
jne 0x43864e
jmp 0x439b8f
cmp cl, 1
jne 0x439b8f
push esi
push str.Must_not_contain_variables.
jmp 0x436d8a
mov al, byte [ebp]
test al, al
je case.0x436670.3
cmp byte [edi + 1], 1
jbe 0x438698
mov ecx, dword [edi + 8]
mov dl, byte [ecx + 0x10]
test dl, dl
jne 0x43868f
mov edx, dword [ecx + 0x18]
test edx, edx
je 0x438684
cmp dword [edx], 0
jne case.0x436670.3
cmp byte [ecx + 0x11], 0
je 0x438698
jmp case.0x436670.3
cmp dl, 1
je case.0x436670.3
mov ecx, ebp
nop word [eax + eax]
cmp al, 0x20
je 0x4386a8
cmp al, 9
jne 0x4386ae
mov al, byte [ecx + 1]
inc ecx
jmp 0x4386a0
test al, al
je 0x4386f0
cmp al, 0x2d
je 0x4386ba
cmp al, 0x2b
jne 0x4386c1
lea eax, [ecx + 1]
mov ecx, eax
mov al, byte [eax]
cmp al, 0x30
jne 0x4386f0
mov al, byte [ecx + 1]
cmp al, 0x78
je 0x4386d0
cmp al, 0x58
jne 0x4386f0
movsx eax, byte [ecx + 2]
push eax
call fcn.004c4410
add esp, 4
test eax, eax
je 0x4386f0
push 0x10
push 0
push ebp
call fcn.004c4d25
add esp, 0xc
jmp 0x4386f9
push ebp
call fcn.004c4df6
add esp, 4
push 0
push 0
push 1
xor edx, edx
mov ecx, ebp
mov esi, eax
call fcn.004ab8c0
add esp, 0xc
test eax, eax
je case.0x439046.0
cmp esi, 1
jle case.0x436670.3
push ebp
push str.Parameter_2_invalid.
jmp 0x436d8a
mov al, byte [esi]
test al, al
je 0x4387a5
cmp byte [edi + 1], 0
jbe 0x43875b
mov ecx, dword [edi + 8]
mov dl, byte [ecx]
test dl, dl
jne 0x438756
mov edx, dword [ecx + 8]
test edx, edx
je 0x43874e
cmp dword [edx], 0
jne 0x4387a5
cmp byte [ecx + 1], 0
jne 0x4387a5
jmp 0x43875b
cmp dl, 1
je 0x4387a5
mov ebp, esi
nop dword [eax]
movzx eax, al
mov dword [esp + 0x20], eax
test eax, 0xffffff80
jne 0x438784
push 2
push eax
call fcn.004c7451
add esp, 8
test eax, eax
mov eax, dword [esp + 0x20]
je 0x438784
and eax, 0xffffffdf
movsx eax, al
push eax
push str._RASHNOT
call fcn.004ca733
add esp, 8
test eax, eax
je case.0x4391ed.0
mov al, byte [ebp + 1]
inc ebp
test al, al
jne 0x438760
cmp dword [esp + 0x18], 2
jle 0x4387e4
cmp byte [edi + 1], 2
jbe 0x4387d5
mov eax, dword [edi + 8]
mov cl, byte [eax + 0x20]
test cl, cl
jne 0x4387d0
mov ecx, dword [eax + 0x28]
test ecx, ecx
je 0x4387c8
cmp dword [ecx], 0
jne 0x4387e4
cmp byte [eax + 0x21], 0
jne 0x4387e4
jmp 0x4387d5
cmp cl, 1
je 0x4387e4
mov ecx, ebx
call fcn.0042b450
test eax, eax
je 0x436b40
mov ebp, dword [esp + 0x24]
mov dl, byte [ebp]
test dl, dl
je case.0x436670.3
cmp byte [edi + 1], 3
jbe 0x438828
mov eax, dword [edi + 8]
mov cl, byte [eax + 0x30]
test cl, cl
jne 0x43881f
mov ecx, dword [eax + 0x38]
test ecx, ecx
je 0x438813
cmp dword [ecx], 0
jne case.0x436670.3
cmp byte [eax + 0x31], 0
jne case.0x436670.3
jmp 0x438828
cmp cl, 1
je case.0x436670.3
mov ecx, ebp
lea esi, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x438830
sub ecx, esi
cmp ecx, 1
ja 0x436c00
cmp dl, 0x30
je case.0x436670.3
cmp dl, 0x31
je case.0x436670.3
push ebp
push str.Parameter_4_invalid.
jmp 0x436d8a
mov dl, byte [ebx]
test dl, dl
je case.0x436670.3
cmp byte [edi + 1], 2
jbe 0x43889d
mov eax, dword [edi + 8]
mov cl, byte [eax + 0x20]
test cl, cl
jne 0x438894
mov ecx, dword [eax + 0x28]
test ecx, ecx
je 0x438889
cmp dword [ecx], 0
jne case.0x436670.3
cmp byte [eax + 0x21], 0
je 0x43889d
jmp case.0x436670.3
cmp cl, 1
je case.0x436670.3
mov ecx, ebx
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4388a2
sub ecx, esi
cmp ecx, 1
ja 0x436b40
movzx eax, dl
mov dword [esp + 0x20], eax
test eax, 0xffffff80
jne 0x4388d8
push 2
push eax
call fcn.004c7451
add esp, 8
test eax, eax
mov eax, dword [esp + 0x20]
je 0x4388d8
and eax, 0xffffffdf
movsx eax, al
push eax
push 0x4ec6bc
jmp 0x439668
cmp byte [esi], 0
je 0x43892b
cmp byte [edi + 1], 0
jbe 0x438913
mov eax, dword [edi + 8]
mov cl, byte [eax]
test cl, cl
jne 0x43890e
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x438906
cmp dword [ecx], 0
jne 0x43892b
cmp byte [eax + 1], 0
jne 0x43892b
jmp 0x438913
cmp cl, 1
je 0x43892b
push 1
lea edx, [esp + 0x4c]
mov ecx, esi
call fcn.004ab550
add esp, 4
test eax, eax
je case.0x4391ed.0
mov dl, byte [ebx]
test dl, dl
je 0x4389b2
cmp byte [edi + 1], 2
jbe 0x43895e
mov eax, dword [edi + 8]
mov cl, byte [eax + 0x20]
test cl, cl
jne 0x438959
mov ecx, dword [eax + 0x28]
test ecx, ecx
je 0x438951
cmp dword [ecx], 0
jne 0x4389b2
cmp byte [eax + 0x21], 0
jne 0x4389b2
jmp 0x43895e
cmp cl, 1
je 0x4389b2
mov ecx, ebx
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x438963
sub ecx, esi
cmp ecx, 1
ja 0x436b40
movzx eax, dl
mov dword [esp + 0x20], eax
test eax, 0xffffff80
jne 0x438999
push 2
push eax
call fcn.004c7451
add esp, 8
test eax, eax
mov eax, dword [esp + 0x20]
je 0x438999
and eax, 0xffffffdf
movsx eax, al
push eax
push 0x4ec6bc
call fcn.004ca733
add esp, 8
test eax, eax
je 0x436b40
mov ebx, dword [esp + 0x18]
cmp ebx, 3
jle 0x4389f7
cmp byte [edi + 1], 3
jbe 0x4389e4
mov eax, dword [edi + 8]
mov cl, byte [eax + 0x30]
test cl, cl
jne 0x4389df
mov ecx, dword [eax + 0x38]
test ecx, ecx
je 0x4389d7
cmp dword [ecx], 0
jne 0x4389f7
cmp byte [eax + 0x31], 0
jne 0x4389f7
jmp 0x4389e4
cmp cl, 1
je 0x4389f7
mov ebp, dword [esp + 0x24]
mov ecx, ebp
call fcn.0042b450
test eax, eax
je 0x436c00
cmp ebx, 4
jle case.0x436670.3
mov eax, dword [esp + 0x1c]
mov esi, dword [eax + 0x44]
mov dl, byte [esi]
test dl, dl
je case.0x436670.3
cmp byte [edi + 1], 4
jbe 0x438a46
mov eax, dword [edi + 8]
mov cl, byte [eax + 0x40]
test cl, cl
jne 0x438a3d
mov ecx, dword [eax + 0x48]
test ecx, ecx
je 0x438a31
cmp dword [ecx], 0
jne case.0x436670.3
cmp byte [eax + 0x41], 0
jne case.0x436670.3
jmp 0x438a46
cmp cl, 1
je case.0x436670.3
mov ecx, esi
lea ebx, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x438a50
sub ecx, ebx
cmp ecx, 1
ja 0x438a70
cmp dl, 0x30
je case.0x436670.3
cmp dl, 0x31
je case.0x436670.3
push esi
push str.Parameter_5_invalid.
jmp 0x436d8a
mov dl, byte [ebx]
test dl, dl
je case.0x436670.3
cmp byte [edi + 1], 2
jbe 0x438ab9
mov eax, dword [edi + 8]
mov cl, byte [eax + 0x20]
test cl, cl
jne 0x438ab0
mov ecx, dword [eax + 0x28]
test ecx, ecx
je 0x438aa5
cmp dword [ecx], 0
jne case.0x436670.3
cmp byte [eax + 0x21], 0
je 0x438ab9
jmp case.0x436670.3
cmp cl, 1
je case.0x436670.3
mov ecx, ebx
lea esi, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x438ac0
sub ecx, esi
cmp ecx, 1
ja 0x436b40
movzx eax, dl
mov dword [esp + 0x20], eax
test eax, 0xffffff80
jne 0x438af6
push 2
push eax
call fcn.004c7451
add esp, 8
test eax, eax
mov eax, dword [esp + 0x20]
je 0x438af6
and eax, 0xffffffdf
movsx eax, al
push eax
push 0x4ec6c0
jmp 0x439668
cmp dword [esp + 0x18], 0
jle case.0x436670.3
cmp byte [edi + 1], 0
jbe 0x438b43
mov eax, dword [edi + 8]
mov cl, byte [eax]
test cl, cl
jne 0x438b3a
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x438b2e
cmp dword [ecx], 0
jne case.0x436670.3
cmp byte [eax + 1], 0
jne case.0x436670.3
jmp 0x438b43
cmp cl, 1
je case.0x436670.3
mov ecx, esi
call fcn.00429ad0
test eax, eax
jne case.0x436670.3
jmp case.0x4391ed.0
cmp dword [esp + 0x18], 1
jle case.0x436670.3
cmp byte [edi + 1], 1
jbe 0x438b96
mov eax, dword [edi + 8]
mov cl, byte [eax + 0x10]
test cl, cl
jne 0x438b8d
mov ecx, dword [eax + 0x18]
test ecx, ecx
je 0x438b82
cmp dword [ecx], 0
jne case.0x436670.3
cmp byte [eax + 0x11], 0
je 0x438b96
jmp case.0x436670.3
cmp cl, 1
je case.0x436670.3
mov ecx, ebp
call fcn.00429c20
mov esi, eax
test esi, esi
je case.0x439046.0
cmp esi, 4
jne 0x438bfb
mov ecx, dword [edi + 8]
mov eax, dword [ecx + 4]
cmp byte [eax], 0
jne 0x438bfb
mov ecx, dword [ecx + 8]
mov al, byte [ecx + 0x17]
test al, al
jne 0x438bc7
mov eax, dword [ecx + 0xc]
mov al, byte [eax + 0x17]
cmp al, 2
jne 0x438be5
cmp dword [esp + 0x18], 3
jge case.0x436670.3
push 0x4e3371
push str.Parameter_3_must_not_be_blank_in_this_case.
jmp 0x436d8a
cmp dword [esp + 0x18], 2
jle case.0x436670.3
push ebx
push str.Parameter_3_must_be_blank_in_this_case.
jmp 0x436d8a
cmp byte [edi + 1], 2
jbe 0x438c41
mov eax, dword [edi + 8]
mov cl, byte [eax + 0x20]
test cl, cl
jne 0x438c3c
mov ecx, dword [eax + 0x28]
test ecx, ecx
je 0x438c17
cmp dword [ecx], 0
jne case.0x438c50.3
cmp byte [eax + 0x21], 0
je 0x438c41
mov ebp, 1
lea eax, [esi - 1]
cmp eax, 0x1a
ja case.default.0x438c35
movzx eax, byte [eax + 0x43a2a8]
jmp dword [eax*4 + 0x43a294]
cmp cl, 1
je case.0x438c50.3
lea eax, [esi - 2]
cmp eax, 0x19
ja case.0x438c50.3
movzx eax, byte [eax + 0x43a2d4]
jmp dword [eax*4 + 0x43a2c4]
push 0
push 0
mov ebp, 1
mov ecx, ebx
push 0
mov edx, ebp
call fcn.004ab8c0
add esp, 0xc
test eax, eax
jne 0x438c22
push ebx
push str.Parameter_3_must_be_an_integer_in_this_case.
jmp 0x436d8a
push 0
push 1
mov ebp, 1
mov ecx, ebx
push 0
mov edx, ebp
call fcn.004ab8c0
add esp, 0xc
test eax, eax
jne 0x438c22
push ebx
push str.Parameter_3_must_be_a_number_in_this_case.
jmp 0x436d8a
push 0
push 1
push 0
xor edx, edx
mov ecx, ebx
call fcn.004ab8c0
add esp, 0xc
test eax, eax
jne case.0x438c50.3
push ebx
push str.Parameter_3_must_be_a_positive_integer_in_this_case.
jmp 0x436d8a
mov ebp, dword [esp + 0x24]
cmp byte [ebp], 0
je 0x438d03
push ebp
push str.Parameter_4_must_be_blank_in_this_case.
jmp 0x436d8a
cmp byte [edi + 1], 3
jbe 0x438d50
mov eax, dword [edi + 8]
mov cl, byte [eax + 0x30]
test cl, cl
jne 0x438d4b
mov ecx, dword [eax + 0x38]
test ecx, ecx
je 0x438cf9
cmp dword [ecx], 0
jne case.default.0x438c35
cmp byte [eax + 0x31], 0
je 0x438d50
mov ebp, dword [esp + 0x24]
sub esi, 2
je 0x438ec9
sub esi, 4
jne case.0x436670.3
cmp byte [edi + 1], 3
jbe 0x438ea5
mov eax, dword [edi + 8]
mov cl, byte [eax + 0x30]
test cl, cl
jne 0x438e9c
mov ecx, dword [eax + 0x38]
test ecx, ecx
je 0x438d3c
cmp dword [ecx], esi
jne case.0x436670.3
cmp byte [eax + 0x31], 0
jne case.0x436670.3
jmp 0x438ea5
cmp cl, 1
je case.default.0x438c35
push 0
mov edx, ebp
mov ebp, dword [esp + 0x28]
push 0
push 0
mov ecx, ebp
call fcn.004ab8c0
add esp, 0xc
test eax, eax
jne 0x438d03
push ebp
push str.Parameter_4_must_be_an_integer_in_this_case.
jmp 0x436d8a
cmp byte [edi + 1], 3
jbe 0x438daa
mov eax, dword [edi + 8]
mov cl, byte [eax + 0x30]
test cl, cl
jne 0x438da1
mov ecx, dword [eax + 0x38]
test ecx, ecx
je 0x438d95
cmp dword [ecx], 0
jne case.default.0x438c35
cmp byte [eax + 0x31], 0
jne case.default.0x438c35
jmp 0x438daa
cmp cl, 1
je case.default.0x438c35
mov ebp, dword [esp + 0x24]
xor edx, edx
push 0
push 0
push 0
mov ecx, ebp
call fcn.004ab8c0
add esp, 0xc
test eax, eax
jne 0x438d03
push ebp
push str.Parameter_4_must_be_a_positive_integer_in_this_case.
jmp 0x436d8a
mov ebp, dword [esp + 0x24]
cmp byte [ebp], 0
je case.0x436670.3
cmp byte [edi + 1], 3
jbe 0x438e16
mov eax, dword [edi + 8]
mov cl, byte [eax + 0x30]
test cl, cl
jne 0x438e0d
mov ecx, dword [eax + 0x38]
test ecx, ecx
je 0x438e01
cmp dword [ecx], 0
jne case.0x436670.3
cmp byte [eax + 0x31], 0
jne case.0x436670.3
jmp 0x438e16
cmp cl, 1
je case.0x436670.3
push 0
push 0
push 0
mov edx, 1
mov ecx, ebp
call fcn.004ab8c0
add esp, 0xc
test eax, eax
jne case.0x436670.3
push ebp
push str.Parameter_4_must_be_blank_or_an_integer_in_this_case.
jmp 0x436d8a
cmp byte [edi + 1], 3
jbe 0x438e73
mov eax, dword [edi + 8]
mov cl, byte [eax + 0x30]
test cl, cl
jne 0x438e6a
mov ecx, dword [eax + 0x38]
test ecx, ecx
je 0x438e5e
cmp dword [ecx], 0
jne case.default.0x438c35
cmp byte [eax + 0x31], 0
jne case.default.0x438c35
jmp 0x438e73
cmp cl, 1
je case.default.0x438c35
push 0
mov edx, ebp
mov ebp, dword [esp + 0x28]
push 1
push 0
mov ecx, ebp
call fcn.004ab8c0
add esp, 0xc
test eax, eax
jne 0x438d03
push ebp
push str.Parameter_4_must_be_a_number_in_this_case.
jmp 0x436d8a
cmp cl, 1
je case.0x436670.3
mov ecx, ebp
call fcn.00428cb0
ucomisd xmm0, qword [0x4f13b0]
lahf
test ah, 0x44
jp case.0x436670.3
push ebp
push str.Divide_by_zero
jmp 0x436d8a
cmp byte [edi + 1], 2
jbe 0x438efd
mov eax, dword [edi + 8]
mov cl, byte [eax + 0x20]
test cl, cl
jne 0x438ef4
mov ecx, dword [eax + 0x28]
test ecx, ecx
je 0x438ee9
cmp dword [ecx], 0
jne case.0x436670.3
cmp byte [eax + 0x21], 0
je 0x438efd
jmp case.0x436670.3
cmp cl, 1
je case.0x436670.3
mov ecx, ebx
nop
mov al, byte [ecx]
cmp al, 0x20
je 0x438f0a
cmp al, 9
jne 0x438f0d
inc ecx
jmp 0x438f00
test al, al
je 0x438f4f
cmp al, 0x2d
je 0x438f19
cmp al, 0x2b
jne 0x438f20
lea eax, [ecx + 1]
mov ecx, eax
mov al, byte [eax]
cmp al, 0x30
jne 0x438f4f
mov al, byte [ecx + 1]
cmp al, 0x78
je 0x438f2f
cmp al, 0x58
jne 0x438f4f
movsx eax, byte [ecx + 2]
push eax
call fcn.004c4410
add esp, 4
test eax, eax
je 0x438f4f
push 0x10
push 0
push ebx
call fcn.004c4d25
add esp, 0xc
jmp 0x438f58
push ebx
call fcn.004c4df6
add esp, 4
push 0
push 0
push 0
xor edx, edx
mov ecx, ebx
mov esi, eax
call fcn.004ab8c0
add esp, 0xc
test eax, eax
je 0x436b40
cmp esi, 0xff
jle case.0x436670.3
push ebx
push str.Parameter_3_invalid.
jmp 0x436d8a
cmp dword [esp + 0x18], 1
jle case.0x436670.3
cmp byte [edi + 1], 1
jbe 0x438fca
mov eax, dword [edi + 8]
mov cl, byte [eax + 0x10]
test cl, cl
jne 0x438fc1
mov ecx, dword [eax + 0x18]
test ecx, ecx
je 0x438fb6
cmp dword [ecx], 0
jne case.0x436670.3
cmp byte [eax + 0x11], 0
je 0x438fca
jmp case.0x436670.3
cmp cl, 1
je case.0x436670.3
mov ecx, ebp
call fcn.00429ee0
mov edx, eax
mov dword [esp + 0x20], edx
lea eax, [edx - 0x13]
cmp eax, 5
ja case.0x438fe6.20
movzx ecx, byte [eax + 0x43a2f8]
jmp dword [ecx*4 + 0x43a2f0]
cmp byte [edi + 1], 0
jbe 0x439015
mov eax, dword [edi + 8]
mov cl, byte [eax]
test cl, cl
jne 0x439010
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x439008
cmp dword [ecx], 0
jne case.0x438fe6.20
cmp byte [eax + 1], 0
jne case.0x438fe6.20
jmp 0x439015
cmp cl, 1
je case.0x438fe6.20
push str.tray
push esi
call fcn.004c408e
add esp, 8
test eax, eax
je 0x439032
push esi
push str.Supported_only_for_the_tray_menu
jmp 0x436d8a
mov edx, dword [esp + 0x20]
cmp edx, 0x18
ja case.0x436670.3
movzx eax, byte [edx + 0x43a310]
jmp dword [eax*4 + 0x43a300]
cmp byte [ebx], 0
jne 0x43908a
mov ebp, dword [esp + 0x24]
cmp byte [ebp], 0
jne 0x43908a
mov edx, dword [esp + 0x18]
cmp edx, 4
jle case.0x436670.3
mov ecx, dword [esp + 0x1c]
mov eax, dword [ecx + 0x44]
cmp byte [eax], 0
jne 0x43908a
cmp edx, 5
jle case.0x436670.3
mov eax, dword [ecx + 0x54]
cmp byte [eax], 0
je case.0x436670.3
push ebx
push str.Parameter_3_and_beyond_should_be_omitted_in_this_case.
jmp 0x436f5f
cmp edx, 4
je 0x4390d1
mov ebp, dword [esp + 0x24]
cmp byte [ebp], 0
jne 0x4390c6
mov esi, dword [esp + 0x18]
cmp esi, 4
jle 0x4390d1
mov ecx, dword [esp + 0x1c]
mov eax, dword [ecx + 0x44]
cmp byte [eax], 0
jne 0x4390c6
cmp esi, 5
jle 0x4390d1
mov eax, dword [ecx + 0x54]
cmp byte [eax], 0
je 0x4390d1
push ebp
push str.Parameter_4_and_beyond_should_be_omitted_in_this_case.
jmp 0x436f5f
add edx, 0xfffffffe
cmp edx, 0x13
ja case.0x4390e0.3
movzx eax, byte [edx + 0x43a334]
jmp dword [eax*4 + 0x43a32c]
cmp byte [ebx], 0
jne case.0x436670.3
push 0x4e3371
push str.Parameter_3_must_not_be_blank_in_this_case.
jmp 0x436f5f
cmp dword [esp + 0x18], 0
jle case.0x436670.3
cmp byte [edi + 1], 0
jbe 0x43913e
mov eax, dword [edi + 8]
mov cl, byte [eax]
test cl, cl
jne 0x439135
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x439129
cmp dword [ecx], 0
jne case.0x436670.3
cmp byte [eax + 1], 0
jne case.0x436670.3
jmp 0x43913e
cmp cl, 1
je case.0x436670.3
test esi, esi
je case.0x4391ed.0
cmp byte [esi], 0
je case.0x4391ed.0
push str.Priority
push esi
call fcn.004c408e
add esp, 8
test eax, eax
je case.0x436670.3
push str.Interrupt
push esi
call fcn.004c408e
add esp, 8
test eax, eax
je case.0x436670.3
push str.NoTimers
push esi
call fcn.004c408e
add esp, 8
test eax, eax
je case.0x436670.3
push esi
push str.Parameter_1_invalid.
jmp 0x436f5f
cmp dword [esp + 0x18], 0
jle case.0x436670.3
cmp byte [edi + 1], 0
jbe 0x4391da
mov eax, dword [edi + 8]
mov cl, byte [eax]
test cl, cl
jne 0x4391d1
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x4391c6
cmp dword [ecx], 0
jne case.0x436670.3
cmp byte [eax + 1], 0
je 0x4391da
jmp case.0x436670.3
cmp cl, 1
je case.0x436670.3
mov ecx, esi
call fcn.0042aa00
cmp eax, 0x11
ja case.0x4391ed.1
movzx ecx, byte [eax + 0x43a354]
jmp dword [ecx*4 + 0x43a348]
cmp eax, 0xb
je case.0x436670.3
cmp eax, 0xc
je case.0x436670.3
cmp byte [ebp], 0
jne case.0x436670.3
push 0x4e3371
push str.Parameter_2_must_not_be_blank_in_this_case.
jmp 0x436d8a
cmp byte [ebp], 0
je case.0x436670.3
push ebp
push str.Parameter_2_must_be_blank_in_this_case.
jmp 0x436d8a
cmp dword [esp + 0x18], 1
jle case.0x436670.3
cmp byte [edi + 1], 1
jbe 0x439273
mov eax, dword [edi + 8]
mov cl, byte [eax + 0x10]
test cl, cl
jne 0x43926a
mov ecx, dword [eax + 0x18]
test ecx, ecx
je 0x43925f
cmp dword [ecx], 0
jne case.0x436670.3
cmp byte [eax + 0x11], 0
je 0x439273
jmp case.0x436670.3
cmp cl, 1
je case.0x436670.3
mov ecx, ebp
call fcn.0042abd0
cmp eax, 0xb
ja case.0x43928a.1
movzx eax, byte [eax + 0x43a378]
jmp dword [eax*4 + 0x43a368]
push ebp
push str.Parameter_2_invalid.
jmp 0x436d8a
cmp byte [ebp], 0
je 0x436680
cmp dword [esp + 0x18], 0
jle case.0x436670.3
cmp byte [edi + 1], 0
jbe 0x4392e4
mov eax, dword [edi + 8]
mov cl, byte [eax]
test cl, cl
jne 0x4392db
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x4392d0
cmp dword [ecx], 0
jne case.0x436670.3
cmp byte [eax + 1], 0
je 0x4392e4
jmp case.0x436670.3
cmp cl, 1
je case.0x436670.3
push 0
lea eax, [esp + 0x24]
mov ecx, esi
push 0
push eax
lea edx, [esp + 0x38]
call fcn.00483c50
add esp, 0xc
cmp dword [esp + 0x20], 0
je 0x436d48
mov ecx, dword [esp + 0x2c]
call fcn.0042a360
cmp eax, 0xc
ja case.0x43928a.1
movzx eax, byte [eax + 0x43a394]
jmp dword [eax*4 + 0x43a384]
cmp byte [ebx], 0
jne case.0x436670.3
push 0x4e3371
push str.Parameter_3_must_not_be_blank_in_this_case.
jmp 0x436d8a
cmp dword [esp + 0x18], 1
jle case.0x436670.3
cmp byte [edi + 1], 1
jbe 0x43937d
mov eax, dword [edi + 8]
mov cl, byte [eax + 0x10]
test cl, cl
jne 0x439374
mov ecx, dword [eax + 0x18]
test ecx, ecx
je 0x439369
cmp dword [ecx], 0
jne case.0x436670.3
cmp byte [eax + 0x11], 0
je 0x43937d
jmp case.0x436670.3
cmp cl, 1
je case.0x436670.3
push 0
lea eax, [esp + 0x24]
mov ecx, ebp
push 0
push eax
lea edx, [esp + 0x38]
call fcn.00483c50
add esp, 0xc
cmp dword [esp + 0x20], 0
jne 0x4393a6
push ebp
push str.Invalid_Gui_name.
jmp 0x436d8a
mov ecx, dword [esp + 0x2c]
call fcn.0042a5b0
mov ecx, eax
sub ecx, 0
je case.0x43928a.0
sub ecx, 1
je 0x4393cd
mov ebp, dword [esp + 0x24]
cmp byte [ebp], 0
jne 0x438cd2
cmp eax, 3
je case.0x43928a.1
cmp eax, 4
jne case.0x436670.3
cmp byte [ebx], 0
je case.0x436670.3
push ebx
push str.Parameter_3_must_be_blank_in_this_case.
jmp 0x436d8a
cmp dword [esp + 0x18], 0
jle case.0x436670.3
cmp byte [edi + 1], 0
jbe 0x43942d
mov eax, dword [edi + 8]
mov cl, byte [eax]
test cl, cl
jne 0x439424
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x439419
cmp dword [ecx], 0
jne case.0x436670.3
cmp byte [eax + 1], 0
je 0x43942d
jmp case.0x436670.3
cmp cl, 1
je case.0x436670.3
test esi, esi
je case.0x4391ed.0
cmp byte [esi], 0
je case.0x4391ed.0
push str.Eject
push esi
call fcn.004c408e
add esp, 8
test eax, eax
je case.0x436670.3
push str.Lock
push esi
call fcn.004c408e
add esp, 8
test eax, eax
je 0x43948e
push str.Unlock
push esi
call fcn.004c408e
add esp, 8
test eax, eax
je 0x43948e
push str.Label
push esi
call fcn.004c408e
add esp, 8
test eax, eax
jne case.0x4391ed.0
cmp byte [ebp], 0
jne case.0x436670.3
push 0x4e3371
push str.Parameter_2_must_not_be_blank_in_this_case.
jmp 0x436d8a
cmp byte [edi + 1], 1
jbe 0x4394db
mov eax, dword [edi + 8]
mov cl, byte [eax + 0x10]
test cl, cl
jne 0x4394d2
mov ecx, dword [eax + 0x18]
test ecx, ecx
je 0x4394c7
cmp dword [ecx], 0
jne case.0x436670.3
cmp byte [eax + 0x11], 0
je 0x4394db
jmp case.0x436670.3
cmp cl, 1
je case.0x436670.3
mov ecx, ebp
call fcn.0042ad60
test eax, eax
je case.0x43928a.0
cmp eax, 1
je 0x439506
cmp eax, 8
je 0x439506
cmp byte [ebx], 0
je 0x43932f
cmp eax, 4
je case.0x436670.3
cmp dword [esp + 0x18], 1
jl 0x439519
mov eax, dword [edi + 8]
cmp byte [eax], 0
jne case.0x436670.3
push 0x4e3371
push str.Parameter_1_must_not_be_blank_in_this_case.
jmp 0x436d8a
cmp dword [esp + 0x18], 0
jle case.0x436670.3
cmp byte [edi + 1], 0
jbe 0x439566
mov eax, dword [edi + 8]
mov cl, byte [eax]
test cl, cl
jne 0x43955d
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x439552
cmp dword [ecx], 0
jne case.0x436670.3
cmp byte [eax + 1], 0
je 0x439566
jmp case.0x436670.3
cmp cl, 1
je case.0x436670.3
mov ecx, esi
call fcn.0042a960
cmp eax, 3
je case.0x439592.3
cmp eax, 1
je case.0x43928a.1
cmp byte [ebp], 0
je 0x439210
cmp eax, 5
ja case.0x436670.3
jmp dword [eax*4 + 0x43a3a4]
cmp byte [ebx], 0
je case.0x436670.3
cmp byte [edi + 1], 2
jbe 0x4395d7
mov eax, dword [edi + 8]
mov cl, byte [eax + 0x20]
test cl, cl
jne 0x4395ce
mov ecx, dword [eax + 0x28]
test ecx, ecx
je 0x4395c2
cmp dword [ecx], 0
jne case.0x436670.3
cmp byte [eax + 0x21], 0
jne case.0x436670.3
jmp 0x4395d7
cmp cl, 1
je case.0x436670.3
push 0
push 1
push 1
xor edx, edx
mov ecx, ebx
call fcn.004ab8c0
add esp, 0xc
test eax, eax
jne case.0x436670.3
push ebx
push str.If_present__parameter_3_must_be_a_positive_number_in_this_case.
jmp 0x436d8a
mov dl, byte [ebx]
test dl, dl
je 0x436b40
cmp byte [edi + 1], 2
jbe 0x43963b
mov eax, dword [edi + 8]
mov cl, byte [eax + 0x20]
test cl, cl
jne 0x439632
mov ecx, dword [eax + 0x28]
test ecx, ecx
je 0x439626
cmp dword [ecx], 0
jne case.0x436670.3
cmp byte [eax + 0x21], 0
jne case.0x436670.3
jmp 0x43963b
cmp cl, 1
je case.0x436670.3
movzx eax, dl
mov dword [esp + 0x20], eax
test eax, 0xffffff80
jne 0x43965f
push 2
push eax
call fcn.004c7451
add esp, 8
test eax, eax
mov eax, dword [esp + 0x20]
je 0x43965f
and eax, 0xffffffdf
movsx eax, al
push eax
push str.LBNAHR
call fcn.004ca733
add esp, 8
test eax, eax
jne case.0x436670.3
push ebx
push str.Parameter_3_invalid.
jmp 0x436d8a
cmp byte [esi], 0
jne case.0x436670.3
cmp byte [ebp], 0
jne case.0x436670.3
cmp byte [ebx], 0
jne case.0x436670.3
cmp byte [ecx], 0
jne case.0x436670.3
push 0x4e3371
push str.Requires_at_least_one_of_its_window_parameters.
jmp 0x436d8a
cmp byte [esi], 0
jne case.0x436670.3
cmp byte [ebp], 0
jne case.0x436670.3
cmp byte [ecx], 0
jne case.0x436670.3
cmp dword [esp + 0x18], 4
jle 0x4396a8
mov eax, dword [esp + 0x1c]
mov eax, dword [eax + 0x44]
cmp byte [eax], 0
jmp 0x4396a2
cmp byte [ebx], 0
jne case.0x436670.3
push 0x4e3371
push str.Parameter_3_required
jmp 0x436d8a
mov ebx, dword [esp + 0x18]
test ebx, ebx
jle case.0x436670.3
cmp byte [edi + 1], 0
jbe 0x43973d
mov eax, dword [edi + 8]
mov cl, byte [eax]
test cl, cl
jne 0x439734
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x439729
cmp dword [ecx], 0
jne case.0x436670.3
cmp byte [eax + 1], 0
je 0x43973d
jmp case.0x436670.3
cmp cl, 1
je case.0x436670.3
mov ecx, esi
call fcn.0042ae90
cmp eax, 0xa
ja case.0x436670.3
movzx eax, byte [eax + 0x43a3d4]
jmp dword [eax*4 + 0x43a3bc]
cmp ebx, 1
jle case.0x436670.3
cmp byte [edi + 1], 1
jbe 0x439799
mov eax, dword [edi + 8]
mov cl, byte [eax + 0x10]
test cl, cl
jne 0x439790
mov ecx, dword [eax + 0x18]
test ecx, ecx
je 0x439784
cmp dword [ecx], 0
jne case.0x436670.3
cmp byte [eax + 0x11], 0
jne case.0x436670.3
jmp 0x439799
cmp cl, 1
je case.0x436670.3
mov ecx, ebp
nop dword [eax + eax]
mov al, byte [ecx]
cmp al, 0x20
je 0x4397aa
cmp al, 9
jne 0x4397ad
inc ecx
jmp 0x4397a0
test al, al
je 0x4397ef
cmp al, 0x2d
je 0x4397b9
cmp al, 0x2b
jne 0x4397c0
lea eax, [ecx + 1]
mov ecx, eax
mov al, byte [eax]
cmp al, 0x30
jne 0x4397ef
mov al, byte [ecx + 1]
cmp al, 0x78
je 0x4397cf
cmp al, 0x58
jne 0x4397ef
movsx eax, byte [ecx + 2]
push eax
call fcn.004c4410
add esp, 4
test eax, eax
je 0x4397ef
push 0x10
push 0
push ebp
call fcn.004c4d25
add esp, 0xc
jmp 0x4397f8
push ebp
call fcn.004c4df6
add esp, 4
test eax, eax
js case.0x43928a.0
cmp eax, 0xff
jle case.0x436670.3
push ebp
push str.Parameter_2_invalid.
jmp 0x436d8a
cmp ebx, 1
jle case.0x436670.3
cmp byte [edi + 1], 1
jbe 0x439854
mov eax, dword [edi + 8]
mov cl, byte [eax + 0x10]
test cl, cl
jne 0x43984b
mov ecx, dword [eax + 0x18]
test ecx, ecx
je 0x43983f
cmp dword [ecx], 0
jne case.0x436670.3
cmp byte [eax + 0x11], 0
jne case.0x436670.3
jmp 0x439854
cmp cl, 1
je case.0x436670.3
mov ecx, ebp
call fcn.00413500
test eax, eax
jne case.0x436670.3
push ebp
push str.Parameter_2_invalid.
jmp 0x436d8a
cmp byte [ebp], 0
je case.0x436670.3
push 0x4e3371
push str.Parameter_2_must_be_blank_in_this_case.
jmp 0x436d8a
cmp byte [edi + 1], 1
jbe 0x4398bc
mov eax, dword [edi + 8]
mov cl, byte [eax + 0x10]
test cl, cl
jne 0x4398b3
mov ecx, dword [eax + 0x18]
test ecx, ecx
je 0x4398a7
cmp dword [ecx], 0
jne case.0x436670.3
cmp byte [eax + 0x11], 0
jne case.0x436670.3
jmp 0x4398bc
cmp cl, 1
je case.0x436670.3
mov ecx, ebp
call fcn.0042aff0
test eax, eax
jne case.0x436670.3
push ebp
push str.Parameter_2_invalid.
jmp 0x436d8a
cmp byte [edi + 1], 1
jbe 0x43990b
mov eax, dword [edi + 8]
mov cl, byte [eax + 0x10]
test cl, cl
jne 0x439902
mov ecx, dword [eax + 0x18]
test ecx, ecx
je 0x4398f6
cmp dword [ecx], 0
jne case.0x436670.3
cmp byte [eax + 0x11], 0
jne case.0x436670.3
jmp 0x43990b
cmp cl, 1
je case.0x436670.3
mov ecx, ebp
call fcn.00429b70
test eax, eax
jne case.0x436670.3
push ebp
push str.Parameter_2_invalid.
jmp 0x436d8a
cmp dword [esp + 0x18], 0
jle case.0x436670.3
cmp byte [edi + 1], 0
jbe 0x439964
mov eax, dword [edi + 8]
mov cl, byte [eax]
test cl, cl
jne 0x43995b
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x43994f
cmp dword [ecx], 0
jne case.0x436670.3
cmp byte [eax + 1], 0
jne case.0x436670.3
jmp 0x439964
cmp cl, 1
je case.0x436670.3
mov ecx, esi
call fcn.0042b4e0
test eax, eax
jne case.0x436670.3
jmp case.0x4391ed.0
cmp dword [esp + 0x18], 1
jle case.0x436670.3
cmp byte [edi + 1], 1
jbe 0x4399b8
mov eax, dword [edi + 8]
mov cl, byte [eax + 0x10]
test cl, cl
jne 0x4399af
mov ecx, dword [eax + 0x18]
test ecx, ecx
je 0x4399a3
cmp dword [ecx], 0
jne case.0x436670.3
cmp byte [eax + 0x11], 0
jne case.0x436670.3
jmp 0x4399b8
cmp cl, 1
je case.0x436670.3
mov ecx, ebp
call fcn.0042b700
test eax, eax
jne case.0x436670.3
push ebp
push str.Parameter_2_invalid.
jmp 0x436d8a
cmp dword [esp + 0x18], 1
jle case.0x436670.3
cmp byte [edi + 1], 1
jbe 0x439a12
mov eax, dword [edi + 8]
mov cl, byte [eax + 0x10]
test cl, cl
jne 0x439a09
mov ecx, dword [eax + 0x18]
test ecx, ecx
je 0x4399fd
cmp dword [ecx], 0
jne case.0x436670.3
cmp byte [eax + 0x11], 0
jne case.0x436670.3
jmp 0x439a12
cmp cl, 1
je case.0x436670.3
mov ecx, ebp
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x439a17
sub ecx, edx
cmp ecx, 1
jbe case.0x436670.3
push 0
call dword [sym.imp.USER32.dll_GetKeyboardLayout]
push eax
push ecx
push 0
xor edx, edx
mov ecx, ebp
call fcn.0041d8d0
add esp, 0xc
test al, al
jne case.0x436670.3
push 0
xor edx, edx
mov ecx, ebp
call fcn.00477660
add esp, 4
test eax, eax
jne case.0x436670.3
push ebp
push str.Parameter_2_invalid.
jmp 0x436d8a
cmp dword [esp + 0x18], 0
jle case.0x436670.3
cmp byte [edi + 1], 0
jbe 0x439aa9
mov eax, dword [edi + 8]
mov cl, byte [eax]
test cl, cl
jne 0x439aa0
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x439a94
cmp dword [ecx], 0
jne case.0x436670.3
cmp byte [eax + 1], 0
jne case.0x436670.3
jmp 0x439aa9
cmp cl, 1
je case.0x436670.3
mov ecx, esi
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x439ab0
sub ecx, edx
cmp ecx, 1
jbe case.0x436670.3
push 0
call dword [sym.imp.USER32.dll_GetKeyboardLayout]
push eax
push ecx
push 0
xor edx, edx
mov ecx, esi
call fcn.0041d8d0
add esp, 0xc
test al, al
jne case.0x436670.3
push 0
xor edx, edx
mov ecx, esi
call fcn.00477660
add esp, 4
test eax, eax
jne case.0x436670.3
jmp case.0x4391ed.0
cmp dword [esp + 0x18], 2
jle case.0x436670.3
cmp byte [edi + 1], 2
jbe 0x439b35
mov eax, dword [edi + 8]
mov cl, byte [eax + 0x20]
test cl, cl
jne 0x439b30
mov ecx, dword [eax + 0x28]
test ecx, ecx
je 0x439b28
cmp dword [ecx], 0
jne case.0x436670.3
cmp byte [eax + 0x21], 0
jne case.0x436670.3
jmp 0x439b35
cmp cl, 1
je case.0x436670.3
mov ecx, ebx
call fcn.0042b850
cmp eax, 0xffffffff
jne case.0x436670.3
push ebx
push str.Parameter_3_invalid.
jmp 0x436d8a
cmp dword [esp + 0x18], 0
jle case.0x436670.3
cmp byte [edi + 1], 0
jbe 0x439b7b
mov eax, dword [edi + 8]
mov cl, byte [eax]
test cl, cl
jne 0x439b76
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x439b6e
cmp dword [ecx], 0
jne case.0x436670.3
cmp byte [eax + 1], 0
je 0x439b7b
jmp case.0x436670.3
cmp cl, 1
je case.0x436670.3
mov ecx, esi
call fcn.0042b850
cmp eax, 0xffffffff
je case.0x4391ed.0
mov bl, byte [esp + 0x13]
lea edx, [edi + 0xc]
mov ecx, dword [esp + 0x14]
cmp byte [ecx + 0x24], 0
je 0x439bce
cmp byte [esp + 0x2b], 0
je 0x439bce
mov ecx, dword [0x4f898c]
mov eax, dword [ecx + 0x94]
mov dword [eax + 8], edi
mov eax, dword [esp + 0x14]
mov byte [eax + 0x24], 0
mov eax, dword [ecx + 0x94]
mov ecx, dword [esp + 0x14]
cmp byte [eax + 0x50], 0
jne 0x439bce
mov byte [eax + 0x50], 0x42
cmp bl, 0x77
jne 0x439c0b
inc dword [ecx + 0x20]
mov eax, dword [ecx + 0x1c]
mov dword [edi + 0x1c], eax
mov eax, dword [0x4f898c]
mov dword [ecx + 0x1c], edi
mov eax, dword [eax + 0x94]
test eax, eax
je 0x439d02
cmp dword [eax + 8], 0
jne 0x439d02
mov dword [edx], 1
mov byte [ecx + 0x24], 1
jmp 0x439d02
cmp bl, 0x78
jne 0x439d02
mov eax, dword [esp + 0x14]
mov ecx, dword [ecx + 0x20]
dec ecx
mov dword [eax + 0x20], ecx
mov eax, dword [0x4f898c]
mov esi, dword [eax + 0x94]
test esi, esi
je 0x439cf1
test ecx, ecx
jne 0x439cf1
mov ebp, dword [esi + 0x30]
test ebp, ebp
je 0x439ccf
test byte [esi + 0x50], 4
je 0x439ccf
shl ebp, 2
lea eax, [ebp - 1]
cmp eax, 0x7fff
ja 0x4365c6
cmp dword [0x4fd1cc], ecx
jne 0x439c7a
call fcn.004a8b90
mov dword [0x4fd1cc], eax
test eax, eax
je 0x4365c6
mov eax, dword [0x4fd1c8]
cmp ebp, dword [eax + 8]
jbe 0x439c9a
call fcn.004a8b90
mov ecx, dword [0x4fd1c8]
mov dword [ecx + 0xc], eax
test eax, eax
je 0x4365c6
mov ecx, dword [0x4fd1c8]
mov ebx, dword [ecx + 4]
sub dword [ecx + 8], ebp
mov dword [0x4fd1c4], ebx
lea eax, [ebx + ebp]
mov dword [ecx + 4], eax
test ebx, ebx
je 0x4365c6
mov eax, dword [esi + 0x30]
shl eax, 2
push eax
push dword [esi + 0x1c]
push ebx
call fcn.004c2440
add esp, 0xc
jmp 0x439cd8
mov dword [esi + 0x30], 0
xor ebx, ebx
mov dword [esi + 0x1c], ebx
mov eax, dword [0x4f898c]
mov dword [edi + 0xc], 1
mov dword [eax + 0x94], 0
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx + 0x1c]
test eax, eax
je 0x439d02
mov eax, dword [eax + 0x1c]
mov dword [ecx + 0x1c], eax
cmp byte [esp + 0x2b], 0
je 0x439d34
mov eax, dword [ecx + 0x364]
test eax, eax
je 0x439d34
cmp dword [eax + 8], 0
jne 0x439d34
mov cl, byte [edi]
cmp cl, 0x21
je 0x439d46
cmp cl, 0x6c
je 0x439d46
cmp cl, 0x72
je 0x439d46
mov dword [eax + 8], edi
mov eax, dword [eax + 0xc]
test eax, eax
jne 0x439d13
mov eax, 1
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x184c
ret 0x10
push 0x4e3371
push str.A_label_must_not_point_to_an_ELSE_or_UNTIL_or_CATCH.
jmp 0x436d8a
push 0x4e3371
push str.Out_of_memory.
mov ecx, ebx
call fcn.0044dd10
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x184c
ret 0x10