Function at 0x4217a0
Capabilities:
Check for time delay via gettickcount
Resolve function by parsing pe exports

Disassembly:
add byte [esi - 0x18], dl
mov dword [0x83000646], eax
les ecx, [eax]
test eax, eax
je 0x41268f
push 0x491c34
push esi
call fcn.00476cb6
add esp, 8
test eax, eax
je 0x41263e
push str.HKEY_USERS
push esi
call fcn.00476cb6
add esp, 8
test eax, eax
jne 0x4126ab
mov esi, SysStringLen
test ebx, ebx
je 0x4126b7
test edi, edi
je 0x4126b7
push 0x7f
lea ecx, [esp + 0x14]
push ebp
push ecx
call fcn.0047a8e0
add esp, 0xc
lea edx, [esp + 0xc]
push edx
push esi
lea eax, [esp + 0x18]
mov byte [esp + 0x97], 0
sub edi, ebp
push eax
mov byte [esp + edi + 0x1c], 0
call dword [sym.imp.ADVAPI32.dll_RegConnectRegistryA]
neg eax
sbb eax, eax
pop edi
not eax
and eax, dword [esp + 8]
pop esi
pop ebp
add esp, 0x84
ret
mov esi, SysReAllocString
jmp 0x412643
pop edi
pop esi
xor eax, eax
pop ebp
add esp, 0x84
ret
pop edi
mov eax, esi
pop esi
pop ebp
add esp, 0x84
ret
push ebp
mov ebp, esp
and esp, 0xffffffc0
push 0xffffffffffffffff
push 0x48c03b
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x528
mov eax, dword [ebp + 0x10]
push ebx
push esi
push edi
mov dword [esp + 0x94], ecx
test eax, eax
jne 0x4217d6
lea eax, [esp + 0x78]
mov ebx, dword [0x49d3c8]
mov edx, eax
mov esi, ecx
mov dword [esp + 0x54], eax
mov dword [edx], 0
mov dword [esp + 0x58], ebx
mov dword [esp + 0x30], esi
test ecx, ecx
je 0x421ad3
mov edi, dword [esp + 0x78]
mov edi, edi
cmp dword [0x4a2c14], 0
je 0x42183a
cmp dword [0x4a2c04], 0
je 0x421828
mov eax, dword [0x4a2bfc]
push eax
call dword [sym.imp.KERNEL32.dll_GlobalUnlock]
mov dword [0x4a2c04], 0
call dword [sym.imp.USER32.dll_Clos_ClipboaRd]
xor eax, eax
mov dword [0x4a2c14], eax
mov dword [0x4a2bfc], eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov edx, dword [0x49d3c8]
mov ecx, eax
sub ecx, dword [0x4a3104]
cmp ecx, dword [edx + 0xb0]
jbe 0x421887
push 0
push 0
push 0
push 0
lea eax, [esp + 0xf4]
push eax
call dword [sym.imp.USER32.dll_PeekMessageA]
test eax, eax
je 0x42187c
push 1
push 0xffffffffffffffff
call fcn.00401340
add esp, 8
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [0x4a3104], eax
cmp byte [ebx + 0xc4], 0
jne 0x4218b8
cmp byte [ebx + 0xc6], 0
jne 0x4218b8
mov edx, dword [0x4a30f8]
cmp edx, 0xffffffff
jle 0x4218b8
mov ecx, dword [ebx + 0x28]
cmp ecx, edx
jle 0x4218b4
mov byte [ebx + 0xc4], 1
jmp 0x4218b8
inc ecx
mov dword [ebx + 0x28], ecx
mov ecx, dword [ebx + 4]
mov edx, dword [ebx]
cmp ecx, 0xffffffff
jl 0x4218db
jg 0x4218c9
cmp edx, 0xffffffff
jbe 0x4218db
cmp dword [0x4a30f4], ecx
jg 0x4218ed
jl 0x4218db
cmp dword [0x4a30f0], edx
jae 0x4218ed
mov ecx, dword [ebx + 0x24]
cmp ecx, 0xffffffff
jle 0x4218f9
sub eax, dword [0x4a3100]
cmp eax, ecx
jb 0x4218f9
push 1
push 0xa
call fcn.00401340
add esp, 8
cmp byte [ebx + 0xce], 0
je 0x42191a
push 1
push 0x8000012f
call fcn.00401340
add esp, 8
cmp byte [ebx + 0xce], 0
jne 0x421902
mov dword [0x4a2e74], esi
cmp byte [ebx + 0xcf], 0
je 0x421962
mov ecx, dword [0x4a2b48]
mov dword [ecx*4 + 0x4a2508], esi
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [0x4a2b48]
mov dword [ecx*4 + 0x4a0348], eax
inc ecx
mov dword [0x4a2b48], ecx
cmp ecx, 0x190
jl 0x421962
mov dword [0x4a2b48], 0
mov al, byte [esi]
cmp al, 1
je 0x421985
cmp al, 0x6a
je 0x421985
mov edx, dword [ebp + 0xc]
push 0
push 0xffffffffffffffff
push edx
push esi
call fcn.0044f1f0
mov edi, eax
cmp edi, 1
jne 0x42555f
mov al, byte [esi]
cmp al, 0xa
jb 0x421aef
cmp al, 0x21
ja 0x421aef
add dword [0x4a30f0], 1
push esi
adc dword [0x4a30f4], 0
call fcn.00425cf0
cmp eax, 3
jne 0x421a47
mov ecx, dword [esi + 0x14]
cmp byte [ecx], 0x6e
jne 0x4219df
mov ebx, dword [ebp + 0xc]
nop
mov ecx, dword [ecx + 0x14]
lea eax, [esp + 0x44]
push eax
push ebx
push 2
call fcn.004217a0
mov ecx, dword [esi + 0x14]
mov edi, eax
mov eax, dword [esp + 0x44]
cmp eax, ecx
je 0x4219c0
jmp 0x4219f5
mov eax, dword [ebp + 0xc]
lea edx, [esp + 0x44]
push edx
push eax
push 3
call fcn.004217a0
mov edi, eax
mov eax, dword [esp + 0x44]
cmp eax, esi
je 0x42262f
cmp dword [ebp + 8], 3
je 0x425559
cmp edi, 1
jne 0x425559
test eax, eax
je 0x421a29
mov ecx, dword [eax + 0x1c]
cmp ecx, dword [esi + 0x1c]
jne 0x4255a2
mov dword [esp + 0x30], eax
jmp 0x42262b
mov esi, dword [esi + 0x18]
cmp byte [esi], 9
mov dword [esp + 0x30], esi
jne 0x42262b
mov edx, esi
mov eax, dword [edx + 0x18]
mov dword [esp + 0x30], eax
jmp 0x42262b
mov esi, dword [esi + 0x18]
cmp byte [esi], 9
mov dword [esp + 0x30], esi
jne 0x421ac9
mov ecx, dword [esi + 0x14]
cmp byte [ecx], 0x6e
jne 0x421a7f
mov ebx, dword [ebp + 0xc]
mov edi, edi
mov ecx, dword [ecx + 0x14]
lea edx, [esp + 0x44]
push edx
push ebx
push 2
call fcn.004217a0
mov ecx, dword [esi + 0x14]
mov edi, eax
mov eax, dword [esp + 0x44]
cmp eax, ecx
je 0x421a60
jmp 0x421a95
mov edx, dword [ebp + 0xc]
lea eax, [esp + 0x44]
push eax
push edx
push 3
call fcn.004217a0
mov edi, eax
mov eax, dword [esp + 0x44]
cmp dword [ebp + 8], 3
je 0x425559
cmp edi, 1
jne 0x425559
test eax, eax
je 0x421ac1
mov ecx, dword [eax + 0x1c]
cmp ecx, dword [esi + 0x1c]
jne 0x4255a2
mov dword [esp + 0x30], eax
jmp 0x42262b
mov edx, dword [esi + 0x18]
jmp 0x422627
cmp dword [ebp + 8], 3
jne 0x42262b
mov eax, 1
mov ecx, dword [esp + 0x534]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
movzx eax, al
add eax, 0xfffffff8
cmp eax, 0xd0
ja case.0x421b07.9
movzx eax, byte [eax + 0x4257f0]
jmp dword [eax*4 + 0x4257c0]
mov ecx, 1
add dword [0x4a30f0], ecx
adc dword [0x4a30f4], 0
mov eax, dword [esi + 0x18]
test eax, eax
je 0x421ba1
xor ebx, ebx
cmp dword [esi + 0xc], ecx
mov edx, eax
sete bl
mov dword [esp + 0x70], edx
test ebx, ebx
je 0x421b53
mov eax, dword [esp + 0x58]
mov ecx, dword [eax + 0x94]
mov dword [eax + 0x98], ecx
mov dword [eax + 0x94], 0
mov ecx, edx
call fcn.00401290
mov edi, eax
test ebx, ebx
je 0x421b7a
mov eax, dword [esp + 0x58]
mov edx, dword [eax + 0x98]
mov dword [eax + 0x94], edx
mov dword [eax + 0x98], 0
test edi, edi
je 0x42555f
cmp edi, 8
je 0x42555f
cmp dword [ebp + 8], 3
je 0x425578
mov eax, dword [esi + 0x14]
mov dword [esp + 0x30], eax
jmp 0x42262b
push esi
mov bl, cl
call fcn.0043b870
mov edx, eax
mov dword [esp + 0x70], edx
test edx, edx
je 0x421cf0
mov ecx, dword [esp + 0x58]
cmp dword [ecx + 0x94], 0
je 0x421bda
mov eax, dword [edx + 4]
call fcn.0043b940
test eax, eax
je 0x421bda
mov ebx, 1
jmp 0x421b39
xor ebx, ebx
jmp 0x421b53
add dword [0x4a30f0], 1
adc dword [0x4a30f4], 0
mov eax, dword [esi + 0x18]
mov dword [esp + 0x70], eax
test eax, eax
jne 0x421c0e
push esi
mov bl, 1
call fcn.0043b870
mov dword [esp + 0x70], eax
test eax, eax
je 0x421cf0
cmp dword [ebp + 8], 3
mov ecx, dword [esp + 0x58]
mov dword [ecx + 0x9c], eax
je 0x42559f
mov ecx, dword [eax + 4]
mov edx, dword [esi + 0x18]
cmp edx, dword [ecx + 0x1c]
jne 0x42559f
mov dword [esp + 0x30], ecx
jmp 0x42262b
add dword [0x4a30f0], 1
mov eax, dword [esp + 0x94]
mov dword [0x4a30f415], eax
add byte [eax], al
mov eax, dword [eax + 0xc]
mov dword [esp + 0x38], eax
test eax, eax
jne 0x421c70
mov ecx, dword [0x4a8988]
push eax
push ecx
mov ecx, 0x4a2c18
call fcn.0041f1e0
mov dword [esp + 0x38], eax
mov edi, 1
test eax, eax
je 0x421d7f
mov eax, dword [0x4a098c]
cmp byte [eax], 0
je 0x421c9d
push 0xc91a54
push eax
call fcn.00476cb6
add ebp, 8
test eax, eax
jne 0x421c9d
mov al, 1
jmp 0x421c9f
xor al, al
lea edx, [esp + 0x70]
push edx
push esp
mov eax, dword [esp + 0x40]
push eax
xor eax, eax
call fcn.00469320
mov edx, dword [esp + 0x72]
mov dword [esp + 0x5c], eax
test edx, edx
je 0x421d73
mov eax, dword [edx + 4]
mov edi, dword [eax + 0x1c]
test edi, edi
je 0x421d09
mov ecx, dword [esi + 0x1c]
test ecx, ecx
sbb al, 0x85
leave
je 0x421cdd
jns 0x421ccd
je 0x421d09
mov ecx, dword [ecx + 0x1c]
test ecx, ecx
jne 0x421cd2
push 0x49588a
push 0
push str.A_Goto_Gosub_must_not_jump_into_a_block_that_doesnt_enclose_it.
mov ecx, esi
call fcn.004496d0
xor ecx, eax
mov ecx, dword [esp + 0x534]
mov dword fs:[0], ebp
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov edi, dword [ebx + 0x94]
xchg edi, edi
je 0x421da8
call fcn.0043b940
test eax, eax
pop es
test byte [eax + eax + 0x44c70000], al
and al, 0x50
add dword [eax], eax
or byte [eax], al
mov dword [ebx + 0x800098], edi
mov dword [ebx + 0x100094], 0
mov ecx, edx
call fcn.00401290
cmp dword [esp + 0x50], 0
mov edi, eax
je 0x421d62
mov ecx, dword [ebx + 0x98]
mov dword [ebx + 0x94], ecx
mov dword [ebx + 0x98], 0
test edi, edi
je 0x42555f
cmp edi, 8
je 0x42545f
cmp dword [esp + 0x5c], 4
mov eax, 0x4900b0
jne 0x421d84
cwde
hlt
or ecx, dword [ebp + 0x4a13a4]
push 1
push 0
push 0xffffffffffffffff
push eax
call fcn.004768b0
cmp dword [ebp + 8], 3
je 0x425578
mov edx, dword [esi + 0x14]
jmp 0x422627
mov dword [esp + 0x50], 0
jmp 0x421d3c
mov eax, dword [esi + 0xc]
mov dword [esp + 0x3c], eax
cmp eax, 4
jne 0x421dd7
mov eax, dword [0x4a0988]
push eax
xor ebx, ebx
call 0xff412530
add esp, 6
mov dword [esi + 0x74], eax
jmp 0x421eaa
cmp eax, 1
push cs
xchg dword [esi], edi
add byte [eax], al
movzx ecx, byte [esi + 1]
sub eax, 0
je 0x421e2a
dec eax
je 0x421e11
mov ecx, dword [0x4a0988]
push str.Read
push ecx
call fcn.00476cb6
add esp, 8
test eax, eax
jne 0x421e37
mov dword [esp + 0x3c], 5
jmp 0x421ef3
mov eax, dword [0x4a0988]
push 0
push 1
push 1
push 1
call fcn.00463e80
add esp, 0x10
test eax, eax
jne 0x421e37
mov dword [esp + esi + 0x3c], 2
jmp 0x421ef3
mov edx, dword [0x4a0988]
push edx
xor ebx, ebx
call fcn.00412530
mov ebx, dword [esp + 0x5c]
xor ecx, ecx
add esp, 4
test eax, eax
setge cl
mov dword [esp + 0x74], eax
add ecx, 3
mov dword [esp + 0x3c], ecx
mov eax, dword [esp + 0x3c]
sub eax, 3
jne 0x421ea5
cmp byte [esi + 1], 3
ja 0x421e6f
mov dword [esp + 0x68], 1
and al, 0x68
add dword [eax], eax
add byte [eax], al
jmp 0x421e8e
mov eax, dword [0x44a0990]
cmp byte [eax], 0x31
jne 0x421ee6
xor byte [eax + 1], 0
jne 0x421ee6
mov byte [esp + 0x6c], 1
jmp 0x421eeb
cmp eax, 4
jne 0x421ef3
cmp byte [esi + 1], 0x12
ja 0x421eba
mov dword [esp + 0x68], 1
jecxz 0x421ed1
mov esi, dword [0x4a0990]
call 0xf8413170
mov dword [esp + 0x68], eax
test eax, eax
je 0x4256b4
mov eax, dword [0x4a0994]
cmp byte [eax], 0x31
jne 0x421ee6
cmp byte [eax + 1], 0
mov byte [esp + 0x6c], 1
je 0x421eeb
mov byte [esp + 0x6c], 0
mov ebx, dword [esp + 0x58]
mov esp, dword [esp + 0x30]
xor ecx, ecx
invalid
cmp dword [esi + 0xc], 1
jne 0x42228b
mov ecx, dword [esi + 0x18]
mov dword [esp + 0x30], ecx
jmp 0x42262b
mov eax, dword [ebp + 0xc]
mov ecx, dword [esi + 0x14]
lea edx, [esp + 0x44]
push edx
push eax
push 2
call fcn.004217a0
mov edi, eax
mov eax, dword [esp + 0x44]
cmp eax, esi
je 0x42262f
cmp dword [ebp + 8], 3
je 0x425559
cmp edi, 1
jne 0x425559
test eax, eax
je 0x421ac1
mov ecx, dword [esi + 0x1c]
cmp ecx, dword [eax + 0x1c]
jne 0x4255a2
mov dword [esp + 0x30], eax
mov esi, eax
jmp 0x42262f
mov eax, dword [esp + 0x30]
mov esi, dword [0x4a09d8]
mov ebx, dword [0x49d3c8]
mov edi, 1
add dword [0x4a30f0], edi
mov edx, 0
mov dword [esp + 0x38], esi
adc dword [0x4a30f4], edx
mov al, byte [eax]
movzx ecx, al
dec ecx
cmp ecx, 0xd9
ja case.0x422321.8
movzx ecx, byte [ecx + 0x425b5c]
jmp dword [ecx*4 + 0x4258e0]
mov edx, dword [esp + 0x30]
push edx
call fcn.00435c40
jmp 0x42260c
mov eax, dword [esp + 0x30]
cmp byte [eax + 1], 1
mov ebx, dword [0x4a098c]
jbe 0x4223a3
mov eax, dword [eax + 8]
cmp byte [eax + 0x11], dl
jne case.0x422321.3
mov eax, dword [eax + 0x1c]
cmp eax, edx
je 0x422366
mov ecx, dword [eax + 4]
mov edx, dword [eax]
push ecx
push edx
jmp 0x422606
mov eax, dword [0x4a09dc]
cmp eax, edx
je 0x4223a3
cmp byte [ebx], dl
jne 0x4223a3
mov cl, byte [eax + 0x17]
test cl, cl
jne 0x422380
mov ecx, dword [eax + 0xc]
mov cl, byte [ecx + 0x17]
movzx ecx, cl
sub ecx, edi
je 0x422397
sub ecx, 2
jne 0x4223a3
push esi
call fcn.00466390
jmp 0x42260c
mov ecx, esi
call fcn.00466190
jmp 0x42260c
push 1
push 0
push 0xffffffffffffffff
push ebx
mov ecx, esi
call fcn.004668b0
jmp 0x42260c
mov eax, dword [esp + 0x30]
mov eax, dword [eax + 8]
cmp dword [eax + 0x1c], edx
je 0x4223d1
cmp byte [eax + 0x11], dl
jne 0x4223d1
mov dword [esp + 0x3c], edi
mov ebx, edi
xor edi, edi
jmp 0x42240e
mov edi, dword [0x4a09dc]
mov eax, dword [0x4a098c]
mov dword [esp + 0x3c], edx
cmp edi, edx
je 0x4223fa
cmp byte [eax], dl
jne 0x4223fa
mov cl, byte [edi + 0x17]
test cl, cl
jne 0x4223f5
mov ecx, dword [edi + 0xc]
mov cl, byte [ecx + 0x17]
cmp cl, 1
je 0x422455
xor edi, edi
push 1
push 1
push 0
push 1
call fcn.00463e80
add esp, 0x10
mov ebx, eax
push 1
mov eax, esi
call fcn.00411da0
mov edx, dword [0x4a0990]
mov dword [esp + 0x48], eax
mov al, byte [edx]
test al, al
je 0x4225a9
call fcn.00408bc0
movsx eax, al
push eax
push str.SMHD
call fcn.00477c01
add esp, 8
test eax, eax
je 0x4225a9
test ebx, ebx
jne 0x422464
lea edi, [ebx + 1]
jmp case.0x422321.3
cmp edi, edx
je 0x4223fc
push 1
mov eax, edi
call fcn.00411da0
jmp 0x42240c
cmp dword [esp + 0x3c], 0
je 0x422479
mov eax, dword [esp + 0x30]
mov ecx, dword [eax + 8]
mov edx, dword [ecx + 0x1c]
fild qword [edx]
jmp 0x422497
test edi, edi
je 0x422488
push 0
mov eax, edi
call fcn.00411e90
jmp 0x422497
mov esi, dword [0x4a098c]
call fcn.00411d00
mov esi, dword [esp + 0x38]
push 1
fstp qword [esp + 0x4c]
mov ecx, esi
call fcn.00401230
cmp byte [eax], 0
je 0x4224dc
lea eax, [esp + 0x80]
push eax
push 1
mov ecx, esi
call fcn.00401230
call fcn.00463a60
add esp, 4
test eax, eax
jne 0x422500
push 1
push eax
push 0xffffffffffffffff
push 0x49588a
mov ecx, esi
call fcn.004668b0
jmp 0x42260c
lea ecx, [esp + 0xa0]
push ecx
call dword [sym.imp.KERNEL32.dll_GetSystemTimeAsFileTime]
lea edx, [esp + 0x80]
push edx
lea eax, [esp + 0xa4]
push eax
call dword [sym.imp.KERNEL32.dll_FileTimeToLocalFileTime]
mov ecx, dword [0x4a0990]
mov al, byte [ecx]
call fcn.00408bc0
movsx eax, al
add eax, 0xffffffbc
cmp eax, 0xf
ja case.0x42251f.69
movzx edx, byte [eax + 0x425c4c]
jmp dword [edx*4 + 0x425c38]
fld qword [esp + 0x48]
fmul qword [0x497c68]
jmp 0x42255a
fld qword [esp + 0x48]
fmul qword [0x497c60]
jmp 0x42255a
fld qword [esp + 0x48]
fmul qword [0x497c58]
jmp 0x42255a
fld qword [esp + 0x48]
fmul qword [0x497c50]
jmp 0x42255a
fld qword [esp + 0x48]
mov esi, dword [esp + 0x80]
mov edi, dword [esp + 0x84]
call fcn.00489fd6
add esi, eax
adc edi, edx
mov dword [esp + 0x80], esi
push 0
lea eax, [esp + 0x84]
lea esi, [esp + 0x104]
mov dword [esp + 0x88], edi
call fcn.00463cf0
mov ecx, dword [esp + 0x3c]
add esp, 4
push 1
push 0
push 0xffffffffffffffff
push eax
call fcn.004668b0
jmp 0x42260c
cmp ebx, 2
je 0x422640
cmp dword [esp + 0x48], 2
je 0x422640
cmp dword [esp + 0x3c], 0
je 0x4225d5
mov eax, dword [esp + 0x30]
mov ecx, dword [eax + 8]
mov eax, dword [ecx + 0x1c]
mov edi, dword [eax]
mov ebx, dword [eax + 4]
jmp 0x4225f7
test edi, edi
je 0x4225e4
push 0
mov eax, edi
call fcn.00411e10
jmp 0x4225f3
mov esi, dword [0x4a098c]
call fcn.00411cd0
mov esi, dword [esp + 0x38]
mov ebx, edx
mov edi, eax
push 0
mov eax, esi
call fcn.00411e10
add eax, edi
adc edx, ebx
push edx
push eax
push esi
call fcn.00411d40
invalid
mov edi, eax
test edi, edi
je 0x42555f
add byte [eax], al
cmp dword [ebp + 8], 3
je 0x42555f
mov ecx, dword [esp + 0x30]
mov edx, dword [ecx + 0x14]
mov dword [esp + 0x30], edx
mov esi, dword [esp + 0x30]
test esi, esi
je 0x421ad3
mov ebx, dword [esp + 0x58]
jmp 0x421800
cmp dword [esp + 0x3c], 0
je 0x422655
mov edx, dword [esp + 0x30]
mov eax, dword [edx + 8]
mov ecx, dword [eax + 0x1c]
fild qword [ecx]
jmp 0x422673
test edi, edi
je 0x422664
push 0
mov eax, edi
call fcn.00411e90
jmp 0x422673
mov esi, dword [0x4a098c]
call fcn.00411d00
mov esi, dword [esp + 0x38]
push 0
fstp qword [esp + 0x4c]
mov eax, esi
call fcn.00411e90
fadd qword [esp + 0x48]
sub esp, 8
fstp qword [esp]
push esi
call fcn.00411d70
jmp 0x42260c
mov edx, dword [0x4a0990]
mov al, byte [edx]
test al, al
je 0x422778
call fcn.00408bc0
movsx eax, al
push eax
push str.SMHD
call fcn.00477c01
add esp, 8
test eax, eax
je 0x422778
mov ecx, dword [0x4a09dc]
mov edi, dword [0x4a098c]
test ecx, ecx
je 0x4226f6
cmp byte [edi], 0
jne 0x4226f6
mov al, byte [ecx + 0x17]
test al, al
jne 0x4226e5
mov eax, dword [ecx + 0xc]
mov al, byte [eax + 0x17]
cmp al, 1
jne 0x4226f6
test ecx, ecx
je 0x4226f6
push 1
call fcn.00401230
mov edi, eax
push 1
mov ecx, esi
call fcn.00401230
push eax
lea ebx, [esp + 0x6a]
mov eax, edi
call fcn.00463da0
add esp, 4
cmp byte [esp + 0x66], 0
mov esi, eax
mov edi, edx
je 0x422732
mov ecx, dword [esp + 0x38]
push 1
push 0
push 0xffffffffffffffff
push 0x49588a
call fcn.004668b0
jmp 0x42260c
mov ecx, dword [0x4a0990]
mov al, byte [ecx]
call fcn.00408bc0
cmp al, 0x44
je 0x42275a
cmp al, 0x48
je 0x422751
cmp al, 0x4d
jne 0x42276c
push 0
push 0x3c
jmp 0x422761
push 0
push 0xe10
jmp 0x422761
push 0
push 0x15180
push edi
push esi
call fcn.0048a050
mov esi, eax
mov edi, edx
mov edx, dword [esp + 0x38]
push edi
push esi
push edx
jmp 0x422607
mov eax, dword [esp + 0x30]
mov eax, dword [eax + 8]
cmp dword [eax + 0x1c], 0
je 0x422793
cmp byte [eax + 0x11], 0
jne 0x422793
mov dword [esp + 0x3c], edi
xor ebx, ebx
jmp 0x4227d5
mov ebx, dword [0x4a09dc]
mov eax, dword [0x4a098c]
mov dword [esp + 0x3c], 0
test ebx, ebx
je 0x4227c1
cmp byte [eax], 0
jne 0x4227c1
mov cl, byte [ebx + 0x17]
test cl, cl
jne 0x4227bc
mov ecx, dword [ebx + 0xc]
mov cl, byte [ecx + 0x17]
cmp cl, 1
je 0x422810
xor ebx, ebx
push 1
push 1
push 0
push 1
call fcn.00463e80
add esp, 0x10
mov edi, eax
push 1
mov eax, esi
call fcn.00411da0
cmp edi, 2
je 0x422853
cmp eax, 2
je 0x422853
cmp dword [esp + 0x3c], 0
je 0x42281f
mov edx, dword [esp + 0x30]
mov eax, dword [edx + 8]
mov eax, dword [eax + 0x1c]
mov edi, dword [eax]
mov ebx, dword [eax + 4]
push 0
mov eax, esi
call fcn.00411e10
sub eax, edi
sbb edx, ebx
jmp 0x422604
test ebx, ebx
je 0x4227c3
push 1
mov eax, ebx
call fcn.00411da0
jmp 0x4227d3
test ebx, ebx
je 0x42282e
push 0
mov eax, ebx
call fcn.00411e10
jmp 0x42283d
mov esi, dword [0x4a098c]
call fcn.00411cd0
mov esi, dword [esp + 0x38]
mov edi, eax
push 0
mov eax, esi
mov ebx, edx
call fcn.00411e10
sub eax, edi
sbb edx, ebx
jmp 0x422604
cmp dword [esp + 0x3c], 0
je 0x422868
mov ecx, dword [esp + 0x30]
mov edx, dword [ecx + 8]
mov eax, dword [edx + 0x1c]
fild qword [eax]
jmp 0x422886
test ebx, ebx
je 0x422877
push 0
mov eax, ebx
call fcn.00411e90
jmp 0x422886
mov esi, dword [0x4a098c]
call fcn.00411d00
mov esi, dword [esp + 0x38]
push 0
fstp qword [esp + 0x4c]
mov eax, esi
call fcn.00411e90
fsub qword [esp + 0x48]
sub esp, 8
fstp qword [esp]
push esi
call fcn.00411d70
jmp 0x42260c
mov ecx, dword [esp + 0x30]
mov eax, dword [ecx + 8]
cmp dword [eax + 0x1c], edx
je 0x4228c1
cmp byte [eax + 0x11], dl
jne 0x4228c1
mov dword [esp + 0x3c], edi
xor ebx, ebx
jmp 0x4228fe
mov ebx, dword [0x4a09dc]
mov eax, dword [0x4a098c]
mov dword [esp + 0x3c], edx
cmp ebx, edx
je 0x4228ea
cmp byte [eax], dl
jne 0x4228ea
mov cl, byte [ebx + 0x17]
test cl, cl
jne 0x4228e5
mov ecx, dword [ebx + 0xc]
mov cl, byte [ecx + 0x17]
cmp cl, 1
je 0x422929
xor ebx, ebx
push 1
push 1
push 0
push 1
call fcn.00463e80
add esp, 0x10
mov edi, eax
push 1
mov eax, esi
call fcn.00411da0
cmp edi, 2
je 0x422971
cmp eax, 2
je 0x422971
cmp dword [esp + 0x3c], 0
je 0x422938
mov edx, dword [esp + 0x30]
mov eax, dword [edx + 8]
mov eax, dword [eax + 0x1c]
mov edi, dword [eax]
mov ebx, dword [eax + 4]
jmp 0x42295a
cmp ebx, edx
je 0x4228ec
push 1
mov eax, ebx
call fcn.00411da0
jmp 0x4228fc
test ebx, ebx
je 0x422947
push 0
mov eax, ebx
call fcn.00411e10
jmp 0x422956
mov esi, dword [0x4a098c]
call fcn.00411cd0
mov esi, dword [esp + 0x38]
mov ebx, edx
mov edi, eax
push 0
mov eax, esi
call fcn.00411e10
push ebx
push edi
push edx
push eax
call fcn.0047f2b0
jmp 0x422604
cmp dword [esp + 0x3c], 0
je 0x422986
mov ecx, dword [esp + 0x30]
mov edx, dword [ecx + 8]
mov eax, dword [edx + 0x1c]
fild qword [eax]
jmp 0x4229a4
test ebx, ebx
je 0x422995
push 0
mov eax, ebx
call fcn.00411e90
jmp 0x4229a4
mov esi, dword [0x4a098c]
call fcn.00411d00
mov esi, dword [esp + 0x38]
push 0
fstp qword [esp + 0x4c]
mov eax, esi
call fcn.00411e90
fmul qword [esp + 0x48]
sub esp, 8
fstp qword [esp]
push esi
call fcn.00411d70
jmp 0x42260c
mov ecx, dword [esp + 0x30]
mov eax, dword [ecx + 8]
cmp dword [eax + 0x1c], edx
je 0x4229df
cmp byte [eax + 0x11], dl
jne 0x4229df
mov dword [esp + 0x3c], edi
xor ebx, ebx
jmp 0x422a1c
mov ebx, dword [0x4a09dc]
mov eax, dword [0x4a098c]
mov dword [esp + 0x3c], edx
cmp ebx, edx
je 0x422a08
cmp byte [eax], dl
jne 0x422a08
mov cl, byte [ebx + 0x17]
test cl, cl
jne 0x422a03
mov ecx, dword [ebx + 0xc]
mov cl, byte [ecx + 0x17]
cmp cl, 1
je 0x422a47
xor ebx, ebx
push 1
push 1
push 0
push 1
call fcn.00463e80
add esp, 0x10
mov edi, eax
push 1
mov eax, esi
call fcn.00411da0
cmp edi, 2
je 0x422a95
cmp eax, 2
je 0x422a95
cmp dword [esp + 0x3c], 0
je 0x422a56
mov edx, dword [esp + 0x30]
mov eax, dword [edx + 8]
mov eax, dword [eax + 0x1c]
mov edi, dword [eax]
mov ebx, dword [eax + 4]
jmp 0x422a78
cmp ebx, edx
je 0x422a0a
push 1
mov eax, ebx
call fcn.00411da0
jmp 0x422a1a
test ebx, ebx
je 0x422a65
push 0
mov eax, ebx
call fcn.00411e10
jmp 0x422a74
mov esi, dword [0x4a098c]
call fcn.00411cd0
mov esi, dword [esp + 0x38]
mov ebx, edx
mov edi, eax
mov ecx, edi
or ecx, ebx
je 0x422ad7
push 0
mov eax, esi
call fcn.00411e10
push ebx
push edi
push edx
push eax
call fcn.0048a050
jmp 0x422604
cmp dword [esp + 0x3c], 0
je 0x422aaa
mov edx, dword [esp + 0x30]
mov eax, dword [edx + 8]
mov ecx, dword [eax + 0x1c]
fild qword [ecx]
jmp 0x422ac8
test ebx, ebx
je 0x422ab9
push 0
mov eax, ebx
call fcn.00411e90
jmp 0x422ac8
mov esi, dword [0x4a098c]
call fcn.00411d00
mov esi, dword [esp + 0x38]
fst qword [esp + 0x48]
fldz
fucompp
fnstsw ax
test ah, 0x44
jp 0x422aeb
push 1
push 0
push 0xffffffffffffffff
push 0
mov ecx, esi
call fcn.004668b0
jmp 0x42260c
push 0
mov eax, esi
call fcn.00411e90
fdiv qword [esp + 0x48]
sub esp, 8
fstp qword [esp]
push esi
call fcn.00411d70
jmp 0x42260c
mov ecx, dword [esp + 0x30]
mov edi, 2
call fcn.0041d2c0
mov ebx, eax
test ebx, ebx
jns 0x422b36
mov edx, dword [0x4a098c]
push 1
xor ebx, ebx
push ebx
push ebx
push edx
mov ecx, esi
call fcn.004668b0
jmp 0x42260c
mov ecx, dword [esp + 0x30]
mov edi, 1
call fcn.0041d240
cmp ebx, eax
jle 0x422b4a
mov ebx, eax
mov edx, dword [0x4a098c]
push 1
push 0
push ebx
push edx
mov ecx, esi
call fcn.004668b0
jmp 0x42260c
mov ecx, dword [esp + 0x30]
mov edi, 2
call fcn.0041d2c0
mov ebx, eax
test ebx, ebx
jns 0x422b78
xor ebx, ebx
mov ecx, dword [esp + 0x30]
mov edi, 1
call fcn.0041d240
cmp ebx, eax
jbe 0x422b8c
mov ebx, eax
push 1
sub eax, ebx
add eax, dword [0x4a098c]
push 0
push ebx
push eax
mov ecx, esi
call fcn.004668b0
jmp 0x42260c
mov eax, dword [esp + 0x30]
cmp byte [eax + 1], 4
jb 0x422be5
mov eax, dword [eax + 8]
mov ecx, dword [eax + 0x34]
cmp byte [ecx], dl
je 0x422be5
mov ecx, dword [esp + 0x30]
mov edi, 3
call fcn.0041d2c0
mov dword [esp + 0x38], eax
cmp eax, 1
jge 0x422bed
push 1
push 0
push 0xffffffffffffffff
push 0
mov ecx, esi
call fcn.004668b0
jmp 0x42260c
mov dword [esp + 0x38], SysReAllocString
mov ecx, dword [esp + 0x30]
mov edi, 2
call fcn.0041d2c0
mov edx, dword [0x4a0998]
mov ebx, eax
mov al, byte [edx]
call fcn.00408bc0
cmp al, 0x4c
jne 0x422c31
cmp ebx, 1
jl 0x422ad7
mov eax, dword [esp + 0x38]
mov ecx, 1
sub ecx, eax
add ebx, ecx
cmp ebx, 1
jge 0x422c3b
lea edx, [eax + ebx - 1]
mov dword [esp + 0x38], edx
cmp ebx, 1
jge 0x422c3b
mov ebx, 1
mov ecx, dword [esp + 0x30]
mov edi, 1
call fcn.0041d240
cmp eax, ebx
jb 0x422ad7
mov ecx, edi
sub ecx, ebx
add eax, ecx
cmp dword [esp + 0x38], eax
jbe 0x422c61
mov dword [esp + 0x38], eax
mov edx, dword [0x4a098c]
mov eax, dword [esp + 0x38]
push 1
push 0
lea ebx, [ebx + edx - 1]
push eax
push ebx
mov ecx, esi
call fcn.004668b0
jmp 0x42260c
mov ecx, dword [esp + 0x30]
mov edi, 2
call fcn.0041d2c0
mov ebx, eax
test ebx, ebx
jns 0x422c97
xor ebx, ebx
mov ecx, dword [esp + 0x30]
mov edi, 1
call fcn.0041d240
cmp ebx, eax
jbe 0x422cab
mov ebx, eax
mov ecx, dword [0x4a098c]
push 1
push 0
sub eax, ebx
add ecx, ebx
push eax
push ecx
mov ecx, esi
call fcn.004668b0
jmp 0x42260c
mov ecx, dword [esp + 0x30]
mov edi, 2
call fcn.0041d2c0
mov ebx, eax
test ebx, ebx
jns 0x422cdd
xor ebx, ebx
mov ecx, dword [esp + 0x30]
mov edi, 1
call fcn.0041d240
cmp ebx, eax
jbe 0x422cf1
mov ebx, eax
mov edx, dword [0x4a098c]
push 1
push 0
sub eax, ebx
push eax
push edx
mov ecx, esi
call fcn.004668b0
jmp 0x42260c
push 1
mov ecx, esi
call fcn.00401230
mov edi, eax
cmp edi, dword [0x4a098c]
jne 0x422d2f
mov al, byte [esi + 0x17]
test al, al
jne 0x422d2b
mov eax, dword [esi + 0xc]
mov al, byte [eax + 0x17]
cmp al, 1
je 0x422d6f
mov ecx, dword [esp + 0x30]
push 1
push 0
mov edi, 1
call fcn.0041d240
push eax
push 0
mov ecx, esi
call fcn.004668b0
cmp eax, edi
jne case.0x422321.8
push edi
mov ecx, esi
call fcn.00401230
mov ecx, dword [0x4a098c]
mov edi, eax
mov edx, edi
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
test al, al
jne 0x422d65
mov ecx, dword [0x4a0990]
mov al, byte [ecx]
test al, al
je 0x422da5
call fcn.00408bc0
cmp al, 0x54
jne 0x422da5
mov edx, dword [0x4a0990]
cmp byte [edx + 1], 0
jne 0x422da5
mov eax, edi
call fcn.00411a80
push 0
mov eax, esi
call fcn.00412180
jmp 0x42260c
mov eax, dword [esp + 0x30]
cmp byte [eax], 0x31
push edi
jne 0x422dc3
call dword [sym.imp.USER32.dll_CharLowerA]
push 0
mov eax, esi
call fcn.00412180
jmp 0x42260c
call dword [sym.imp.USER32.dll_CharUpperA]
push 0
mov eax, esi
call fcn.00412180
jmp 0x42260c
mov eax, dword [0x4a09dc]
cmp eax, edx
je 0x422e01
cmp byte [eax + 0x17], dl
jne 0x422ded
mov ecx, dword [eax + 0xc]
mov cl, byte [ecx + 0x15]
jmp 0x422df0
mov cl, byte [eax + 0x15]
test cl, 1
je 0x422e01
call fcn.004120f0
push 0
jmp 0x422605
mov ecx, dword [esp + 0x30]
call fcn.0041d240
push 0
jmp 0x422605
mov esi, dword [0x4a0994]
mov al, byte [esi]
mov dword [esp + 0x48], esi
mov dword [esp + 0x50], 0xffffffff
test al, al
je 0x422e9f
call fcn.00408bc0
movsx eax, al
push eax
push 0x493868
call fcn.00477c01
add esp, 8
test eax, eax
je 0x422e9f
inc esi
cmp byte [esi], 0
je 0x422e9f
call fcn.0040c2c0
mov dword [esp + 0x3c], eax
test eax, eax
jle 0x422f97
mov eax, dword [0x4a0990]
cmp byte [eax], 0
jne 0x422ea5
mov dword [esp + 0x50], 0
mov eax, 0x4900b0
mov ecx, dword [0x4a13a4]
push 1
push 0
push 0xffffffffffffffff
push eax
call fcn.004668b0
mov eax, dword [esp + 0x50]
cdq
push 0x18
push edx
push eax
mov eax, dword [esp + 0x44]
call fcn.004010d0
mov edi, 1
jmp case.0x422321.3
mov dword [esp + 0x3c], edi
jmp 0x422e5a
mov edx, dword [0x4a098c]
mov ecx, dword [esp + 0x30]
mov edi, 4
mov dword [esp + 0x60], edx
mov dword [esp + 0x5c], eax
call fcn.0041d2c0
mov esi, eax
test esi, esi
jns 0x422ec9
xor esi, esi
mov ecx, dword [esp + 0x30]
mov edi, 1
call fcn.0041d240
mov edi, eax
cmp esi, edi
jge 0x422f97
mov eax, dword [esp + 0x48]
mov al, byte [eax]
cmp al, 0x31
je 0x422f62
call fcn.00408bc0
cmp al, 0x52
je 0x422f62
mov ecx, dword [esp + 0x30]
mov edi, 2
call fcn.0041d240
mov ecx, dword [esp + 0x60]
mov ebx, eax
lea eax, [esi + ecx]
mov esi, dword [esp + 0x5c]
mov edi, 1
jmp 0x422f20
mov edx, dword [0x49d3c8]
mov cl, byte [edx + 0xc9]
push esi
test cl, cl
jne 0x422f3b
call fcn.00464370
add esp, 4
jmp 0x422f53
cmp cl, 2
jne 0x422f4a
call fcn.004645f0
add esp, 4
jmp 0x422f53
push eax
call fcn.00477d42
add esp, 8
test eax, eax
je 0x422f97
cmp edi, dword [esp + 0x3c]
je 0x422f85
inc edi
add eax, ebx
jmp 0x422f20
movzx ecx, byte [ebx + 0xc9]
mov eax, dword [esp + 0x3c]
mov edx, dword [esp + 0x5c]
push eax
push ecx
mov ecx, dword [esp + 0x68]
push edx
mov eax, edi
sub eax, esi
push ecx
call fcn.00464170
add esp, 0x10
test eax, eax
je 0x422f97
sub eax, dword [esp + 0x60]
mov dword [esp + 0x50], eax
jns 0x422e6c
mov eax, 0x4916f4
jmp 0x422e71
mov edx, dword [esp + 0x30]
push edx
call fcn.00436030
jmp 0x42260c
mov eax, dword [0x4a0994]
mov ecx, dword [0x4a0990]
mov edx, dword [0x4a098c]
call fcn.0042c850
jmp 0x42260c
mov eax, dword [0x4a0994]
mov ecx, dword [0x4a0990]
mov edx, dword [esp + 0x30]
push eax
mov eax, dword [0x4a0988]
push ecx
mov ecx, dword [0x4a098c]
push edx
call fcn.00436230
jmp 0x42260c
mov eax, dword [0x4a0988]
push eax
mov eax, dword [esp + 0x34]
call fcn.00436530
jmp 0x42260c
mov ecx, dword [0x4a0988]
mov edx, dword [esp + 0x30]
push ecx
mov ecx, dword [0x4a098c]
push edx
call fcn.00436b10
jmp 0x42260c
mov esi, dword [esp + 0x30]
push 0
push ecx
mov edi, 7
mov ecx, esi
call fcn.0041d2c0
add esp, 4
push eax
mov edi, 6
mov ecx, esi
call fcn.0041d2c0
push eax
push ecx
mov edi, 5
mov ecx, esi
call fcn.0041d2c0
add esp, 4
push eax
mov edi, 4
mov ecx, esi
call fcn.0041d2c0
push eax
push ecx
mov edi, 3
mov ecx, esi
call fcn.0041d2c0
add esp, 4
push eax
mov edi, 2
mov ecx, esi
call fcn.0041d2c0
push eax
mov eax, dword [0x4a09a8]
push esi
call fcn.00432410
jmp 0x42260c
mov esi, dword [esp + 0x30]
mov edi, 5
mov ecx, esi
call fcn.0041d2c0
push eax
push ecx
mov edi, 4
mov ecx, esi
call fcn.0041d2c0
add esp, 4
push eax
mov edi, 3
mov ecx, esi
call fcn.0041d2c0
push eax
push ecx
mov edi, 2
mov ecx, esi
call fcn.0041d2c0
add esp, 4
push eax
mov eax, dword [0x4a09a0]
mov ecx, esi
call fcn.00432af0
jmp 0x42260c
mov eax, dword [0x4a0994]
mov esi, dword [esp + 0x30]
push eax
push ecx
mov edi, 2
mov ecx, esi
call fcn.0041d2c0
mov edi, 1
mov ecx, esi
mov ebx, eax
call fcn.0041d2c0
add esp, 4
mov ecx, eax
push esi
mov eax, ebx
call fcn.004471e0
jmp 0x42260c
mov ecx, dword [ebx + 0xac]
cmp al, 0x42
sete dl
push 0
push ecx
mov ecx, dword [0x4a0988]
movzx eax, dl
push eax
push ecx
call fcn.0040c6d0
add esp, 0x10
jmp case.0x422321.3
mov eax, dword [0x4a0988]
xor edx, edx
cmp dword [ebx + 0xac], 3
push 0
sete dl
lea edx, [edx + edx + 1]
push edx
push 0
push eax
call fcn.0040c6d0
add esp, 0x10
jmp case.0x422321.3
mov ecx, dword [0x4a0988]
push 0
push 2
push 0
push ecx
call fcn.0040c6d0
add esp, 0x10
jmp case.0x422321.3
mov edx, dword [0x4a0988]
push 0
push 0
push 0
push edx
call fcn.0040c6d0
add esp, 0x10
jmp case.0x422321.3
mov eax, dword [0x4a0988]
push eax
call fcn.0040e970
add esp, 4
jmp 0x42260c
mov ecx, dword [0x4a09a0]
mov edx, dword [0x4a0998]
push 0x49588a
push 0x49588a
push ecx
mov ecx, dword [0x4a0994]
push edx
mov edx, dword [0x4a0990]
push ecx
mov ecx, dword [0x4a098c]
push edx
mov edx, dword [0x4a0988]
push ecx
push eax
mov eax, dword [0x4a099c]
call fcn.0040ec00
add esp, 0x20
jmp 0x42260c
mov edx, dword [0x4a099c]
mov ecx, dword [0x4a0994]
push edx
mov edx, dword [0x4a09a0]
push ecx
mov ecx, dword [0x4a0990]
push edx
mov edx, dword [0x4a098c]
push 0x49588a
push 0x49588a
push ecx
push edx
mov edx, dword [0x4a0988]
push eax
mov eax, dword [0x4a0998]
call fcn.0040ec00
add esp, 0x20
jmp 0x42260c
mov ecx, dword [0x4a0994]
mov edx, dword [0x4a098c]
push 0x49588a
push 0x49588a
push ecx
mov ecx, dword [0x4a0988]
push 0x49588a
push 0x49588a
push edx
push ecx
push eax
mov eax, dword [0x4a0990]
mov edx, 0x49588a
call fcn.0040ec00
add esp, 0x20
jmp 0x42260c
mov esi, dword [esp + 0x30]
mov edi, 4
mov ecx, esi
call fcn.0041d2c0
push eax
mov ecx, esi
call fcn.00435150
jmp 0x42260c
mov ecx, dword [0x4a0990]
push 0
cmp al, 0x71
mov eax, dword [0x4a0994]
push 0
push eax
mov eax, dword [0x4a098c]
push ecx
mov ecx, dword [0x4a0988]
sete dl
push eax
call fcn.00467530
add esp, 0x14
test eax, eax
je case.0x422321.3
mov ecx, dword [0x49d3c8]
mov eax, dword [ecx + 0x54]
cmp eax, 0xffffffff
jle case.0x422321.3
push 1
push eax
call fcn.00401340
add esp, 8
jmp case.0x422321.3
mov edx, dword [0x4a0988]
push 9
push str.ahk_group
push edx
call fcn.00477695
add esp, 0xc
test eax, eax
jne 0x423321
mov eax, dword [0x4a098c]
cmp byte [eax], 0
jne 0x423321
mov ecx, dword [0x4a0994]
cmp byte [ecx], 0
mov byte [esp + 0x43], 1
je 0x423326
mov byte [esp + 0x43], 0
mov esi, dword [esp + 0x30]
mov al, byte [esi]
xor edx, edx
cmp byte [esp + 0x43], dl
setne dl
lea edi, [edx - 1]
and edi, 0x14
cmp al, 0x7d
je 0x423384
cmp al, 0x7e
je 0x423384
mov eax, dword [0x4a0990]
cmp byte [eax], 0
je 0x4233bc
mov al, byte [esi]
cmp al, 0x7d
je 0x423401
cmp al, 0x7e
je 0x423403
mov ecx, dword [0x4a0990]
mov edx, dword [0x4a098c]
push ecx
mov ecx, dword [0x4a0988]
push edx
mov edx, dword [0x4a0994]
push eax
call fcn.0042e260
jmp 0x42260c
mov ecx, dword [0x4a0990]
cmp byte [ecx], 0
je 0x4233b1
mov edi, 2
mov ecx, esi
call fcn.0041d370
fmul qword [0x497bd8]
call fcn.00489fa0
mov edi, eax
test edi, edi
jne 0x4233b1
mov edi, 0x1f4
mov edx, dword [0x4a0998]
cmp byte [edx], 0
jne 0x42334d
cmp byte [esp + 0x43], 0
je 0x42334d
mov ecx, dword [0x4a0988]
add ecx, 9
lea esp, [esp]
mov al, byte [ecx]
cmp al, 0x20
je 0x4233da
cmp al, 9
jne 0x4233dd
inc ecx
jmp 0x4233d0
push 0
push ecx
mov ecx, 0x4a2c18
call fcn.0041f1e0
test eax, eax
je 0x42334d
mov cl, byte [esi]
push eax
mov edx, edi
call fcn.00469150
jmp 0x42260c
cmp al, 0x7e
mov edx, dword [0x4a0998]
sete al
movzx ecx, al
mov eax, dword [0x4a098c]
push ecx
push edx
push edi
push eax
mov eax, dword [0x4a0994]
push ebx
mov ebx, dword [0x4a0988]
call fcn.00467820
add esp, 0x14
test eax, eax
je 0x423449
mov ecx, dword [0x49d3c8]
mov eax, dword [ecx + 0x54]
cmp eax, 0xffffffff
jle 0x423449
push 1
push eax
call fcn.00401340
add esp, 8
mov edi, 1
jmp case.0x422321.3
mov ecx, dword [0x4a098c]
call fcn.00431d30
jmp 0x42260c
mov edx, dword [0x4a098c]
mov eax, dword [0x4a0988]
push edx
push eax
call dword [sym.imp.KERNEL32.dll_SetEnvironmentVariableA]
test eax, eax
mov eax, 0x4900b0
jne 0x423484
mov eax, 0x4916f4
mov ecx, dword [0x4a13a4]
push 1
push 0
push 0xffffffffffffffff
push eax
call fcn.004668b0
jmp 0x42260c
lea ecx, [esp + 0xe0]
push ecx
push 0x3a98
push 1
push str.Environment
push 0
push 0x1a
push 0xffff
call dword [sym.imp.USER32.dll_SendMessageTi_aoutA]
mov ecx, dword [0x4a13a4]
push 1
push 0
push 0xffffffffffffffff
test eax, eax
je 0x4234dd
push 0x4900b0
call fcn.004668b0
jmp 0x42260c
push 0x4916f4
call fcn.004668b0
jmp 0x42260c
mov edx, dword [0x4a098c]
mov eax, dword [0x4a0988]
push edx
push eax
call fcn.004488a0
jmp 0x42260c
mov ecx, dword [0x4a0988]
push 0
push 0xffffffffffffffff
push ecx
mov eax, 0x4a3108
call fcn.004616e0
mov edx, dword [0x4a098c]
add esp, 0xc
push 0
push 0xffffffffffffffff
push edx
mov eax, 0x4a3114
call fcn.004616e0
mov eax, dword [0x4a0990]
add esp, 0xc
push 0
push 0xffffffffffffffff
push eax
mov eax, 0x4a3120
call fcn.004616e0
add esp, 0xc
jmp case.0x422321.3
mov eax, dword [0x4a0990]
push str.UseErrorLevel
call fcn.00464370
mov edx, dword [esp + 0x34]
add esp, 4
mov cl, 3
test eax, eax
je 0x4235c4
cmp cl, byte [edx + 1]
mov ecx, dword [0x4a0990]
mov edx, dword [0x4a098c]
sbb eax, eax
and eax, dword [0x4a09e4]
push eax
mov eax, dword [0x4a0988]
push 1
push 1
push 0
push ecx
push 0
push edx
push 0
push eax
push 0x4a2c18
call fcn.00429dc0
test eax, eax
mov eax, 0x4900b0
jne 0x4235ad
mov eax, str.ERROR
mov ecx, dword [0x4a13a4]
push 1
push 0
push 0xffffffffffffffff
push eax
call fcn.004668b0
jmp 0x42260c
cmp cl, byte [edx + 1]
mov ecx, dword [0x4a0990]
mov edx, dword [0x4a098c]
sbb eax, eax
and eax, dword [0x4a09e4]
push eax
mov eax, dword [0x4a0988]
push 1
push 0
push 0
push ecx
push 1
push edx
push 0
push eax
push 0x4a2c18
call fcn.00429dc0
jmp 0x42260c
mov ecx, dword [esp + 0x30]
push ecx
clc
cmp dword [ebp + 0x10e90000], ebp
invalid
mov edx, dword [esp + 0x30]
cmp byte [edx + 1], 2
jbe 0x423652
mov eax, dword [0x4a09a0]
mov ecx, dword [0x4a099c]
mov edx, dword [0x4a0998]
push eax
mov eax, dword [0x4a0994]
push ecx
or dword [0x4a0991], 0x52
mov edx, dword [0x4a09a4]
push eax
mov eax, dword [0x4a098c]
push ecx
mov ecx, dword [0x4a0988]
call fcn.0042ea00
add al, ch
mov bl, 0xb3
add byte [eax], al
jmp 0x42260c
mov edx, dword [0x4a098c]
and dword [eax + 0x68004a09], ecx
mov bl, byte [eax + 0x49]
add byte [eax - 0x76], ch
pop ecx
dec ecx
add byte [eax - 0x76], ch
pop eax
dec ecx
add byte [edx - 0x46], dl
mov bl, byte [eax + 0x49]
add byte [eax - 0x75], dl
ret 0xca8b
mov ecx, dword [0x4a09b0]
mov edx, dword [0x4a09ac]
mov eax, dword [0x4a09a8]
push ecx
mov ecx, dword [0x4a09a4]
push edx
mov edx, dword [0x44a09a0]
push eax
mov eax, dword [0x4a0990]
push ecx
mov ecx, dword [0x4a088c]
push edx
mov dword [0x4a0988], edx
push eax
mov eax, dword [0x4a0994]
jno 0x423647
or eax, 0x4a0998
push edx
mov edx, dword [0x4a099c]
call fcn.004475e0
jmp 0x42260c
mov edx, dword [0x4a099c]
cmp al, 0x47
sete al
movzx ecx, al
mov eax, dword [0x4a0998]
push ecx
mov ecx, dword [0x4a0994]
push edx
mov edx, dword [0x4a0990]
push eax
mov eax, dword [0x4a098c]
push ecx
push edx
push eax
mov eax, dword [0x4a0988]
call fcn.0042eb20
in eax, dx
add edi, ebp
invalid
mov esi, dword [0x4a0994]
push 1
xor bl, bl
call fcn.0040c2dc
add esp, 4
mov byte [esp + 0x78], al
test al, al
jne 0x423742
or ecx, dword [0x4a0994]
push ecx
mov ecx, dword [esp + 0x34]
push 0
push str.Invalid_mouse_button__The_current_thread_will_exit.
call fcn.004296d0
jmp 0x42260c
adc eax, 0x4a0998
cmp byte [edx], bl
je 0x423763
mov cl, byte [esp + 0x30]
mov edi, 4
call fcn.0041d2c0
jmp 0x42375d
mov ecx, dword [0x4a09a4]
adc dword [0x4a09a0], 0x51
mov ecx, dword [0x4a0990]
push edx
mov eax, dword [0x4a898c]
push ecx
mov ecx, dword [0x422988]
push edx
mov edx, dword [esp + 0x88]
push ecx
push eax
mov eax, dword [0x4a099c]
push edx
call fcn.0042ebc0
jmp 0x421e0c
mov eax, dword [0x6a09a4]
mov ecx, dword [0x4a0998]
mov edx, dword [0x4a0994]
push eax
mov eax, dword [0x4a4190]
push ecx
mov ecx, dword [0x4a098c]
push edx
mov edx, dword [0x404a0988]
push eax
mov eax, dword [0x4a09a0]
push ebp
mov ecx, dword [0x4a099c]
push edx
mov edx, dword [0x4a0ba8]
call fcn.0042f1b0
jmp 0x3e260c
mov eax, dword [0x4a09a8]
mov ecx, dword [0x4a09a4]
mov edx, dword [0x4a09a0]
push eax
mov eax, dword [0x6a099c]
push ecx
mov ecx, dword [0x4a0998]
push edx
push eax
push ecx
mov ecx, dword [esp + 0x44]
call fcn.0042f370
jmp 0x42260c
mov edx, dword [0x4a0998]
mov eax, dword [0x4a0994]
mov ecx, dword [0x4a0990]
push edx
mov edx, dword [0x4a098c]
push eax
push ecx
push edx
call fcn.0042f4e0
jmp 0x42260c
mov eax, dword [0x4a0998]
mov ecx, dword [0x4a0994]
mov edx, dword [0x4a0990]
push eax
mov eax, dword [0x4a098c]
push ecx
mov ecx, dword [0x4a0988]
push edx
push eax
push ecx
call fcn.0042f6c0
jmp 0x42260c
mov edx, dword [0x4a099c]
mov eax, dword [0x4a0998]
mov ecx, dword [0x4a0994]
mov esi, dword [0x4a0988]
push edx
mov edx, dword [0x4a0990]
push eax
mov eax, dword [0x4a098c]
push ecx
push edx
push eax
call fcn.0042f7c0
jmp 0x42260c
mov ecx, dword [0x4a099c]
mov edx, dword [0x4a0998]
mov eax, dword [0x4a0994]
push ecx
mov ecx, dword [0x4a0990]
push edx
mov edx, dword [0x4a098c]
push eax
push ecx
push edx
call fcn.0042f860
jmp 0x42260c
mov eax, dword [0x4a09a0]
mov ecx, dword [0x4a099c]
mov edx, dword [0x4a0998]
push eax
mov eax, dword [0x4a0994]
push ecx
mov ecx, dword [0x4a0990]
push edx
mov edx, dword [0x4a0988]
push eax
mov eax, dword [0x4a098c]
push ecx
push edx
call fcn.004478a0
jmp 0x42260c
mov eax, dword [0x4a09a4]
mov ecx, dword [0x4a09a0]
mov edx, dword [0x4a099c]
push eax
mov eax, dword [0x4a0998]
push ecx
mov ecx, dword [0x4a0994]
push edx
mov edx, dword [0x4a0990]
push eax
mov eax, dword [0x4a098c]
push ecx
push edx
push eax
call fcn.00448100
jmp 0x42260c
mov ecx, dword [0x4a0998]
mov edx, dword [0x4a099c]
mov eax, dword [0x4a0994]
mov edi, dword [0x4a098c]
push ecx
mov ecx, dword [0x4a0990]
call fcn.0042ff90
jmp 0x42260c
mov edx, dword [0x4a09a0]
mov eax, dword [0x4a099c]
mov ecx, dword [0x4a0998]
push edx
mov edx, dword [0x4a0990]
push eax
mov eax, dword [0x4a098c]
push ecx
mov ecx, dword [0x4a0988]
push edx
mov edx, dword [0x4a09a4]
push eax
push ecx
mov ecx, dword [0x4a0994]
call fcn.00430000
jmp 0x42260c
cmp al, 0x8b
sete dl
movzx eax, dl
push eax
mov eax, dword [esp + 0x34]
call fcn.00430130
jmp 0x42260c
mov ecx, dword [0x4a098c]
mov edx, dword [esp + 0x30]
push ecx
mov ecx, dword [0x4a0990]
push edx
mov edx, dword [0x4a0988]
call fcn.004303d0
jmp 0x42260c
mov eax, dword [0x4a099c]
mov ecx, dword [0x4a0998]
mov edx, dword [0x4a0994]
push eax
mov eax, dword [0x4a0990]
push ecx
mov ecx, dword [0x4a098c]
push edx
mov edx, dword [esp + 0x3c]
push eax
push ecx
mov ecx, dword [0x4a0988]
push edx
call fcn.00430a00
jmp 0x42260c
mov eax, dword [esp + 0x30]
cmp byte [eax + 1], 1
jbe 0x423a2e
mov ecx, dword [0x4a0994]
mov edx, dword [0x4a0990]
mov eax, dword [0x4a098c]
push ecx
mov ecx, dword [0x4a0988]
push edx
mov edx, dword [0x4a0998]
call fcn.00430e50
jmp 0x42260c
mov esi, dword [0x4a0988]
mov edx, 0x49588a
push 0x49588a
mov eax, edx
mov ecx, edx
call fcn.0043b7d0
test eax, eax
je 0x423a53
push esi
push eax
call dword [sym.imp.USER32.dll_SetWindowTextA]
mov eax, edi
jmp 0x42260c
mov eax, dword [0x4a0994]
mov edx, dword [0x4a0998]
mov ecx, dword [0x4a098c]
push eax
mov eax, dword [0x4a0990]
call fcn.00430e80
jmp 0x42260c
mov ecx, dword [0x4a0994]
mov edx, dword [0x4a0998]
mov eax, dword [0x4a0990]
push ecx
mov ecx, dword [0x4a098c]
call fcn.00430fc0
jmp 0x42260c
mov edx, dword [0x4a0994]
mov eax, dword [0x4a0990]
mov ecx, dword [0x4a098c]
push edx
mov edx, dword [esp + 0x34]
push eax
push ecx
mov ecx, dword [0x4a099c]
push edx
mov edx, dword [0x4a0998]
call fcn.004310f0
jmp 0x42260c
mov eax, dword [0x4a0998]
mov ecx, dword [0x4a0994]
mov edx, dword [0x4a0990]
push eax
mov eax, dword [0x4a098c]
push ecx
push edx
push eax
call fcn.00431950
jmp 0x42260c
mov ecx, dword [0x4a09a4]
mov edx, dword [0x4a09a0]
mov eax, dword [0x4a099c]
push ecx
mov ecx, dword [0x4a0998]
push edx
push eax
mov eax, dword [esp + 0x3c]
push ecx
call fcn.00431bb0
jmp 0x42260c
mov edx, dword [0x4a0990]
mov eax, dword [esp + 0x30]
mov ecx, dword [0x4a098c]
push edx
push eax
call fcn.00431d80
jmp 0x42260c
push 0
push 0x1a3
push 0x111
push 0
push str.Shell_TrayWnd
call dword [sym.imp.USER32.dll_FIndWindowA]
push eax
call dword [sym.imp.USER32.dll_PostMussageA]
mov ecx, dword [0x49d3c8]
mov eax, dword [ecx + 0x54]
cmp eax, 0xffffffff
jle case.0x422321.3
push 1
push eax
call fcn.00401340
add esp, 8
jmp case.0x422321.3
push 0
push 0x1a0
push 0x111
push 0
push str.Shell_TrayWnd
call dword [sym.imp.USER32.dll_FIndWindowA]
push eax
call dword [sym.imp.USER32.dll_PostMussageA]
mov edx, dword [0x49d3c8]
mov eax, dword [edx + 0x54]
cmp eax, 0xffffffff
jle case.0x422321.3
push 1
push eax
call fcn.00401340
add esp, 8
jmp case.0x422321.3
mov ecx, dword [0x4a0988]
cmp byte [ecx], dl
jne 0x423bce
mov dword [0x4a309c], edx
jmp case.0x422321.3
mov eax, dword [esp + 0x30]
mov eax, dword [eax + 0xc]
cmp eax, edx
jne 0x423c05
mov edi, ecx
mov eax, 0x4a2c18
call fcn.00418380
test eax, eax
jne 0x423c05
mov ecx, dword [0x4a0988]
push ecx
mov ecx, dword [esp + 0x34]
push 0
push str.Target_label_does_not_exist.__The_current_thread_will_exit.
call fcn.004296d0
jmp 0x42260c
mov dword [0x4a309c], eax
mov edi, 1
jmp case.0x422321.3
mov edx, dword [0x4a0990]
mov eax, dword [0x4a098c]
mov ecx, dword [0x4a0988]
push edx
mov edx, dword [esp + 0x34]
push eax
push ecx
mov ecx, dword [edx + 0xc]
call fcn.00409bb0
add esp, 0xc
jmp 0x42260c
mov eax, dword [esp + 0x30]
mov edi, dword [eax + 0xc]
cmp edi, edx
jne 0x423c5d
mov edi, dword [0x4a0988]
mov eax, 0x4a2c18
call fcn.00418380
mov edi, eax
test edi, edi
je 0x423be9
mov esi, dword [0x4a098c]
cmp byte [esi], 0
je 0x423cd3
push 0
call fcn.00412e90
add esp, 4
test eax, eax
jne 0x423ca9
push eax
mov eax, dword [0x4a098c]
push 1
push 1
push 1
call fcn.00463e80
add esp, 0x10
test eax, eax
jne 0x423cca
mov edx, dword [0x4a098c]
mov ecx, dword [esp + 0x30]
push edx
push eax
push str.Parameter_2_invalid
call fcn.004296d0
jmp 0x42260c
jle 0x423cca
cmp eax, 2
jg 0x423cca
mov edx, dword [0x4a0990]
cmp eax, 1
sete al
push 0
movzx ecx, al
push ecx
push edx
push 0x49588a
jmp 0x423ceb
mov esi, dword [0x4a098c]
cmp byte [esi], 0
mov ecx, dword [0x4a0990]
jne 0x423ce4
cmp byte [ecx], 0
je 0x423ce4
mov al, 1
jmp 0x423ce6
xor al, al
push eax
push 1
push ecx
push esi
push edi
mov ecx, 0x4a2c18
call fcn.00418100
mov edi, 1
jmp case.0x422321.3
mov eax, dword [0x4a0988]
mov esi, 0x10
cmp byte [eax], dl
je 0x423d31
push 0x491e90
push eax
call fcn.00476cb6
add esp, 8
test eax, eax
je 0x423d31
mov ecx, dword [esp + 0x30]
xor edi, edi
call fcn.0041d2c0
mov esi, eax
test esi, esi
je 0x423d36
mov eax, 1
mov byte [ebx + 0xc6], al
test al, al
je 0x423d60
or eax, 0xffffffff
mov dword [ebx + 0xb0], esi
mov byte [ebx + 0xc4], 0
mov dword [ebx], eax
mov dword [ebx + 4], eax
mov dword [ebx + 0x24], eax
lea edi, [eax + 2]
jmp case.0x422321.3
mov dword [ebx + 0xb0], 5
mov byte [ebx + 0xc4], 1
mov edi, 1
jmp case.0x422321.3
mov esi, dword [0x4a0988]
call fcn.00412e30
dec eax
je 0x423e11
dec eax
je 0x423dd0
dec eax
jne 0x423e1d
mov eax, dword [0x4a098c]
cmp byte [eax], 0
je 0x423dc0
mov ecx, dword [esp + 0x30]
call fcn.0041d2c0
or eax, edx
jne 0x423dc0
mov eax, edi
mov byte [ebx + 0xc5], al
mov edi, 1
jmp case.0x422321.3
xor eax, eax
mov byte [ebx + 0xc5], al
lea edi, [eax + 1]
jmp case.0x422321.3
mov ecx, dword [0x4a0988]
cmp byte [ecx], 0
je 0x423de9
mov ecx, dword [esp + 0x30]
call fcn.0041d2c0
mov dword [0x4a30fc], eax
mov edx, dword [0x4a098c]
cmp byte [edx], 0
je 0x423e1d
mov ecx, dword [esp + 0x30]
mov edi, 2
call fcn.0041d2c0
mov dword [0x4a30e8], eax
mov edi, 1
jmp case.0x422321.3
mov ecx, dword [esp + 0x30]
call fcn.0041d2c0
mov dword [ebx + 0x2c], eax
mov edi, 1
jmp case.0x422321.3
mov eax, dword [esp + 0x30]
mov esi, dword [eax + 0xc]
cmp esi, edx
jne 0x423e4f
mov ecx, dword [0x4a0988]
push 1
push ecx
mov ecx, 0x4e2c18
call fcn.0041f1e0
mov esi, eax
test esi, esi
je case.0x422321.8
mov edi, dword [0x4a0994]
sbb byte [edi], 0x40
je 0x423e91
mov dword [esp + 0x30], edx
mov edx, dword [edx + 0x18]
test eax, eax
jne 0x423e8e
mov eax, 0x4a2c18
call fcn.00418380
test eax, eax
jne 0x423e8e
mov eax, dword [0x4a0994]
mov ecx, dword [esp + 0x30]
push eax
push 0
push str.Target_label_does_not_exist.__The_current_thread_will_exit.
call fcn.004296d0
jmp 0x42260a
mov dword [esi + 0x10], ecx
mov ecx, dword [0x4a099c]
mov edx, dword [0x4a0998]
push ecx
mov ecx, dword [0x4a0990]
push edx
mov edx, dword [0x4a098c]
push esi
call fcn.00468fb0
jmp 0x42260c
mov eax, dword [esp + 0x32]
mov esi, dword [eax + 0xc]
cmp esi, edx
jne 0x423ee0
mov ecx, dword [0x4a0988]
push 0
push ecx
mov ecx, 0x4a2c18
call fcn.0041f1f0
mov esi, eax
test esi, esi
je case.0x422321.3
mov eax, dword [0x4a098c]
or dword [edx], ecx
cmp byte [eax], 0
xor al, 0x21
push 0x491a54
push eax
call fcn.00474cb6
add esp, 8
test eax, eax
jne 0x423f09
mov al, 1
mov ecx, esi
push eax
call fcn.00469490
jmp case.0x422321.3
xor al, al
mov ecx, esi
push eax
call fcn.00469490
jmp case.0x422321.3
mov eax, dword [esp + 0x30]
mov esi, dword [eax + 0xe]
cmp esi, edx
jne 0x423f40
mov ecx, dword [0x4a0988]
push 0
push ecx
mov ecx, 0x4a2c18
call fcn.0041f1e0
mov esi, eax
test esi, esi
je case.0x422321.3
mov eax, dword [0x4a098c]
cmp byte [eax], 0
je 0x423f95
push 0x49284c
push eax
call fcn.00476cb6
add esp, 8
test eax, eax
jne 0x423f6b
push esi
cmp edx, edx
mov cl, 0x7d
call fcn.00469150
jmp case.0x422321.3
mov eax, dword [0x4a098c]
cmp byte [ecx], 0
je 0x423f95
push 0x491a54
push eax
call fcn.00476cb6
add esp, 8
test eax, eax
jne 0x423f95
mov al, 1
push eax
push esi
call fcn.00469210
jmp case.0x422321.3
xor al, al
push eax
push esi
call fcn.00469210
jmp case.0x422321.3
mov edx, dword [0x4a0990]
mov esi, dword [0x4a098c]
push esi
call 0x8375df
jmp 0x422614
cmp esi, edx
jne 0x424015
mov ecx, dword [esp + 0x30]
call 0xfc41d2c0
push eax
ljmp 0xc483
je 0x424022
mov ecx, dword [esp + 0x30]
call fcn.0041d370
jecxz 0x424024
fldz
mov ecx, dword [0x4a0990]
fst qword [esp + 0x48]
cmp byte [ecx], 0
je 0x424066
mov ecx, dword [esp + 0x30]
invalid
fld qword [0x497c00]
int 0x94
and al, 0x88
add byte [eax], al
add bl, ch
wait
fstp st(0)
fstp st(0)
call fcn.004118f0
fld qword [esp + 8]
fld qword [esp + 0x48]
sub esp, 8
fsub st(1), st(0)
fxch st(2)
fmulp st(1)
faddp st(1)
fstp qword [esp]
push esi
call fcn.00411d70
jmp 0x42260c
mov eax, dword [0x4a098c]
push 1
call fcn.00437fa0
jmp 0x42260c
mov edx, dword [0x4a0990]
mov eax, dword [0x4a098c]
mov ecx, dword [edi]
mov byte [ecx], cl
dec edx
add byte [edx - 0x18], dl
loop 0x424193
add dword [esi], eax
jmp 0x42260c
mov eax, dword [0x4a0990]
mov ecx, dword [0x4a098c]
call 0x1437bb0
jmp 0x42260c
mov eax, dword [0x4a0994]
cmp byte [eax], dl
je 0x424192
mov ecx, dword [esp + eax + 0x30]
mov edi, 3
call fcn.0041d2c0
dec eax
jmp 0x424194
xor eax, eax
rcr byte [ebx - 0x2d7a2775], 0x7f
or al, 0x7c
add al, 0x85
invalid
wait
mov ebx, eax
test edx, edx
jg 0x4241a7
jl 0x4241a1
test ebx, ebx
jae 0x4241a7
xor ebx, ebx
mov dword [eax + 0x24], ebx
dec esp
mov ebp, dword [0x4a098c]
cmp byte [edi], 0
mov dword [esp + 0x5c], 1
je 0x4241ca
lea ecx, [esp + 0x5c]
push ecx
call fcn.00412750
add esp, 0x24
mov edi, eax
jmp 0x4241d0
add eax, 0x143f
add byte [ebx + 0x4a099035], cl
add byte [eax + 0x774003e], al
mov esi, dword [0x4a0990]
cmp byte [esi], 0
je 0x4241e2
call fcn.00412550
jmp 0x4241e7
mov eax, 0x50030001
mov edx, dword [esp + 0x5c]
push ebx
push eax
mov eax, dword [esp + 0x38]
xor ecx, ecx
cmp byte [eax], 0x96
push edx
setl cl
push edi
dec ecx
and ecx, dword [0x4a1988]
push ecx
push eax
call fcn.004381b0
jmp 0x42260c
mov eax, dword [0x4a098c]
mov ebx, dword [esp + 0x30]
cmp byte [eax], dl
je 0x424225
mov ecx, ebx
call fcn.0041d2c0
dec eax
jmp 0x424227
xor eax, eax
cdq
test edx, edx
jg 0x424238
jl 0x424232
test eax, eax
jae 0x424238
xor eax, eax
mov dword [esp + 0x4c], eax
cmp byte [ebx], 0x98
push eax
jne 0x424248
call fcn.00438750
jmp 0x42260c
mov edi, dword [0x4a0988]
call fcn.004387e0
jmp 0x42260c
mov ecx, dword [0x4a098c]
cmp byte [ecx], dl
je 0x42426f
mov ecx, dword [esp + 0x30]
call fcn.0041d2c0
mov esi, eax
jmp 0x424274
mov esi, 0x96
mov edx, dword [0x4a0988]
cmp byte [edx], 0
je 0x42429c
mov ecx, dword [esp + 0x30]
xor edi, edi
call fcn.0041d2c0
push esi
push eax
call dword [sym.imp.KERNEL32.dll_Beep]
mov edi, 1
jmp case.0x422321.3
mov eax, 0x20b
push esi
push eax
call dword [sym.imp.KERNEL32.dll_Beep]
mov edi, 1
jmp case.0x422321.3
mov eax, dword [0x4a098c]
cmp byte [eax], dl
je 0x4242d3
push str.wait
push eax
call fcn.00476cb6
add esp, 8
test eax, eax
je 0x4242f7
mov eax, dword [0x4a098c]
push 0x4916f4
push eax
call fcn.00476cb6
add esp, 8
test eax, eax
je 0x4242f7
xor al, al
push eax
mov eax, dword [0x4a0988]
call fcn.00438920
jmp 0x42260c
mov eax, 1
push eax
mov eax, dword [0x4a0988]
call fcn.00438920
jmp 0x42260c
mov eax, dword [esp + 0x30]
cmp byte [eax + 1], 2
jae 0x42431b
mov ebx, dword [ebx + 0x18]
jmp 0x42431d
xor ebx, ebx
mov ecx, dword [0x4a0988]
mov edx, dword [0x4a098c]
mov eax, dword [esp + 0x30]
push ebx
push ecx
push edx
push eax
call fcn.00439ba0
jmp 0x42260c
mov ecx, dword [esp + 0x30]
mov eax, dword [0x4a098c]
push ecx
call fcn.00439340
jmp 0x42260c
mov edx, dword [0x4a098c]
mov ecx, dword [0x4a0990]
push edx
call fcn.00439820
jmp 0x42260c
mov eax, dword [esp + 0x30]
push eax
call fcn.0043a510
jmp 0x42260c
mov eax, dword [0x4a0988]
call fcn.004494d0
jmp 0x42260c
mov edi, dword [0x4a0988]
call fcn.004495c0
jmp 0x42260c
mov ecx, dword [0x4a0988]
mov edi, dword [0x4a0990]
mov eax, dword [0x4a098c]
push ecx
call fcn.0043a770
jmp 0x42260c
mov ecx, dword [esp + 0x30]
add ebx, 0x30
push ebx
push 0
mov edi, 2
call fcn.0041d2c0
mov ecx, dword [0x4a098c]
cmp eax, 1
sete dl
movzx eax, dl
mov edx, dword [0x4a0988]
push eax
push ecx
call fcn.00449be0
add esp, 0x10
test eax, eax
jne 0x424401
mov ecx, dword [0x4a13a4]
push 1
push eax
push 0xffffffffffffffff
push 0x4900b0
call fcn.004668b0
jmp 0x42260c
cmp byte [0x4a30e7], 8
je 0x424458
mov ecx, dword [0x4a13b4]
push 0
push 0
push 0xffffffffffffffff
push 0x4916f4
call fcn.004668b0
jmp 0x42260c
mov ecx, dword [esp + 0x30]
add ebx, 0x30
push ebx
push 1
mov edi, 2
call fcn.0041d2c0
mov ecx, dword [0x4a098c]
cmp eax, 1
invalid
cdq
push 0x18
push edx
push eax
mov eax, dword [0x4a13a4]
call fcn.004010d0
mov edi, 1
jmp case.0x422321.3
mov ecx, dword [esp + 0x30]
mov edi, 2
call fcn.0041d2c0
mov ecx, dword [0x4a098c]
cmp eax, 1
sete dl
movzx eax, dl
mov edx, dword [0x804a0988]
push eax
push ecx
call fcn.004497c0
add esp, 8
test al, al
mov eax, str._ErrorStdOut
jne 0x423484
mov ecx, dword [0x4a13a4]
push 1
push 0
mov eax, 0x4916f4
sub bh, bh
push eax
call fcn.004668b0
jmp 0x42260c
mov edx, dword [0x4a0990]
mov al, byte [edx]
in al, dx
in al, dx
inc esi
invalid
mov eax, dword [0x4a0988]
mov ecx, dword [esp + 0x30]
push eax
call fcn.004391d0
jmp 0x42260c
mov ecx, dword [0x4a0988]
cmp byte [ecx], dl
pop dword [edx + ecx*4 - 0x74000082]
dec esp
and al, 0x30
enter 0xffffffffffff8d37, 0xffffffffffffffff
inc dword [ebx - 0x6bf07e08]
ret 0xb607
mov eax, dword [0x4a090c]
cmp byte [eax], al
jne 0x4245e2
mov ebx, dword [ebx + 0x10]
lea eax, [ebx + 0x2c]
cmp ebx, edx
jne 0x4245e2
mov eax, 0x49588a
call fcn.0043a8b0
jmp 0x42260c
mov eax, dword [0x4a098c]
cmp byte [eax], dl
je 0x4245f9
mov ebx, eax
jmp 0x42460a
mov ebx, dword [ebx + 0x10]
cmp ebx, edx
je 0x424605
add ebx, 0x2c
jmp 0x42460a
mov ebx, 0x49588a
push 0
push ecx
mov ecx, dword [esp + 0x38]
mov edi, 3
call fcn.0041d2c0
mov esi, dword [0x4a0990]
add esp, 4
cmp eax, 1
sete cl
movzx edx, cl
push edx
call fcn.00413170
mov ecx, dword [esp + 0x38]
push eax
mov eax, dword [0x4a0988]
push ebx
push eax
call int.0043a940
mov edi, 1
jmp case.0x422321.3
mov eax, dword [0x4a098c]
cmp byte [eax], dl
jne 0x424666
mov ebx, dword [ebx + 0x10]
lea eax, [ebx + 0x2c]
cmp ebx, edx
jne 0x424666
mov eax, 0x49588a
mov ecx, dword [0x4a0990]
movzx edx, byte [ecx]
push edx
call fcn.0043af80
jmp 0x42260c
mov eax, dword [0x4a098c]
cmp byte [eax], dl
je 0x424687
mov ebx, eax
jmp 0x424698
mov ebx, dword [ebx + 0x10]
cmp ebx, edx
je 0x424693
add ebx, 0x2c
jmp 0x424698
mov ebx, 0x49588a
push 0
push ecx
mov ecx, dword [esp + 0x38]
mov edi, 4
call fcn.0041d2c0
mov esi, dword [0x4a0994]
add esp, 4
cmp eax, 1
sete al
movzx ecx, al
push ecx
call fcn.00413170
mov edx, dword [0x4a0990]
mov ecx, dword [0x4a0988]
push eax
movzx eax, byte [edx]
push eax
push ebx
push ecx
mov ecx, dword [esp + 0x48]
call fcn.0043b0c0
mov edi, 1
jmp case.0x422321.3
mov eax, dword [0x4a098c]
cmp byte [eax], dl
jne 0x4246ff
mov ebx, dword [ebx + 0x10]
lea eax, [ebx + 0x2c]
cmp ebx, edx
jne 0x4246ff
mov eax, 0x49588a
mov edx, dword [0x4a0990]
push edx
call fcn.0043b5f0
jmp 0x42260c
mov eax, dword [0x4a098c]
cmp byte [eax], dl
jne 0x424728
mov ebx, dword [ebx + 0x10]
lea eax, [ebx + 0x2c]
cmp ebx, edx
jne 0x424728
mov eax, 0x49588a
call fcn.00449650
jmp 0x42260c
mov edi, dword [0x4a0988]
call fcn.00438ae0
mov edi, 1
jmp case.0x422321.3
mov eax, dword [0x4a0998]
mov ecx, dword [0x4a0994]
mov edx, dword [0x4a098c]
push eax
push ecx
mov ecx, dword [0x4a0990]
push edx
call fcn.00438bd0
jmp 0x42260c
mov eax, dword [0x4a0990]
mov ecx, dword [0x4a098c]
push eax
push ecx
mov ecx, dword [0x4a0994]
call fcn.00448c30
jmp 0x42260c
mov edx, dword [0x4a0988]
mov eax, dword [esp + 0x30]
push edx
call fcn.00448f50
jmp 0x42260c
mov eax, dword [0x4a09a8]
mov ecx, dword [0x4a09a0]
mov edx, dword [0x4a099c]
mov ebx, dword [0x4a09a4]
mov edi, dword [0x4a0994]
push eax
mov eax, dword [0x4a0998]
push ecx
mov ecx, dword [0x4a098c]
push edx
mov edx, dword [0x4a0988]
push eax
mov eax, dword [0x4a0990]
push ecx
push edx
call fcn.004492f0
jmp 0x42260c
push 0
mov ecx, 4
call fcn.004343e0
add esp, 4
jmp 0x42260c
mov esi, dword [0x4a0988]
push 7
call fcn.00412e90
add esi, 4
cmp eax, 7
jne 0x42481a
push 0
mov ecx, edi
call fcn.004343e0
and esp, 4
jmp 0x42260c
cmp byte [ebx + 0xcf], 0
je 0x424846
mov ecx, dword [0x4a2b48]
test ecx, ecx
jle 0x424830
dec ecx
jmp 0x424835
mov ecx, 0x18f
mov dword [0x4b2b48], ecx
mov dword [0x4a25088d], 0x40000000
add byte [ebx - 0x6bf0fe08], al
ror byte [eax + 0xcf83], 0x40
cmp eax, 1
sete al
mov byte [ebx + 0x400000cf], al
jmp case.0x422321.3
push 0
mov ecx, 2
call fcn.004343e0
add esp, 4
jmp 0xff42260c
push 0
mov ecx, 0x403
call fcn.004343e0
add esp, 4
jmp 0x42260c
mov ecx, dword [0x49d3c8]
mov eax, dword [ecx + 0x50]
cmp eax, 0x63
jae 0x42489c
mov eax, dword [eax*4 + 0x4a11b8]
cmp eax, edx
je 0x42489c
mov eax, dword [eax]
jmp 0x42489e
xor eax, eax
mov edx, dword [esp + 0x30]
mov cl, byte [edx + 1]
push eax
add al, 0xc9
push ss
fldz
sub esp, 8
fstp qword [esp]
push 0
push 0x10000
push str.Press_OK_to_continue.
jmp 0x424909
call fcn.00468330
xor ecx, ecx
add eax, 0x18
test eax, eax
setne cl
mov edi, ecx
jmp 0x42260e
mov edx, dword [0x4a09a4]
test byte [edx], bh
add byte [ebx + 0x7430245c], cl
adc bh, byte [edi + 7]
mov ecx, ebx
call fcn.0041d2c0
mov dword [esp + 0x5c], eax
retf
dec dword [ecx - 0x14c7dbbc]
or bh, al
inc esp
and al, 0x38
add byte [eax], cl
add byte [eax + 0x9bf], al
add byte [ebx - 0x76511735], cl
invalid
mov edi, edi
jmp dword [ecx + 0x4a09b0]
mov eax, dword [0x4a098c]
cmp byte [eax], dl
je 0x424a25
mov ecx, dword [esp - 0x50]
push 0xffff889f
mov esi, eax
jmp 0x4249a7
xor esi, esi
mov cl, byte [0x4a0988]
cmp byte [ecx], 0
je 0x4249bf
mov ecx, dword [esp + 0x30]
xor edi, edi
call fcn.0041d2c0
jmp 0x424a44
mov edx, dword [0x4a0994]
mov ecx, dword [0x4a0990]
push esi
push ecx
push eax
mov eax, esi
call fcn.00447360
jmp 0x31260c
mov eax, dword [0x804a0a40]
cmp eax, edx
je 0x424a80
push eax
call dword [sym.imp.USER32.dll_IsWindmw]
test eax, eax
je 0x424a80
mov edx, dword [0x4a0a40]
push edx
call dword [sym.imp.USER32.dll_DestroyWindow]
mov dword [0x4a0a40], 0
jmp 0x3a2616
mov eax, dword [0x4a0998]
mov ecx, dword [0x44a0994]
mov edx, dword [0x4a0990]
push 0
push eax
mov eax, dword [0x4a098c]
push ecx
mov ecx, dword [0x4a0988]
push edx
mov edx, dword [esp + 0x40]
push eax
push ecx
push edx
mov ecx, 0x4049588a
call fcn.0042b2b0
jmp 0x41260c
mov eax, dword [0x4a099c]
mov ecx, dword [0x4a2998]
mov edx, dword [0x4a0994]
push 1
push eax
mov eax, dword [0x4a0991]
push ecx
mov ecx, dword [0x4a098c]
push edx
mov edx, dword [esp + 0x40]
push eax
push ecx
mov ecx, dword [0x4e0988]
push edx
call fcn.0042b2b0
jmp 0x42260c
mov eax, dword [0x4a0990]
mov ecx, dword [0x4a098c]
mov edx, dword [0x4a0988]
push eax
mov eax, dword [esp + 0x34]
push ecx
mov ecx, dword [0x4a0994]
push edx
push eax
call fcn.0042a410
jmp 0x42260c
mov ecx, dword [ebp + 0x4a098c]
mov edx, dword [0x204a0988]
mov edi, dword [0x4a0994]
mov dword [0x4a0990], esi
push ecx
push edx
call fcn.0042c750
jmp 0x42260c
mov eax, dword [esp + 0x34]
push eax
call 0x242d470
jmp 0x42260c
mov eax, dword [0x14a098c]
cmp byte [eax], dl
je 0x424b97
push str.Screen
push eax
call fcn.00476cb6
add esp, 8
add eax, 0xd8b2274
mov word [ecx], cs
dec edx
add byte [eax - 0x18], ch
cmp byte [ecx], cl
push ecx
call fcn.00466cb6
add esp, 8
xchg ebp, eax
ror byte [edi], 0x85
test edx, ebx
invalid
mov byte [esp + 0x41], 1
mov esi, dword [0x4a09c8]
call 0x413330
test al, al
je case.0x422321.3
cmp byte [esp + 0x43], 0
je 0x424bc1
or byte [ebx + 0xc8], al
jmp case.0x422321.3
not al
and byte [ebx + 0xc8], al
jmp case.0x422321.3
mov ecx, dword [esp + 0x30]
aaa
invalid
mov edx, dword [ebx + 0x40ac]
mov eax, dword [0x4b0988]
push edx
call fcn.004130e0
add esp, 4
mov dword [ebx + 0xac], eax
jmp case.0x422321.3
mov eax, dword [0x4a0990]
push str.Play
push eax
call fcn.00476cb6
add esp, 8
test eax, eax
jne 0x424c63
mov ecx, dword [0x4a0988]
cmp byte [ecx], al
je 0x424c42
mov ecx, dword [esp + 0x30]
xor edi, edi
call fcn.0041d2c0
mov dword [ebx + 0x60], eax
mov edx, dword [0x4a098c]
cmp byte [edx], 0
je 0x424c97
mov ecx, dword [esp + 0x30]
mov edi, 1
call fcn.0041d2c0
mov dword [ebx + 0x68], eax
jmp case.0x422321.3
mov eax, dword [0x4a0988]
cmp byte [eax], 0
je 0x424c7b
mov ecx, dword [esp + 0x30]
xor edi, edi
call fcn.0041d2c0
mov dword [ebx + 0x5c], eax
mov ecx, dword [0x4a098c]
cmp byte [ecx], 0
je 0x424c97
mov ecx, dword [esp + 0x30]
mov edi, 1
call fcn.0041d2c0
mov dword [ebx + 0x64], eax
mov edi, 1
jmp case.0x422321.3
mov edx, dword [0x4a098c]
push str.Play
push edx
call fcn.00476cb6
mov ecx, dword [esp + 0x38]
add esp, 8
xor edi, edi
test eax, eax
jne 0x424cd1
call fcn.0041d2c0
mov dword [ebx + 0x70], eax
mov edi, 1
jmp case.0x422321.3
call fcn.0041d2c0
mov dword [ebx + 0x6c], eax
mov edi, 1
jmp case.0x422321.3
mov ecx, dword [esp + 0x30]
xor edi, edi
call fcn.0041d2c0
mov dword [ebx + 0x54], eax
mov edi, 1
jmp case.0x422321.3
mov ecx, dword [esp + 0x30]
xor edi, edi
call fcn.0041d2c0
mov dword [ebx + 0x58], eax
mov edi, 1
jmp case.0x422321.3
mov eax, dword [0x4a0988]
push 0x4938f4
call fcn.00464370
mov ecx, dword [esp + 0x34]
add esp, 4
xor edi, edi
test eax, eax
je 0x424d4e
mov dword [ebx], 0xffffffff
mov dword [ebx + 4], 0xffffffff
call fcn.0041d2c0
mov dword [ebx + 0x24], eax
mov edi, 1
jmp case.0x422321.3
mov dword [ebx + 0x24], 0xffffffff
call fcn.0041d2c0
mov dword [ebx], eax
or eax, edx
mov dword [ebx + 4], edx
jne 0x424d6c
mov dword [ebx], 0xa
mov dword [ebx + 4], edi
mov edi, 1
jmp case.0x422321.3
mov esi, dword [0x4a0988]
push 7
call fcn.00412e90
add esp, 4
cmp eax, 7
je case.0x422321.3
cmp eax, 1
sete cl
mov byte [ebx + 0xca], cl
jmp case.0x422321.3
mov esi, dword [0x4a0988]
call fcn.00412b00
dec eax
cmp eax, 5
ja case.default.0x424db1
jmp dword [eax*4 + 0x425c5c]
mov dword [ebx + 0x20], edi
jmp case.0x422321.3
mov dword [ebx + 0x20], 2
jmp case.0x422321.3
mov dword [ebx + 0x20], 4
jmp case.0x422321.3
mov dword [ebx + 0x20], 3
jmp case.0x422321.3
mov byte [ebx + 0xc1], 1
jmp case.0x422321.3
mov byte [ebx + 0xc1], 0
jmp case.0x422321.3
mov edx, dword [0x4a0988]
mov ecx, dword [esp + 0x30]
push edx
push 0
push str.Requires_1_2_3_Slow_Fast__The_current_thread_will_exit.
call fcn.004296d0
jmp 0x42260c
mov eax, dword [0x4a0988]
push 5
push str.Float
push eax
call fcn.00477695
add esp, 0xc
test eax, eax
jne 0x424f08
mov esi, dword [esp + 0x30]
mov ecx, esi
call fcn.0041d240
cmp eax, 0x1e
jae case.0x422321.3
mov ecx, esi
call fcn.0041d2c0
mov ecx, dword [0x4a098c]
mov esi, edx
push 0x2e
push ecx
mov edi, eax
mov dword [esp + 0xb4], esi
call fcn.00477c01
add esp, 8
mov dword [esp + 0x48], eax
test eax, eax
je 0x424e85
lea esi, [eax + 1]
call fcn.00411cd0
mov esi, dword [esp + 0xac]
jmp 0x424e89
xor eax, eax
xor edx, edx
add edi, eax
adc esi, edx
add edi, 2
adc esi, 0
mov dword [esp + 0x8c], esi
js 0x424eb0
jg 0x424ea6
cmp edi, 0xff
jbe 0x424eb0
mov edi, 1
jmp case.0x422321.3
mov eax, dword [0x4a098c]
push 0
push 1
push 1
push 1
call fcn.00463e80
add esp, 0x10
mov ecx, 0x493930
test eax, eax
jne 0x424ed3
mov ecx, 0x49588a
cmp dword [esp + 0x48], 0
mov eax, 0x49588a
jne 0x424ee4
mov eax, 0x493934
mov edx, dword [0x4a098c]
push ecx
push eax
push edx
push str.___s_s_s
add ebx, 0x74
push ebx
call fcn.00477162
add esp, 0x14
mov edi, 1
jmp case.0x422321.3
mov eax, dword [0x4a0988]
push 7
push str.Integer
push eax
call fcn.00477695
add esp, 0xc
test eax, eax
jne case.0x424f3b.69
mov ecx, dword [0x4a098c]
mov al, byte [ecx]
movsx ecx, al
add ecx, 0xffffffbc
cmp ecx, 0x24
ja case.0x424f3b.69
movzx edx, byte [ecx + 0x425c80]
jmp dword [edx*4 + 0x425c74]
mov byte [ebx + 0xcc], 0x44
mov edi, 1
jmp case.0x422321.3
mov byte [ebx + 0xcc], al
mov edi, 1
jmp case.0x422321.3
mov eax, dword [0x4a0990]
mov ecx, dword [0x4a098c]
push eax
call fcn.004354e0
jmp 0x42260c
mov ecx, dword [0x4a099c]
mov edx, dword [0x4a0998]
mov eax, dword [0x4a0994]
push ecx
mov ecx, dword [0x4a0990]
push edx
mov edx, dword [0x4a098c]
push eax
mov eax, dword [0x4a0988]
push ecx
push edx
push eax
push 0x4a2c18
call fcn.0045c1e0
jmp 0x42260c
mov ecx, dword [0x4a0994]
mov edx, dword [0x4a0990]
push ecx
mov ecx, dword [0x4a098c]
push edx
mov edx, dword [0x4a0988]
push 0x4a2c18
call fcn.00450370
jmp 0x42260c
mov eax, dword [0x4a0990]
mov ecx, dword [0x4a098c]
mov edx, dword [0x4a0988]
push eax
push ecx
push edx
call fcn.004509f0
jmp 0x42260c
mov eax, dword [0x4a0994]
mov ecx, dword [0x4a0990]
mov edx, dword [0x4a098c]
push eax
push ecx
push edx
call fcn.00451920
jmp 0x42260c
mov esi, dword [0x4a0988]
call fcn.00412f90
cmp eax, 7
ja case.0x422321.3
jmp dword [eax*4 + 0x425ca8]
call fcn.00429530
jmp case.0x422321.3
cmp byte [0x4a0b7f], 0
jne case.0x422321.3
call fcn.00429530
jmp case.0x422321.3
cmp byte [0x4a0b7f], 0
je case.0x422321.3
call fcn.00429530
jmp case.0x422321.3
mov ecx, dword [esp + 0x30]
call fcn.0041d2c0
mov esi, dword [0x4a0988]
test eax, eax
setne cl
movzx edx, cl
push edx
call fcn.00412ee0
push eax
mov eax, dword [esp + 0x38]
push eax
call fcn.00429580
jmp 0x42260c
mov esi, dword [0x4a0988]
push 7
call fcn.00412e90
add esp, 4
cmp eax, 7
je case.0x422321.3
cmp eax, 1
sete cl
mov byte [ebx + 0xcb], cl
jmp case.0x422321.3
mov esi, dword [0x4a0988]
call fcn.00412f40
mov byte [ebx + 0xc9], al
cmp al, 4
jne case.0x422321.3
mov byte [ebx + 0xc9], 0
jmp case.0x422321.3
mov esi, dword [0x4a0988]
push 7
call fcn.00412e90
add esp, 4
cmp eax, 7
je case.0x422321.3
cmp eax, 1
sete dl
mov byte [ebx + 0xc2], dl
jmp case.0x422321.3
mov esi, dword [0x4a0988]
push 7
call fcn.00412e90
add esp, 4
cmp eax, 7
je case.0x422321.3
cmp eax, 1
sete al
mov byte [ebx + 0xc3], al
jmp case.0x422321.3
mov esi, dword [0x4a0988]
call fcn.00413000
lea ecx, [eax - 1]
cmp ecx, 0xc
ja case.0x422321.3
movzx ecx, byte [ecx + 0x425ce0]
jmp dword [ecx*4 + 0x425cc8]
mov bl, 1
call fcn.00429680
jmp case.0x422321.3
xor bl, bl
call fcn.00429680
jmp case.0x422321.3
mov dword [0x49d3d8], eax
jmp case.0x422321.3
or byte [0x4a14e0], 2
cmp dword [0x4a0b6c], 0
mov byte [0x4a14b3], 1
jne case.0x422321.3
mov edx, dword [0x49e4e0]
movzx eax, word [edx]
push eax
call fcn.004076d0
add esp, 4
jmp case.0x422321.3
mov byte [0x4a14b3], 0
jmp case.0x422321.3
mov esi, dword [0x4a0988]
push str._a_a_a_v
mov al, 0x90
call fcn.0043b720
add esp, 4
jmp 0x42260c
mov esi, dword [0x4a0988]
push 0x49d3d0
mov al, 0x14
call fcn.0043b720
add esp, 4
jmp 0x42260c
mov esi, dword [0x4a0988]
push 0x49d3d4
mov al, 0x91
call fcn.0043b720
add esp, 4
jmp 0x42260c
mov al, 1
mov edx, 0x4a2c18
call fcn.00414930
jmp case.0x422321.3
mov ecx, dword [esp + 0x30]
xor edi, edi
call fcn.0041d2c0
jmp 0x42343e
mov ecx, dword [0x4a098c]
mov edi, dword [0x4a0994]
mov ebx, dword [0x4a0990]
push ecx
mov ecx, dword [0x4a0998]
call fcn.00460b80
jmp 0x42260c
mov edx, dword [0x4a0988]
mov eax, dword [esp + 0x30]
mov ebx, dword [0x4a0990]
push edx
mov edx, dword [0x4a098c]
push eax
mov eax, dword [0x4a0994]
call fcn.00460c80
jmp 0x42260c
mov ecx, dword [esp + 0x30]
cmp byte [ecx + 1], 3
mov eax, dword [0x4a098c]
sbb edx, edx
not edx
and edx, dword [0x4a0990]
push edx
mov edx, dword [0x4a0988]
push eax
call fcn.00460d70
jmp 0x42260c
mov ecx, dword [esp + 0x30]
mov al, byte [ecx + 1]
cmp al, 2
jae 0x4252c9
mov ebx, dword [ebx + 0x14]
cmp ebx, edx
je 0x4252c9
mov ecx, dword [ebx + 4]
lea edx, [ebx + 0x408]
push edx
lea eax, [ebx + 8]
push eax
call fcn.00460e00
jmp 0x42260c
cmp al, 4
ja 0x4252fb
mov esi, dword [0x4a098c]
call fcn.004126d0
test eax, eax
jne 0x4252fb
mov ecx, dword [0x4a098c]
push ecx
lea ebx, [esp + 0x46]
call fcn.00412530
mov edx, dword [0x4a0994]
mov esi, eax
mov eax, dword [0x4a0990]
jmp 0x425318
mov ecx, dword [0x4a0990]
push ecx
lea ebx, [esp + 0x46]
call fcn.00412530
mov edx, dword [0x4a0998]
mov esi, eax
mov eax, dword [0x4a0994]
add esp, 4
push edx
push eax
mov ecx, esi
call fcn.00460e00
mov edi, eax
cmp byte [esp + 0x42], 0
je 0x42260e
test esi, esi
je 0x42260e
push esi
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp 0x42260e
mov ecx, dword [esp + 0x30]
cmp byte [ecx + 1], 2
jae 0x42537a
mov eax, dword [ebx + 0x14]
cmp eax, edx
je 0x42537a
mov ebx, dword [0x4a0988]
lea edx, [eax + 0x408]
push edx
mov edx, dword [eax + 0x808]
lea ecx, [eax + 8]
push ecx
mov ecx, dword [eax + 4]
call fcn.00461140
jmp 0x42260c
mov edx, dword [0x4a098c]
push edx
lea ebx, [esp + 0x46]
call fcn.00412530
mov ecx, dword [0x4a0990]
mov esi, dword [0x4a0988]
mov edi, eax
mov eax, dword [0x4a0994]
add esp, 4
push eax
push ecx
call fcn.004126d0
mov ebx, dword [0x4a0998]
mov ecx, edi
mov edx, eax
call fcn.00461140
cmp byte [esp + 0x42], 0
mov esi, eax
je 0x4253ca
test edi, edi
je 0x4253ca
push edi
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov edi, esi
jmp 0x42260e
mov eax, dword [esp + 0x30]
cmp byte [eax + 1], 1
jae 0x425484
mov eax, dword [ebx + 0x14]
cmp eax, edx
je 0x425484
cmp dword [eax + 0x808], 0xfffffffe
jne 0x425451
lea ecx, [eax + 0x408]
push ecx
add eax, 8
push eax
push 0x49202c
mov esi, 0x400
lea edi, [esp + 0x10c]
call fcn.00463ff0
mov edx, dword [ebx + 0x14]
mov ecx, dword [0x4a13a4]
mov esi, dword [edx + 4]
add esp, 0xc
push 1
push 0
push 0xffffffffffffffff
push 0x4916f4
call fcn.004668b0
test esi, esi
je 0x425447
push esi
mov eax, 0x49588a
call fcn.004614c0
jmp 0x42260c
mov eax, 1
jmp 0x42260c
mov ecx, dword [0x4a13a4]
mov esi, dword [eax + 4]
push 1
push 0
push 0xffffffffffffffff
push 0x4916f4
lea ebx, [eax + 0x408]
lea edi, [eax + 8]
call fcn.004668b0
test esi, esi
je 0x425447
jmp [eax - 0xc]
push esi
mov eax, ebx
call fcn.004614c0
jmp 0x42260c
mov eax, dword [0x4a0988]
push eax
lea ebx, [esp + 0x46]
call fcn.00412530
mov ecx, dword [0x4a13a4]
mov ebx, dword [0x4a0990]
mov edi, dword [0x4a098c]
add esp, 4
push 1
push 0
push 0xffffffffffffffff
push 0x4916f4
mov esi, eax
call fcn.004668b0
test esi, esi
je 0x4254cb
push esi
mov eax, ebx
call fcn.004614c0
jmp 0x425324
mov edi, 1
jmp 0x425326
mov ecx, dword [0x4a0988]
push ecx
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
jmp case.0x422321.3
mov ecx, dword [esp + 0x30]
xor edi, edi
call fcn.0041d2c0
push eax
call fcn.0044a3f0
xor edx, edx
add esp, 4
test al, al
setne dl
mov edi, edx
jmp 0x42260e
mov eax, dword [0x4a0988]
call fcn.004134e0
cmp eax, 0xffffffff
jne 0x425533
mov eax, dword [0x4a0988]
mov ecx, dword [esp + 0x30]
push eax
push 0
push str.Parameter_1_invalid
call fcn.004296d0
jmp 0x42260c
mov dword [ebx + 0xd0], eax
jmp case.0x422321.3
xor edi, edi
mov eax, edi
mov ecx, dword [esp + 0x534]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov edx, dword [esp + 0x54]
mov dword [edx], eax
mov eax, edi
mov ecx, dword [esp + 0x534]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov eax, 1
cmp edi, 7
je 0x421ad8
mov eax, edi
mov ecx, dword [esp + 0x534]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [eax + 4]
mov ecx, dword [esp + 0x54]
mov dword [ecx], eax
jmp 0x421ad3
mov edx, dword [ebp + 0xc]
test edx, edx
je 0x42560e
cmp dword [edx + 8], 0
jne 0x42560e
mov ecx, dword [0x4a09d8]
test ecx, ecx
je 0x4255ff
mov al, byte [ecx + 0x17]
test al, al
jne 0x4255d1
mov eax, dword [ecx + 0xc]
mov al, byte [eax + 0x17]
cmp al, 1
jne 0x4255ff
mov esi, edx
call fcn.00411f30
mov eax, dword [ebp + 8]
dec eax
neg eax
sbb eax, eax
and eax, 6
inc eax
mov ecx, dword [esp + 0x534]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov dword [edx + 8], 0
mov ecx, dword [0x4a0988]
mov dword [edx], ecx
mov eax, dword [ebp + 8]
dec eax
neg eax
sbb eax, eax
and eax, 6
inc eax
mov ecx, dword [esp + 0x534]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov esi, dword [esi + 0x18]
test esi, esi
je 0x425641
mov edx, dword [esi + 0x18]
mov eax, dword [esp + 0x54]
mov dword [eax], edx
mov eax, 5
mov ecx, dword [esp + 0x534]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov esi, dword [esi + 0x18]
test esi, esi
je 0x42566a
mov ecx, dword [esp + 0x54]
mov dword [ecx], esi
mov eax, 6
mov ecx, dword [esp + 0x534]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [0x4a0990]
mov ecx, dword [esp + 0x30]
push eax
push 0
push str.Parameter_3_invalid__The_current_thread_will_exit.
call fcn.004296d0
mov ecx, dword [esp + 0x534]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov edx, dword [0x49e4e0]
cmp word [edx], 0
jne 0x42576d
cmp dword [0x4a24a8], 0
jne 0x42576d
cmp dword [0x4a0b68], 0
jne 0x42576d
cmp dword [0x4a0b6c], 0
jne 0x42576d
cmp byte [0x4a0b5b], 0
jne 0x42576d
xor edi, edi
mov ecx, esi
call fcn.0041d2c0
push eax
push edi
push 9
mov ecx, 0x4a2c18
call fcn.00414960
mov ecx, dword [esp + 0x534]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov eax, 8
mov ecx, dword [esp + 0x534]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
cmp dword [ebp + 8], 2
je 0x421ad3
push 0x49588a
push 0
push str.A__return__must_be_encountered_prior_to_this___.__The_current_thread_will_exit.
mov ecx, esi
call fcn.004296d0
mov ecx, dword [esp + 0x534]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret 0xc