Function at 0x427150
Capabilities:
Check for time delay via gettickcount
Empty the recycle bin
Find taskbar
Move file
Persist via application shimming
Print debug messages
Resolve function by parsing pe exports
Set environment variable

Disassembly:
push ebp
mov ebp, esp
and esp, 0xffffffc0
push 0xffffffffffffffff
push 0x4a066b
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x968
mov eax, dword [ebp + 0x10]
push ebx
push esi
push edi
mov dword [esp + 0x8c], ecx
test eax, eax
jne 0x427186
lea eax, [esp + 0x78]
mov esi, dword [0x4c6a44]
mov edx, eax
mov ebx, ecx
mov dword [esp + 0x38], eax
mov dword [edx], 0
mov dword [esp + 0x50], esi
mov dword [esp + 0x10], ebx
test ecx, ecx
je case.0x4274b5.116
mov edi, dword [esp + 0x78]
mov edi, edi
cmp dword [0x4cc060], 0
je 0x4271ea
cmp dword [0x4cc050], 0
je 0x4271d8
mov eax, dword [0x4cc048]
push eax
call dword [sym.imp.KERNEL32.dll_GlobalUnlock]
mov dword [0x4cc050], 0
call dword [sym.imp.USER32.dll_CloseClipboard]
xor eax, eax
mov dword [0x4cc060], eax
mov dword [0x4cc048], eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov edx, dword [0x4c6a44]
mov ecx, eax
sub ecx, dword [0x4cc004]
cmp ecx, dword [edx + 0xd8]
jbe 0x427237
push 0
push 0
push 0
push 0
lea eax, [esp + 0x134]
push eax
call dword [sym.imp.USER32.dll_PeekMessageW]
test eax, eax
je 0x42722c
push 1
push 0xffffffffffffffff
call fcn.004013d0
add esp, 8
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [0x4cc004], eax
cmp byte [esi + 0xec], 0
jne 0x427268
cmp byte [esi + 0xee], 0
jne 0x427268
mov edx, dword [0x4cbff8]
cmp edx, 0xffffffff
jle 0x427268
mov ecx, dword [esi + 0x28]
cmp ecx, edx
jle 0x427264
mov byte [esi + 0xec], 1
jmp 0x427268
inc ecx
mov dword [esi + 0x28], ecx
mov ecx, dword [esi + 4]
mov edx, dword [esi]
cmp ecx, 0xffffffff
jl 0x42728b
jg 0x427279
cmp edx, 0xffffffff
jbe 0x42728b
cmp dword [0x4cbff4], ecx
jg 0x42729d
jl 0x42728b
cmp dword [0x4cbff0], edx
jae 0x42729d
mov ecx, dword [esi + 0x24]
cmp ecx, 0xffffffff
jle 0x4272a9
sub eax, dword [0x4cc000]
cmp eax, ecx
jb 0x4272a9
push 1
push 0xa
call fcn.004013d0
add esp, 8
cmp byte [esi + 0xf8], 0
je 0x4272ca
push 1
push 0x8000012f
call fcn.004013d0
add esp, 8
cmp byte [esi + 0xf8], 0
jne 0x4272b2
mov dword [0x4cbb3c], ebx
cmp byte [esi + 0xf9], 0
je 0x427312
mov ecx, dword [0x4cb480]
mov dword [ecx*4 + 0x4cae40], ebx
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [0x4cb480]
mov dword [ecx*4 + 0x4c9e70], eax
inc ecx
mov dword [0x4cb480], ecx
cmp ecx, 0x190
jl 0x427312
mov dword [0x4cb480], 0
mov al, byte [ebx]
cmp al, 1
je 0x427339
cmp al, 0x6b
je 0x427339
cmp al, 0x72
je 0x427339
mov edx, dword [ebp + 0xc]
push 0
push 0xffffffffffffffff
push edx
push ebx
call fcn.0045c5c0
mov edi, eax
cmp edi, 1
jne 0x42b7ff
mov cl, byte [ebx]
mov byte [esp + 0xdc], cl
cmp cl, 9
jb 0x42749d
cmp cl, 0x20
ja 0x42749d
add dword [0x4cbff0], 1
push ebx
adc dword [0x4cbff4], 0
call fcn.0042c160
cmp eax, 3
jne 0x4273ff
mov ecx, dword [ebx + 0x14]
cmp byte [ecx], 0x75
jne 0x42739f
mov esi, dword [ebp + 0xc]
lea esp, [esp]
mov ecx, dword [ecx + 0x14]
lea eax, [esp + 0x28]
push eax
push esi
push 2
call fcn.00427150
mov ecx, dword [ebx + 0x14]
mov edi, eax
mov eax, dword [esp + 0x28]
cmp eax, ecx
je 0x427380
jmp 0x4273b5
mov eax, dword [ebp + 0xc]
lea edx, [esp + 0x28]
push edx
push eax
push 3
call fcn.00427150
mov edi, eax
mov eax, dword [esp + 0x28]
cmp eax, ebx
je 0x4285de
cmp dword [ebp + 8], 3
je 0x42b7f9
cmp edi, 1
jne 0x42b7f9
test eax, eax
je 0x4273e5
mov ecx, dword [eax + 0x1c]
cmp ecx, dword [ebx + 0x1c]
jne 0x42b842
jmp 0x4285da
mov ebx, dword [ebx + 0x18]
cmp byte [ebx], 0x21
mov dword [esp + 0x10], ebx
jne 0x4285de
mov edx, ebx
mov eax, dword [edx + 0x18]
jmp 0x4285da
mov ebx, dword [ebx + 0x18]
cmp byte [ebx], 0x21
mov dword [esp + 0x10], ebx
jne 0x427477
mov ecx, dword [ebx + 0x14]
cmp byte [ecx], 0x75
jne 0x427435
mov esi, dword [ebp + 0xc]
mov ecx, dword [ecx + 0x14]
lea edx, [esp + 0x28]
push edx
push esi
push 2
call fcn.00427150
mov ecx, dword [ebx + 0x14]
mov edi, eax
mov eax, dword [esp + 0x28]
cmp eax, ecx
je 0x427416
jmp 0x42744b
mov edx, dword [ebp + 0xc]
lea eax, [esp + 0x28]
push eax
push edx
push 3
call fcn.00427150
mov edi, eax
mov eax, dword [esp + 0x28]
cmp dword [ebp + 8], 3
je 0x42b7f9
cmp edi, 1
jne 0x42b7f9
test eax, eax
je 0x42826a
mov ecx, dword [eax + 0x1c]
cmp ecx, dword [ebx + 0x1c]
jne 0x42b842
jmp 0x4285da
cmp dword [ebp + 8], 3
jne 0x4285de
mov eax, 1
mov ecx, dword [esp + 0x974]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
movzx eax, cl
add eax, 0xffffffa0
cmp eax, 0x80
ja case.0x4274b5.98
movzx eax, byte [eax + 0x42bc60]
jmp dword [eax*4 + 0x42bc1c]
mov edi, 1
add dword [0x4cbff0], edi
adc dword [0x4cbff4], 0
mov eax, dword [ebx + 0x18]
test eax, eax
je 0x427549
xor ecx, ecx
cmp dword [ebx + 0xc], edi
mov edx, eax
sete cl
mov dword [esp + 0x60], edx
mov ebx, ecx
test ebx, ebx
je 0x4274ff
mov eax, dword [esi + 0xb4]
mov dword [esi + 0xb8], eax
mov dword [esi + 0xb4], 0
mov ecx, edx
call fcn.00401290
mov edi, eax
test ebx, ebx
je 0x427522
mov ecx, dword [esi + 0xb8]
mov dword [esi + 0xb4], ecx
mov dword [esi + 0xb8], 0
test edi, edi
je 0x42b7ff
cmp edi, 8
je 0x42b7ff
cmp dword [ebp + 8], 3
je 0x42b818
mov edx, dword [esp + 0x10]
mov eax, dword [edx + 0x14]
jmp 0x4285da
mov edx, dword [esp + 0x10]
push edx
mov bl, 1
call fcn.00444af0
mov edx, eax
mov dword [esp + 0x60], edx
test edx, edx
je 0x42bb56
cmp dword [esi + 0xb4], 0
je 0x42757f
mov eax, dword [edx + 8]
call fcn.00444bb0
test eax, eax
je 0x42757f
mov ebx, edi
jmp 0x4274e9
xor ebx, ebx
jmp 0x4274ff
add dword [0x4cbff0], 1
adc dword [0x4cbff4], 0
mov eax, dword [ebx + 0x18]
mov dword [esp + 0x60], eax
test eax, eax
jne 0x4275b7
mov ecx, dword [esp + 0x10]
push ecx
mov bl, 1
call fcn.00444af0
mov dword [esp + 0x60], eax
test eax, eax
je 0x42bb56
cmp dword [ebp + 8], 3
mov dword [esi + 0xbc], eax
je 0x42b83f
mov edx, dword [esp + 0x10]
mov ecx, dword [eax + 8]
mov edx, dword [edx + 0x1c]
cmp edx, dword [ecx + 0x1c]
jne 0x42b83f
mov dword [esp + 0x10], ecx
jmp 0x4285de
add dword [0x4cbff0], 1
mov eax, dword [esp + 0x8c]
adc dword [0x4cbff4], 0
mov ebx, dword [eax + 0xc]
test ebx, ebx
jne 0x42762f
mov eax, dword [0x4ca500]
mov edi, eax
cmp word [eax], bx
je 0x42762d
mov ebx, dword [0x4cb540]
test ebx, ebx
je 0x42762d
mov ecx, dword [ebx + 4]
push edi
push ecx
call fcn.0048ff69
add esp, 8
test eax, eax
je 0x42762f
mov ebx, dword [ebx + 0x14]
test ebx, ebx
jne 0x427615
xor ebx, ebx
mov edi, 1
mov dword [esp + 0x40], 0
test ebx, ebx
je 0x427737
mov eax, dword [0x4ca504]
cmp word [eax], 0
je 0x427665
push 0x4a6e84
push eax
call fcn.0048ff69
add esp, 8
test eax, eax
jne 0x427665
mov al, 1
jmp 0x427667
xor al, al
lea edx, [esp + 0x60]
push edx
push eax
push ebx
xor eax, eax
call fcn.0047c760
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x60]
test eax, eax
je 0x427737
mov eax, dword [eax + 8]
mov edi, dword [eax + 0x1c]
test edi, edi
je 0x4276d5
mov ecx, dword [esp + 0x10]
mov edx, dword [ecx + 0x1c]
test edx, edx
je 0x4276ab
lea ebx, [ebx]
cmp edi, edx
je 0x4276d5
mov edx, dword [edx + 0x1c]
test edx, edx
jne 0x4276a0
push 0x4a3890
push 0
push str.A_Goto_Gosub_must_not_jump_into_a_block_that_doesnt_enclose_it.
call fcn.004306d0
xor eax, eax
mov ecx, dword [esp + 0x974]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov edx, dword [esi + 0xb4]
test edx, edx
je 0x42776a
call fcn.00444bb0
test eax, eax
je 0x42776a
mov ebx, 1
mov dword [esi + 0xb8], edx
mov dword [esi + 0xb4], 0
mov ecx, dword [esp + 0x60]
call fcn.00401290
mov edi, eax
test ebx, ebx
je 0x427726
mov eax, dword [esi + 0xb8]
mov dword [esi + 0xb4], eax
mov dword [esi + 0xb8], 0
test edi, edi
je 0x42b7ff
cmp edi, 8
je 0x42b7ff
cmp dword [esp + 0x40], 0
mov eax, dword [esp + 0x8c]
sete cl
movzx edx, cl
push edx
push eax
call fcn.00430370
cmp dword [ebp + 8], 3
je 0x42b818
mov ecx, dword [esp + 0x10]
mov edx, dword [ecx + 0x14]
mov dword [esp + 0x10], edx
jmp 0x4285de
xor ebx, ebx
jmp 0x427701
mov eax, dword [ebx + 0xc]
mov dword [esp + 0x18], eax
dec eax
je 0x4277c2
sub eax, 3
je 0x4277a4
sub eax, 5
jne 0x427862
push eax
push eax
mov eax, dword [0x4ca504]
push eax
mov eax, 1
call fcn.00415cd0
add esp, 0xc
mov dword [esp + 0x64], eax
jmp 0x427862
mov ecx, dword [0x4ca500]
push 0
push 0
push ecx
xor eax, eax
call fcn.00415cd0
add esp, 0xc
mov dword [esp + 0x64], eax
jmp 0x427862
movzx eax, byte [ebx + 1]
sub eax, 0
je 0x42785a
dec eax
je 0x42781c
mov edx, dword [0x4ca500]
push str.Read
push edx
call fcn.0048ff69
add esp, 8
test eax, eax
jne 0x4277f4
mov dword [esp + 0x18], 5
jmp 0x427862
mov eax, dword [0x4ca500]
push 0
push 0
push eax
xor eax, eax
call fcn.00415cd0
xor ecx, ecx
add esp, 0xc
test eax, eax
setne cl
mov dword [esp + 0x64], eax
add ecx, 3
mov dword [esp + 0x18], ecx
jmp 0x427862
mov eax, dword [0x4ca500]
push 0
push 1
push 1
push 1
call fcn.00476510
add esp, 0x10
test eax, eax
jne 0x42785a
mov edx, dword [0x4ca500]
push eax
push eax
push edx
call fcn.00415cd0
xor ecx, ecx
add esp, 0xc
test eax, eax
setne cl
mov dword [esp + 0x64], eax
add ecx, 3
mov dword [esp + 0x18], ecx
jmp 0x427862
mov dword [esp + 0x18], 2
mov ecx, dword [esp + 0x18]
lea eax, [ecx - 3]
cmp eax, 7
ja case.0x427879.5
movzx edx, byte [eax + 0x42bcf0]
jmp dword [edx*4 + 0x42bce4]
mov esi, dword [0x4ca504]
call fcn.00416560
mov dword [esp + 0x58], eax
test eax, eax
je 0x42b92e
mov eax, dword [0x4ca508]
cmp word [eax], 0x31
jne 0x4278bb
cmp word [eax + 2], 0
jne 0x4278bb
mov esi, dword [esp + 0x50]
mov ebx, dword [esp + 0x10]
mov byte [esp + 0x5c], 1
jmp case.0x427879.5
mov esi, dword [esp + 0x50]
mov ebx, dword [esp + 0x10]
mov byte [esp + 0x5c], 0
jmp case.0x427879.5
cmp ecx, 4
jne 0x42790e
mov esi, dword [0x4ca508]
call fcn.00416560
mov dword [esp + 0x58], eax
mov eax, dword [0x4ca50c]
cmp word [eax], 0x31
jne 0x4278ff
cmp word [eax + 2], 0
jne 0x4278ff
mov esi, dword [esp + 0x50]
mov ebx, dword [esp + 0x10]
mov byte [esp + 0x5c], 1
jmp 0x42792c
mov esi, dword [esp + 0x50]
mov ebx, dword [esp + 0x10]
mov byte [esp + 0x5c], 0
jmp 0x42792c
mov eax, dword [0x4ca508]
call fcn.004165b0
mov dword [esp + 0x58], eax
shr eax, 2
and al, 1
mov byte [esp + 0x5c], al
je 0x42792c
and dword [esp + 0x58], 0xfffffffb
cmp dword [esp + 0x58], 0
je 0x42b95c
mov byte [esp + 0x1f], 0
mov dword [esp + 0x28], 0
mov ebx, dword [ebx + 0x18]
cmp byte [ebx], 0x6c
mov dword [esp + 0x24], ebx
jne 0x427959
mov eax, dword [ebx + 0x14]
mov dword [esp + 0x24], eax
jmp 0x42795b
xor ebx, ebx
mov eax, dword [esi + 0x10]
mov ecx, dword [esi + 8]
mov edx, dword [esi + 0xc]
mov dword [esp + 0x40], eax
mov eax, dword [esi + 0x1c]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x18]
mov dword [esp + 0xa8], ecx
mov ecx, dword [esi + 0x14]
mov dword [esp + 0xac], edx
mov edx, dword [esi + 0x18]
mov dword [esp + 0x20], ecx
mov dword [esp + 0x14], edx
cmp eax, 8
je 0x4279a2
mov dword [esi + 8], 1
mov dword [esi + 0xc], 0
lea ecx, [eax - 2]
cmp ecx, 8
ja case.default.0x4279ae
jmp dword [ecx*4 + 0x42bcf8]
mov esi, dword [esp + 0x10]
cmp byte [esi + 1], 0
jbe 0x4279d2
xor edi, edi
mov ecx, esi
call fcn.004234c0
mov byte [esp + 0x84], 0
jmp 0x4279de
xor eax, eax
xor edx, edx
mov byte [esp + 0x84], 1
mov ecx, dword [esp + 0x84]
push ecx
mov ecx, dword [ebp + 0xc]
push edx
push eax
push ebx
lea edx, [esp + 0x38]
push edx
lea eax, [esp + 0x33]
push eax
push ecx
mov edi, esi
call fcn.0042d7c0
mov edi, eax
jmp case.default.0x4279ae
mov ebx, dword [ebp + 0xc]
mov esi, dword [esp + 0x10]
lea edx, [esp + 0x28]
push edx
lea eax, [esp + 0x23]
push eax
call fcn.0042d920
mov edi, eax
jmp case.default.0x4279ae
mov eax, dword [ebp + 0xc]
push ebx
lea ecx, [esp + 0x2c]
push ecx
mov ecx, dword [esp + 0x18]
lea edx, [esp + 0x27]
push edx
push eax
push ecx
call fcn.0042db10
mov edi, eax
jmp case.default.0x4279ae
mov edx, dword [0x4ca508]
push 0x4aaecc
push edx
call fcn.0048ff69
add esp, 8
push ebx
test eax, eax
je 0x427a7a
mov edx, dword [ebp + 0xc]
lea eax, [esp + 0x2c]
push eax
mov eax, dword [esp + 0x18]
lea ecx, [esp + 0x27]
push ecx
push edx
push eax
call fcn.0042eb00
mov edi, eax
jmp case.default.0x4279ae
mov eax, dword [ebp + 0xc]
lea ecx, [esp + 0x2c]
push ecx
mov ecx, dword [esp + 0x18]
lea edx, [esp + 0x27]
push edx
push eax
push ecx
call fcn.0042edf0
mov edi, eax
jmp case.default.0x4279ae
lea esi, [esp + 0xec]
call fcn.00416c00
mov dword [esp + 0x97c], 0
mov edx, dword [0x4ca504]
cmp word [edx], 0
je 0x427b06
mov eax, dword [esp + 0x50]
mov eax, dword [eax + 0xfc]
and eax, 0x7fffffff
push 0x30c
mov ecx, esi
call fcn.00474160
test al, al
je 0x427b06
mov ecx, dword [0x4ca508]
push ecx
mov ecx, dword [ebp + 0xc]
lea edx, [esp + 0x2c]
push edx
lea eax, [esp + 0x27]
push eax
push ecx
mov edx, ebx
mov ebx, dword [esp + 0x20]
mov ecx, esi
call fcn.0042f100
mov edi, eax
call fcn.00416b60
jmp 0x427b0b
mov edi, 1
lea ecx, [esp + 0xec]
mov dword [esp + 0x97c], 0xffffffff
call fcn.00416c50
jmp case.default.0x4279ae
cmp eax, 3
mov eax, dword [0x4ca500]
je 0x427b36
mov eax, dword [0x4ca504]
mov edx, dword [esp + 0x5c]
push eax
mov eax, dword [esp + 0x5c]
push edx
push eax
mov eax, dword [ebp + 0xc]
push ebx
lea ecx, [esp + 0x38]
push ecx
mov ecx, dword [esp + 0x24]
lea edx, [esp + 0x33]
push edx
push eax
call fcn.0042df80
mov edi, eax
jmp case.default.0x4279ae
lea ecx, [esp + 0x4f]
push ecx
cmp eax, 4
jne 0x427b8a
mov edx, dword [0x4ca500]
push 0
push edx
xor eax, eax
call fcn.00415cd0
mov esi, eax
mov eax, dword [0x4ca504]
mov dword [esp + 0x94], eax
jmp 0x427ba4
mov eax, dword [0x4ca504]
lea edx, [esp + 0x8c]
push edx
push eax
mov eax, 1
call fcn.00415cd0
mov esi, eax
add esp, 0xc
test esi, esi
je 0x427bed
mov ecx, dword [esp + 0x88]
mov edx, dword [esp + 0x64]
mov eax, dword [esp + 0x5c]
push ecx
mov ecx, dword [esp + 0x5c]
push esi
push edx
push eax
push ecx
mov ecx, dword [ebp + 0xc]
push ebx
lea edx, [esp + 0x40]
push edx
lea eax, [esp + 0x3b]
push eax
push ecx
mov ecx, dword [esp + 0x34]
call fcn.0042e6f0
cmp byte [esp + 0x4f], 0
mov edi, eax
je case.default.0x4279ae
push esi
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp case.default.0x4279ae
mov edi, 1
mov eax, dword [esp + 0x50]
mov edx, dword [esp + 0xa8]
mov ecx, dword [esp + 0xac]
mov dword [eax + 8], edx
mov edx, dword [esp + 0x40]
mov dword [eax + 0xc], ecx
mov ecx, dword [esp + 0x20]
mov dword [eax + 0x10], edx
mov edx, dword [esp + 0x14]
mov dword [eax + 0x14], ecx
mov ecx, dword [esp + 0x30]
mov dword [eax + 0x18], edx
mov dword [eax + 0x1c], ecx
test edi, edi
je 0x42b7ff
cmp edi, 7
je 0x42b7ff
cmp edi, 8
je 0x42b7ff
cmp byte [esp + 0x1f], 0
jne 0x4285de
mov eax, dword [esp + 0x28]
test eax, eax
je 0x427c82
mov edx, dword [eax + 0x1c]
mov ecx, dword [esp + 0x10]
cmp edx, dword [ecx + 0x1c]
je 0x4285da
mov ecx, dword [esp + 0x38]
mov dword [ecx], eax
mov eax, edi
mov ecx, dword [esp + 0x974]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
cmp dword [ebp + 8], 3
je case.0x4274b5.116
mov edx, dword [esp + 0x24]
mov dword [esp + 0x10], edx
jmp 0x4285de
mov eax, dword [esi + 0x100]
mov dword [esp + 0x40], eax
cmp cl, 0x70
jne 0x427cef
mov ebx, dword [0x4ca4b0]
mov eax, dword [esi + 0x104]
mov dword [esp + 0x30], eax
mov dword [esi + 0x104], 0
test ebx, ebx
je 0x427ccf
call fcn.00479050
mov edi, eax
jmp 0x427cd4
mov edi, 1
lea esi, [esp + 0x30]
call fcn.00430eb0
test edi, edi
je 0x42bb56
mov esi, dword [esp + 0x50]
mov ebx, dword [esp + 0x10]
jmp 0x427d09
or eax, 1
mov dword [esi + 0x100], eax
mov ecx, dword [ebx + 0x18]
cmp byte [ecx], 0x71
je 0x427d09
or eax, 2
mov dword [esi + 0x100], eax
mov dword [esp + 0x28], 0
mov ecx, dword [ebx + 0x14]
cmp byte [ecx], 0x75
jne 0x427d42
lea esp, [esp]
mov eax, dword [ebp + 0xc]
mov ecx, dword [ecx + 0x14]
lea edx, [esp + 0x28]
push edx
push eax
push 2
call fcn.00427150
mov ecx, dword [ebx + 0x14]
mov edx, dword [esp + 0x28]
mov edi, eax
cmp edx, ecx
je 0x427d20
jmp 0x427d58
mov eax, dword [ebp + 0xc]
lea edx, [esp + 0x28]
push edx
push eax
push 3
call fcn.00427150
mov edx, dword [esp + 0x28]
mov edi, eax
mov al, byte [esp + 0xdc]
mov ecx, dword [ebx + 0x18]
mov dword [esp + 0x10], ecx
cmp al, 0x6f
jne 0x427dbc
mov eax, dword [esp + 0x40]
mov dword [esi + 0x100], eax
xor al, al
cmp byte [ecx], 0x70
jne 0x427d91
cmp dword [esi + 0x104], 0
mov al, 1
jne 0x4285de
mov ecx, dword [ecx + 0x18]
mov dword [esp + 0x10], ecx
cmp byte [ecx], 0x71
je 0x427dcd
test al, al
jne 0x427e7e
add esi, 0x104
cmp dword [esi], 0
je 0x427e7e
call fcn.00430eb0
mov edi, 1
jmp 0x427e7a
cmp al, 0x70
jne 0x427e7e
cmp byte [ecx], 0x71
jne 0x427e7e
cmp edi, 1
jne 0x427dde
test edx, edx
je 0x4285de
mov ecx, dword [esp + 0x10]
mov edx, dword [esi + 0x104]
mov ebx, dword [0x4cb488]
mov dword [esp + 0x40], edx
mov edx, dword [0x4cb48c]
xor eax, eax
mov dword [esp + 0x30], edx
lea edx, [esp + 0xd0]
push edx
push eax
push 3
mov dword [esi + 0x104], eax
mov dword [0x4cb488], eax
mov dword [0x4cb48c], eax
call fcn.00427150
mov dword [esp + 0x24], eax
test ebx, ebx
je 0x427e55
mov eax, dword [0x4cb488]
test eax, eax
je 0x427e46
push eax
call fcn.004908b1
add esp, 4
cmp dword [0x4cb48c], 0x400000
jbe 0x427e46
dec dword [0x4cb490]
mov eax, dword [esp + 0x30]
mov dword [0x4cb488], ebx
mov dword [0x4cb48c], eax
mov ebx, dword [esp + 0x24]
cmp ebx, 1
jne 0x42b988
cmp dword [esp + 0xd0], 0
jne 0x42b988
mov ecx, dword [esp + 0x40]
mov dword [esi + 0x104], ecx
mov edx, dword [esp + 0x28]
cmp dword [ebp + 8], 3
je 0x42b9e2
cmp edi, 1
jne 0x42b9e2
test edx, edx
je 0x4285de
mov eax, dword [edx + 0x1c]
mov ecx, dword [esp + 0x10]
cmp eax, dword [ecx + 0x1c]
jne 0x42b9d7
mov dword [esp + 0x10], edx
jmp 0x4285de
mov edx, dword [ebx + 0x14]
mov dword [esp + 0x10], edx
jmp 0x4285de
mov ebx, dword [0x4cb488]
mov ecx, dword [0x4cb48c]
mov esi, dword [esp + 0x10]
xor eax, eax
mov dword [esp + 0x24], eax
mov dword [esp + 0x18], ebx
mov dword [esp + 0x20], ecx
mov dword [0x4cb488], eax
mov dword [0x4cb48c], eax
mov dword [esp + 0x9c], eax
cmp dword [esi + 0xc], eax
jne 0x427f02
mov dword [esp + 0x98], 0x41
lea edi, [eax + 1]
jmp 0x427f58
lea edx, [esp + 0x18]
push edx
lea ecx, [esp + 0x94]
push ecx
push eax
push esi
lea ebx, [esp + 0x30]
call fcn.0045c020
mov ebx, dword [esp + 0x18]
mov edi, eax
cmp edi, 1
jne 0x428172
cmp dword [esp + 0x98], 0
jne 0x427f58
cmp dword [esp + 0x90], ebx
jne 0x427f58
mov edx, dword [esp + 0x20]
mov dword [esp + 0x9c], ebx
xor ebx, ebx
mov dword [esp + 0xc4], edx
mov dword [esp + 0x18], ebx
mov dword [esp + 0x20], ebx
mov eax, dword [esi + 0x14]
mov eax, dword [eax + 0x14]
cmp byte [eax], 0x74
mov dword [esp + 0x14], eax
jne 0x428120
jmp 0x427f70
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx + 0xc]
mov dword [esp + 0x40], eax
test eax, eax
jne 0x427f8b
mov ecx, dword [ecx + 0x14]
mov dword [esp + 0x24], ecx
jmp 0x428104
xor esi, esi
cmp dword [esp + 0x40], esi
jle 0x428104
mov ecx, dword [esp + 0x14]
lea edx, [esp + 0x18]
push edx
lea eax, [esp + 0x6c]
push eax
push esi
push ecx
lea ebx, [esp + 0x30]
call fcn.0045c020
mov edi, eax
cmp edi, 1
jne 0x4280e9
cmp dword [esp + 0x70], 0
jne 0x427fd2
mov dword [esp + 0x70], 5
mov dword [esp + 0x6c], 0
cmp dword [esp + 0x98], 0x41
jne 0x4280ac
lea edx, [esp + 0x68]
push edx
call fcn.00451070
add esp, 4
dec eax
je 0x42808f
dec eax
je 0x42803a
mov ecx, dword [esp + 0x70]
mov eax, dword [esp + 0x68]
cmp ecx, 6
je 0x4280a1
cmp ecx, 4
jne 0x428020
cmp byte [eax + 0x17], 0
jne 0x428016
mov eax, dword [eax + 0xc]
test byte [eax + 0x15], 2
jne 0x4280a1
xor ecx, ecx
lea eax, [esp + 0x68]
call fcn.00451300
xor ecx, ecx
cmp word [eax], cx
setne cl
mov eax, ecx
jmp 0x4280c0
mov eax, dword [esp + 0x70]
dec eax
cmp eax, 5
ja case.0x428044.3
jmp dword [eax*4 + 0x42bd1c]
fild qword [esp + 0x68]
jmp 0x42807d
fld qword [esp + 0x68]
jmp 0x42807d
mov eax, dword [esp + 0x68]
push 1
call fcn.004152d0
jmp 0x42807d
mov eax, dword [esp + 0x6c]
test eax, eax
je case.0x428044.3
fild qword [eax]
jmp 0x42807d
mov edx, dword [esp + 0x68]
push edx
call fcn.00491d62
add esp, 4
fldz
fucompp
fnstsw ax
test ah, 0x44
jnp case.0x428044.6
mov eax, 1
jmp 0x4280c0
push 1
lea ecx, [esp + 0x6c]
call fcn.004511c0
add esp, 4
or eax, edx
je case.0x428044.6
mov eax, 1
jmp 0x4280c0
xor eax, eax
jmp 0x4280c0
lea eax, [esp + 0x68]
push eax
lea eax, [esp + 0x94]
call fcn.004515b0
add esp, 4
test eax, eax
setne bl
cmp dword [esp + 0x70], 6
jne 0x4280d8
mov eax, dword [esp + 0x68]
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
test bl, bl
jne 0x4280f3
inc esi
cmp esi, dword [esp + 0x40]
jl 0x427f97
jmp 0x428104
mov dword [esp + 0x24], 0
jmp 0x4280fe
mov eax, dword [esp + 0x14]
mov ecx, dword [eax + 0x14]
mov dword [esp + 0x24], ecx
cmp esi, dword [esp + 0x40]
jl 0x428118
mov edx, dword [esp + 0x14]
mov eax, dword [edx + 0x18]
cmp byte [eax], 0x74
mov dword [esp + 0x14], eax
je 0x427f70
mov ebx, dword [esp + 0x18]
mov esi, dword [esp + 0x10]
cmp dword [esp + 0x98], 6
jne 0x428139
mov eax, dword [esp + 0x90]
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
cmp dword [esp + 0x9c], 0
je 0x428172
test ebx, ebx
je 0x428160
push ebx
call fcn.004908b1
add esp, 4
cmp dword [esp + 0x20], 0x400000
jbe 0x428160
dec dword [0x4cb490]
mov eax, dword [esp + 0xc4]
mov ebx, dword [esp + 0x9c]
mov dword [esp + 0x20], eax
test ebx, ebx
je 0x4281b0
cmp dword [0x4cb488], 0
je 0x4281a0
mov ecx, dword [0x4cb488]
push ecx
call fcn.004908b1
add esp, 4
cmp dword [0x4cb48c], 0x400000
jbe 0x4281a0
dec dword [0x4cb490]
mov edx, dword [esp + 0x20]
mov dword [0x4cb488], ebx
mov dword [0x4cb48c], edx
cmp dword [esp + 0x24], 0
je 0x4281d3
mov ecx, dword [ebp + 0xc]
lea eax, [esp + 0x28]
push eax
push ecx
mov ecx, dword [esp + 0x2c]
push 2
call fcn.00427150
mov edi, eax
mov eax, dword [esp + 0x28]
jmp 0x4281d9
xor eax, eax
mov dword [esp + 0x28], eax
cmp edi, 1
jne 0x427c63
cmp dword [ebp + 8], 3
je 0x427c63
test eax, eax
je 0x428207
mov edx, dword [eax + 0x1c]
cmp edx, dword [esi + 0x1c]
je 0x4285da
mov edx, dword [esp + 0x38]
mov dword [edx], eax
jmp case.0x4274b5.116
mov eax, dword [esi + 0x18]
jmp 0x4285da
cmp dword [ebx + 0xc], 1
jne 0x428221
mov ecx, dword [ebx + 0x18]
mov dword [esp + 0x10], ecx
jmp 0x4285de
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebx + 0x14]
lea edx, [esp + 0x28]
push edx
push eax
push 2
call fcn.00427150
mov edi, eax
mov eax, dword [esp + 0x28]
cmp eax, ebx
je 0x4285de
cmp dword [ebp + 8], 3
je 0x42b7f9
cmp edi, 1
jne 0x42b7f9
test eax, eax
je 0x42826a
mov ecx, dword [ebx + 0x1c]
cmp ecx, dword [eax + 0x1c]
jne 0x42b842
jmp 0x4285da
mov edx, dword [ebx + 0x18]
mov dword [esp + 0x10], edx
jmp 0x4285de
add dword [0x4cbff0], 1
mov ebx, dword [esp + 0x10]
mov esi, dword [0x4ca4b0]
adc dword [0x4cbff4], 0
mov cl, byte [ebx]
mov edi, dword [0x4c6a44]
movzx edx, cl
dec edx
mov dword [esp + 0x20], esi
mov dword [esp + 0x14], edi
cmp edx, 0xe1
ja case.0x4282b5.8
movzx eax, byte [edx + 0x42bfb8]
jmp dword [eax*4 + 0x42bd34]
push ebx
call fcn.0043e430
jmp 0x4285c3
cmp byte [ebx + 1], 1
mov edx, dword [0x4ca504]
jbe 0x428338
mov eax, dword [ebx + 8]
cmp byte [eax + 0x11], 0
je 0x4282e6
mov edi, 1
jmp 0x4285cd
mov eax, dword [eax + 0x1c]
test eax, eax
je 0x4282f9
mov ecx, dword [eax + 4]
mov edx, dword [eax]
push ecx
push edx
jmp 0x4285bd
mov eax, dword [0x4ca4b4]
test eax, eax
je 0x428338
cmp word [edx], 0
jne 0x428338
mov cl, byte [eax + 0x17]
test cl, cl
jne 0x428315
mov ecx, dword [eax + 0xc]
mov cl, byte [ecx + 0x17]
movzx ecx, cl
dec ecx
je 0x42832c
sub ecx, 2
jne 0x428338
mov eax, esi
call fcn.00479160
jmp 0x4285c3
mov ecx, esi
call fcn.00478ed0
jmp 0x4285c3
push 1
push 0
push 0xffffffffffffffff
push edx
push esi
call fcn.00479730
jmp 0x4285c3
mov eax, dword [ebx + 8]
cmp dword [eax + 0x1c], 0
je 0x428366
cmp byte [eax + 0x11], 0
jne 0x428366
mov eax, 1
mov dword [esp + 0x18], eax
xor edi, edi
jmp 0x4283a7
mov edi, dword [0x4ca4b4]
mov eax, dword [0x4ca504]
mov dword [esp + 0x18], 0
test edi, edi
je 0x428395
cmp word [eax], 0
jne 0x428395
mov cl, byte [edi + 0x17]
test cl, cl
jne 0x428390
mov edx, dword [edi + 0xc]
mov cl, byte [edx + 0x17]
cmp cl, 1
je 0x4283f8
xor edi, edi
push 1
push 1
push 0
push 1
call fcn.00476510
add esp, 0x10
push 1
mov ecx, esi
mov dword [esp + 0x28], eax
call fcn.004151a0
mov dword [esp + 0x30], eax
mov eax, dword [0x4ca508]
movzx eax, word [eax]
test ax, ax
je 0x42854a
call fcn.00409ae0
movzx ecx, ax
push ecx
push str.SMHD
call fcn.00490d91
add esp, 8
test eax, eax
je 0x42854a
cmp dword [esp + 0x24], 0
jne 0x428407
mov edi, 1
jmp 0x4285cd
test edi, edi
je 0x428397
push 1
mov ecx, edi
call fcn.004151a0
jmp 0x4283a7
cmp dword [esp + 0x18], 0
je 0x428418
mov edx, dword [ebx + 8]
mov eax, dword [edx + 0x1c]
fild qword [eax]
jmp 0x42843a
test edi, edi
je 0x428427
push 0
mov eax, edi
call fcn.004152d0
jmp 0x42843a
mov esi, dword [0x4ca504]
call fcn.004150a0
mov esi, dword [esp + 0x20]
mov ebx, dword [esp + 0x10]
push 0
fstp qword [esp + 0x34]
push 1
mov ecx, esi
call fcn.00401220
cmp word [eax], 0
je 0x428480
lea ecx, [esp + 0x7c]
push ecx
push 0
push 1
mov ecx, esi
call fcn.00401220
call fcn.004760d0
add esp, 4
test eax, eax
jne 0x4284a1
push 1
push eax
push 0xffffffffffffffff
push 0x4a3890
push esi
call fcn.00479730
jmp 0x4285c3
lea edx, [esp + 0xe4]
push edx
call dword [sym.imp.KERNEL32.dll_GetSystemTimeAsFileTime]
lea eax, [esp + 0x7c]
push eax
lea ecx, [esp + 0xe8]
push ecx
call dword [sym.imp.KERNEL32.dll_FileTimeToLocalFileTime]
mov edx, dword [0x4ca508]
mov ax, word [edx]
call fcn.00409ae0
movzx eax, ax
add eax, 0xffffffbc
cmp eax, 0xf
ja case.0x4284c1.69
movzx eax, byte [eax + 0x42c0b0]
jmp dword [eax*4 + 0x42c09c]
fld qword [esp + 0x30]
fmul qword [0x4c0ec8]
jmp 0x4284fc
fld qword [esp + 0x30]
fmul qword [0x4c0ec0]
jmp 0x4284fc
fld qword [esp + 0x30]
fmul qword [0x4c0eb8]
jmp 0x4284fc
fld qword [esp + 0x30]
fmul qword [0x4c0eb0]
jmp 0x4284fc
fld qword [esp + 0x30]
mov esi, dword [esp + 0x7c]
mov edi, dword [esp + 0x80]
call fcn.0049e6b6
add esi, eax
adc edi, edx
mov dword [esp + 0x7c], esi
push 0
lea eax, [esp + 0x80]
lea esi, [esp + 0x144]
mov dword [esp + 0x84], edi
call fcn.00476380
mov ecx, dword [esp + 0x24]
add esp, 4
push 1
push 0
push 0xffffffffffffffff
push eax
push ecx
call fcn.00479730
mov ebx, dword [esp + 0x10]
jmp 0x4285c3
mov eax, 2
cmp dword [esp + 0x24], eax
je 0x4285f3
cmp dword [esp + 0x30], eax
je 0x4285f3
cmp dword [esp + 0x18], 0
je 0x42857e
mov edx, dword [ebx + 8]
mov eax, dword [edx + 0x1c]
mov edi, dword [eax]
mov eax, dword [eax + 4]
mov dword [esp + 0xbc], eax
jmp 0x4285a9
test edi, edi
je 0x42858d
push 0
mov eax, edi
call fcn.00415250
jmp 0x4285a0
mov esi, dword [0x4ca504]
call fcn.00415070
mov esi, dword [esp + 0x20]
mov ebx, dword [esp + 0x10]
mov dword [esp + 0xbc], edx
mov edi, eax
push 0
mov eax, esi
call fcn.00415250
add eax, edi
adc edx, dword [esp + 0xbc]
push edx
push eax
push esi
call fcn.00415140
mov edi, eax
test edi, edi
je 0x42b7ff
cmp dword [ebp + 8], 3
je 0x42b7ff
mov eax, dword [ebx + 0x14]
mov dword [esp + 0x10], eax
mov ebx, dword [esp + 0x10]
test ebx, ebx
je case.0x4274b5.116
mov esi, dword [esp + 0x50]
jmp 0x4271b0
cmp dword [esp + 0x18], 0
je 0x428604
mov ecx, dword [ebx + 8]
mov edx, dword [ecx + 0x1c]
fild qword [edx]
jmp 0x428626
test edi, edi
je 0x428613
push 0
mov eax, edi
call fcn.004152d0
jmp 0x428626
mov esi, dword [0x4ca504]
call fcn.004150a0
mov esi, dword [esp + 0x20]
mov ebx, dword [esp + 0x10]
push 0
fstp qword [esp + 0x34]
mov eax, esi
call fcn.004152d0
fadd qword [esp + 0x30]
sub esp, 8
fstp qword [esp]
push esi
call fcn.00415170
jmp 0x4285c3
mov eax, dword [0x4ca508]
movzx eax, word [eax]
test ax, ax
je 0x428742
call fcn.00409ae0
movzx ecx, ax
push ecx
push str.SMHD
call fcn.00490d91
add esp, 8
test eax, eax
je 0x428742
mov ecx, dword [0x4ca4b4]
mov edi, dword [0x4ca504]
test ecx, ecx
je 0x4286ad
cmp word [edi], 0
jne 0x4286ad
mov al, byte [ecx + 0x17]
test al, al
jne 0x42869a
mov edx, dword [ecx + 0xc]
mov al, byte [edx + 0x17]
cmp al, 1
jne 0x4286ad
test ecx, ecx
je 0x4286ad
push 0
push 1
call fcn.00401220
mov edi, eax
push 0
push 1
mov ecx, esi
call fcn.00401220
push eax
lea ebx, [esp + 0x5b]
mov eax, edi
call fcn.00476430
add esp, 4
cmp byte [esp + 0x57], 0
mov edi, eax
mov ebx, edx
je 0x4286ee
push 1
push 0
push 0xffffffffffffffff
push 0x4a3890
mov eax, esi
push eax
call fcn.00479730
mov ebx, dword [esp + 0x10]
jmp 0x4285c3
mov ecx, dword [0x4ca508]
mov ax, word [ecx]
call fcn.00409ae0
movzx eax, ax
cmp eax, 0x44
je 0x42871d
cmp eax, 0x48
je 0x428714
cmp eax, 0x4d
jne 0x42872f
push 0
push 0x3c
jmp 0x428724
push 0
push 0xe10
jmp 0x428724
push 0
push 0x15180
push ebx
push edi
call fcn.0049e730
mov edi, eax
mov ebx, edx
push ebx
push edi
mov edx, esi
push edx
call fcn.00415140
mov ebx, dword [esp + 0x10]
jmp 0x4285c3
mov eax, dword [ebx + 8]
xor edx, edx
cmp dword [eax + 0x1c], edx
je 0x428760
cmp byte [eax + 0x11], dl
jne 0x428760
mov edi, 1
mov dword [esp + 0x18], edi
mov dword [esp + 0x14], edx
jmp 0x4287b3
mov edi, dword [0x4ca4b4]
mov eax, dword [0x4ca504]
mov dword [esp + 0x18], edx
cmp edi, edx
je 0x42879d
cmp word [eax], dx
jne 0x42879d
mov cl, byte [edi + 0x17]
test cl, cl
jne 0x428785
mov ecx, dword [edi + 0xc]
mov cl, byte [ecx + 0x17]
cmp cl, 1
jne 0x42879d
mov dword [esp + 0x14], edi
cmp edi, edx
je 0x4287a1
push 1
mov ecx, edi
call fcn.004151a0
jmp 0x4287b1
mov dword [esp + 0x14], edx
push 1
push 1
push 0
push 1
call fcn.00476510
add esp, 0x10
mov edi, eax
push 1
mov ecx, esi
call fcn.004151a0
cmp edi, 2
je 0x42883e
cmp eax, 2
je 0x42883e
cmp dword [esp + 0x18], 0
je 0x4287fa
mov edx, dword [ebx + 8]
mov eax, dword [edx + 0x1c]
mov edi, dword [eax]
mov eax, dword [eax + 4]
mov dword [esp + 0xcc], eax
push 0
mov eax, esi
call fcn.00415250
sub eax, edi
sbb edx, dword [esp + 0xcc]
jmp 0x4285bb
mov eax, dword [esp + 0x14]
test eax, eax
je 0x42880b
push 0
call fcn.00415250
jmp 0x42881e
mov esi, dword [0x4ca504]
call fcn.00415070
mov esi, dword [esp + 0x20]
mov ebx, dword [esp + 0x10]
mov edi, eax
push 0
mov eax, esi
mov dword [esp + 0xd0], edx
call fcn.00415250
sub eax, edi
sbb edx, dword [esp + 0xcc]
jmp 0x4285bb
cmp dword [esp + 0x18], 0
je 0x42884f
mov ecx, dword [ebx + 8]
mov edx, dword [ecx + 0x1c]
fild qword [edx]
jmp 0x428873
mov eax, dword [esp + 0x14]
test eax, eax
je 0x428860
push 0
call fcn.004152d0
jmp 0x428873
mov esi, dword [0x4ca504]
call fcn.004150a0
mov esi, dword [esp + 0x20]
mov ebx, dword [esp + 0x10]
push 0
fstp qword [esp + 0x34]
mov eax, esi
call fcn.004152d0
fsub qword [esp + 0x30]
sub esp, 8
fstp qword [esp]
push esi
call fcn.00415170
jmp 0x4285c3
mov eax, dword [ebx + 8]
xor edx, edx
cmp dword [eax + 0x1c], edx
je 0x4288b3
cmp byte [eax + 0x11], dl
jne 0x4288b3
mov edi, 1
mov dword [esp + 0x18], edi
mov dword [esp + 0x14], edx
jmp 0x428906
mov edi, dword [0x4ca4b4]
mov eax, dword [0x4ca504]
mov dword [esp + 0x18], edx
cmp edi, edx
je 0x4288f0
cmp word [eax], dx
jne 0x4288f0
mov cl, byte [edi + 0x17]
test cl, cl
jne 0x4288d8
mov ecx, dword [edi + 0xc]
mov cl, byte [ecx + 0x17]
cmp cl, 1
jne 0x4288f0
mov dword [esp + 0x14], edi
cmp edi, edx
je 0x4288f4
push 1
mov ecx, edi
call fcn.004151a0
jmp 0x428904
mov dword [esp + 0x14], edx
push 1
push 1
push 0
push 1
call fcn.00476510
add esp, 0x10
mov edi, eax
push 1
mov ecx, esi
call fcn.004151a0
cmp edi, 2
je 0x42897f
cmp eax, 2
je 0x42897f
cmp dword [esp + 0x18], 0
je 0x428934
mov edx, dword [ebx + 8]
mov eax, dword [edx + 0x1c]
mov edi, dword [eax]
mov eax, dword [eax + 4]
mov dword [esp + 0xb4], eax
jmp 0x428961
mov eax, dword [esp + 0x14]
test eax, eax
je 0x428945
push 0
call fcn.00415250
jmp 0x428958
mov esi, dword [0x4ca504]
call fcn.00415070
mov esi, dword [esp + 0x20]
mov ebx, dword [esp + 0x10]
mov dword [esp + 0xb4], edx
mov edi, eax
push 0
mov eax, esi
call fcn.00415250
mov ecx, dword [esp + 0xb4]
push ecx
push edi
push edx
push eax
call fcn.004968a0
jmp 0x4285bb
cmp dword [esp + 0x18], 0
je 0x428990
mov edx, dword [ebx + 8]
mov eax, dword [edx + 0x1c]
fild qword [eax]
jmp 0x4289b4
mov eax, dword [esp + 0x14]
test eax, eax
je 0x4289a1
push 0
call fcn.004152d0
jmp 0x4289b4
mov esi, dword [0x4ca504]
call fcn.004150a0
mov esi, dword [esp + 0x20]
mov ebx, dword [esp + 0x10]
push 0
fstp qword [esp + 0x34]
mov eax, esi
call fcn.004152d0
fmul qword [esp + 0x30]
sub esp, 8
fstp qword [esp]
push esi
call fcn.00415170
jmp 0x4285c3
mov eax, dword [ebx + 8]
xor edx, edx
cmp dword [eax + 0x1c], edx
je 0x4289f4
cmp byte [eax + 0x11], dl
jne 0x4289f4
mov edi, 1
mov dword [esp + 0x18], edi
mov dword [esp + 0x14], edx
jmp 0x428a47
mov edi, dword [0x4ca4b4]
mov eax, dword [0x4ca504]
mov dword [esp + 0x18], edx
cmp edi, edx
je 0x428a31
cmp word [eax], dx
jne 0x428a31
mov cl, byte [edi + 0x17]
test cl, cl
jne 0x428a19
mov ecx, dword [edi + 0xc]
mov cl, byte [ecx + 0x17]
cmp cl, 1
jne 0x428a31
mov dword [esp + 0x14], edi
cmp edi, edx
je 0x428a35
push 1
mov ecx, edi
call fcn.004151a0
jmp 0x428a45
mov dword [esp + 0x14], edx
push 1
push 1
push 0
push 1
call fcn.00476510
add esp, 0x10
mov edi, eax
push 1
mov ecx, esi
call fcn.004151a0
cmp edi, 2
je 0x428ae2
cmp eax, 2
je 0x428ae2
cmp dword [esp + 0x18], 0
je 0x428a7d
mov edx, dword [ebx + 8]
mov eax, dword [edx + 0x1c]
mov edi, dword [eax]
mov eax, dword [eax + 4]
mov dword [esp + 0xa4], eax
jmp 0x428aad
cmp dword [esp + 0x14], 0
je 0x428a91
mov eax, dword [esp + 0x14]
push 0
call fcn.00415250
jmp 0x428aa4
mov esi, dword [0x4ca504]
call fcn.00415070
mov esi, dword [esp + 0x20]
mov ebx, dword [esp + 0x10]
mov dword [esp + 0xa4], edx
mov edi, eax
mov ecx, edi
or ecx, dword [esp + 0xa4]
jne 0x428ac4
mov ecx, esi
call fcn.004150e0
jmp 0x4285c3
push 0
mov eax, esi
call fcn.00415250
mov ecx, dword [esp + 0xa4]
push ecx
push edi
push edx
push eax
call fcn.0049e730
jmp 0x4285bb
cmp dword [esp + 0x18], 0
je 0x428af3
mov edx, dword [ebx + 8]
mov eax, dword [edx + 0x1c]
fild qword [eax]
jmp 0x428b17
mov eax, dword [esp + 0x14]
test eax, eax
je 0x428b04
push 0
call fcn.004152d0
jmp 0x428b17
mov esi, dword [0x4ca504]
call fcn.004150a0
mov esi, dword [esp + 0x20]
mov ebx, dword [esp + 0x10]
fst qword [esp + 0x30]
fldz
fucompp
fnstsw ax
test ah, 0x44
jp 0x428b32
mov ecx, esi
call fcn.004150e0
jmp 0x4285c3
push 0
mov eax, esi
call fcn.004152d0
fdiv qword [esp + 0x30]
sub esp, 8
fstp qword [esp]
push esi
call fcn.00415170
jmp 0x4285c3
mov edi, 2
mov ecx, ebx
call fcn.004234c0
mov dword [esp + 0x18], eax
test eax, eax
jns 0x428b6e
mov dword [esp + 0x18], 0
jmp 0x428b84
mov edi, 1
mov ecx, ebx
call fcn.00423430
cmp dword [esp + 0x18], eax
jle 0x428b84
mov dword [esp + 0x18], eax
mov ecx, dword [esp + 0x18]
mov edx, dword [0x4ca504]
push 1
push 0
push ecx
push edx
push esi
call fcn.00479730
jmp 0x4285c3
mov ecx, dword [esp + 0x10]
mov edi, 2
call fcn.004234c0
mov ebx, eax
test ebx, ebx
jns 0x428bb5
xor ebx, ebx
mov ecx, dword [esp + 0x10]
mov edi, 1
call fcn.00423430
cmp ebx, eax
jbe 0x428bc9
mov ebx, eax
mov ecx, dword [0x4ca504]
push 1
push 0
sub eax, ebx
push ebx
lea eax, [ecx + eax*2]
push eax
push esi
call fcn.00479730
mov ebx, dword [esp + 0x10]
jmp 0x4285c3
cmp byte [ebx + 1], 4
jb 0x428c22
mov edx, dword [ebx + 8]
mov eax, dword [edx + 0x34]
cmp word [eax], 0
je 0x428c22
mov ecx, dword [esp + 0x10]
mov edi, 3
call fcn.004234c0
mov esi, eax
cmp esi, 1
jge 0x428c27
mov ecx, dword [esp + 0x20]
call fcn.004150e0
mov ebx, dword [esp + 0x10]
jmp 0x4285c3
mov esi, SysReAllocString
mov ecx, dword [esp + 0x10]
mov edi, 2
call fcn.004234c0
mov ecx, dword [0x4ca510]
mov ebx, eax
mov ax, word [ecx]
call fcn.00409ae0
cmp ax, 0x4c
jne 0x428c74
cmp ebx, 1
jge 0x428c62
mov ecx, dword [esp + 0x20]
call fcn.004150e0
mov ebx, dword [esp + 0x10]
jmp 0x4285c3
mov edx, 1
sub edx, esi
add ebx, edx
cmp ebx, 1
jge 0x428c7e
lea esi, [esi + ebx - 1]
cmp ebx, 1
jge 0x428c7e
mov ebx, 1
mov ecx, dword [esp + 0x10]
mov edi, 1
call fcn.00423430
cmp eax, ebx
jae 0x428ca2
mov ecx, dword [esp + 0x20]
call fcn.004150e0
mov ebx, dword [esp + 0x10]
jmp 0x4285c3
mov ecx, edi
sub ecx, ebx
add eax, ecx
cmp esi, eax
jbe 0x428cae
mov esi, eax
mov edx, dword [0x4ca504]
mov eax, dword [esp + 0x20]
push 1
push 0
push esi
lea ebx, [edx + ebx*2 - 2]
push ebx
push eax
call fcn.00479730
mov ebx, dword [esp + 0x10]
jmp 0x4285c3
mov ecx, dword [esp + 0x10]
mov edi, 2
call fcn.004234c0
mov ebx, eax
test ebx, ebx
jns 0x428ce7
xor ebx, ebx
mov ecx, dword [esp + 0x10]
mov edi, 1
call fcn.00423430
cmp ebx, eax
jbe 0x428cfb
mov ebx, eax
mov ecx, dword [0x4ca504]
push 1
push 0
sub eax, ebx
push eax
lea ecx, [ecx + ebx*2]
push ecx
push esi
call fcn.00479730
mov ebx, dword [esp + 0x10]
jmp 0x4285c3
mov edi, 2
mov ecx, ebx
call fcn.004234c0
mov dword [esp + 0x18], eax
test eax, eax
jns 0x428d37
mov dword [esp + 0x18], 0
mov edi, 1
mov ecx, ebx
call fcn.00423430
cmp dword [esp + 0x18], eax
jbe 0x428d4d
mov dword [esp + 0x18], eax
sub eax, dword [esp + 0x18]
mov edx, dword [0x4ca504]
push 1
push 0
push eax
push edx
push esi
call fcn.00479730
jmp 0x4285c3
push 1
push 1
mov ecx, esi
call fcn.00401220
mov edi, eax
cmp edi, dword [0x4ca504]
jne 0x428d8e
mov al, byte [esi + 0x17]
test al, al
jne 0x428d8a
mov eax, dword [esi + 0xc]
mov al, byte [eax + 0x17]
cmp al, 1
je 0x428dd4
push 1
push 0
mov edi, 1
mov ecx, ebx
call fcn.00423430
push eax
push 0
push esi
call fcn.00479730
cmp eax, edi
jne case.0x4282b5.8
push 0
push edi
mov ecx, esi
call fcn.00401220
mov ecx, dword [0x4ca504]
mov edi, eax
mov edx, edi
movzx eax, word [ecx]
mov word [edx], ax
add ecx, 2
add edx, 2
test ax, ax
jne 0x428dc3
mov ecx, dword [0x4ca508]
movzx eax, word [ecx]
test ax, ax
je 0x428e03
call fcn.00409ae0
cmp ax, 0x54
jne 0x428e03
mov edx, dword [0x4ca508]
cmp word [edx + 2], 0
jne 0x428e03
mov eax, edi
call fcn.00414de0
jmp 0x428e17
cmp byte [ebx], 0x31
push edi
jne 0x428e11
call dword [sym.imp.USER32.dll_CharLowerW]
jmp 0x428e17
call dword [sym.imp.USER32.dll_CharUpperW]
cmp byte [esi + 0x17], 0
jne 0x428e20
mov esi, dword [esi + 0xc]
cmp byte [esi + 0x17], 2
jne 0x428e3e
cmp dword [0x4cc054], 0
je 0x428e3e
mov ecx, 0x4cc048
call fcn.004046e0
jmp 0x4285c3
and byte [esi + 0x15], 0x86
mov eax, 1
jmp 0x4285c3
mov eax, dword [0x4ca4b4]
test eax, eax
je 0x428e77
cmp byte [eax + 0x17], 0
jne 0x428e63
mov ecx, dword [eax + 0xc]
mov cl, byte [ecx + 0x15]
jmp 0x428e66
mov cl, byte [eax + 0x15]
test cl, 1
je 0x428e77
call fcn.00415530
push 0
jmp 0x4285bc
mov edi, 1
mov ecx, ebx
call fcn.00423430
push 0
jmp 0x4285bc
mov esi, dword [0x4ca50c]
movzx eax, word [esi]
mov dword [esp + 0x30], esi
mov dword [esp + 0x18], 0xffffffff
test ax, ax
je 0x428f27
call fcn.00409ae0
movzx edx, ax
push edx
push 0x4aafa8
call fcn.00490d91
add esp, 8
test eax, eax
je 0x428f27
add esi, 2
cmp word [esi], 0
je 0x428f27
call fcn.0040efe0
mov dword [esp + 0x24], eax
test eax, eax
jle 0x42901e
mov esi, dword [0x4ca508]
cmp word [esi], 0
jne 0x428f31
mov dword [esp + 0x18], 0
mov eax, 0x4a3920
push 1
push 0
push 0xffffffffffffffff
push eax
mov eax, dword [0x4cad6c]
push eax
call fcn.00479730
mov eax, dword [esp + 0x18]
cdq
push 0x18
push edx
push eax
mov eax, dword [esp + 0x2c]
call fcn.004010e0
mov ebx, dword [esp + 0x10]
mov edi, 1
jmp 0x4285cd
mov dword [esp + 0x24], 1
jmp 0x428edc
mov eax, dword [0x4ca504]
mov ecx, dword [esp + 0x10]
mov edi, 4
mov dword [esp + 0x40], eax
call fcn.004234c0
mov ebx, eax
test ebx, ebx
jns 0x428f50
xor ebx, ebx
mov ecx, dword [esp + 0x10]
mov edi, 1
call fcn.00423430
mov edi, eax
cmp ebx, edi
jge 0x42901e
mov ecx, dword [esp + 0x30]
movzx eax, word [ecx]
cmp eax, 0x31
je 0x428fe7
call fcn.00409ae0
cmp ax, 0x52
je 0x428fe7
mov ecx, dword [esp + 0x10]
mov edi, 2
call fcn.00423430
mov edx, dword [esp + 0x40]
mov dword [esp + 0x30], eax
mov edi, 1
lea ecx, [edx + ebx*2]
lea ecx, [ecx]
mov eax, dword [0x4c6a44]
mov al, byte [eax + 0xf2]
test al, al
jne 0x428fb8
mov eax, esi
call fcn.00476a60
jmp 0x428fd3
cmp al, 2
jne 0x428fc9
push ecx
mov eax, esi
call fcn.00476cd0
add esp, 4
jmp 0x428fd3
push esi
push ecx
call fcn.00490db8
add esp, 8
test eax, eax
je 0x42901e
cmp edi, dword [esp + 0x24]
je 0x42900a
mov ecx, dword [esp + 0x30]
inc edi
lea ecx, [eax + ecx*2]
jmp 0x428fa0
mov eax, dword [esp + 0x14]
movzx ecx, byte [eax + 0xf2]
mov edx, dword [esp + 0x24]
push edx
mov edx, dword [esp + 0x44]
push ecx
push esi
mov eax, edi
sub eax, ebx
push edx
call fcn.00476850
add esp, 0x10
test eax, eax
je 0x42901e
sub eax, dword [esp + 0x40]
sar eax, 1
mov dword [esp + 0x18], eax
jns 0x428ef0
mov eax, 0x4a6324
jmp 0x428ef5
push ebx
call fcn.0043e840
jmp 0x4285c3
mov ecx, dword [0x4ca508]
mov eax, dword [0x4ca50c]
push ecx
mov ecx, dword [0x4ca504]
call fcn.00434490
jmp 0x4285c3
mov edx, dword [0x4ca50c]
mov eax, dword [0x4ca508]
mov ecx, dword [0x4ca504]
push edx
push eax
mov eax, dword [0x4ca500]
push ebx
call fcn.0043ea50
jmp 0x4285c3
mov ecx, dword [0x4ca500]
push ecx
mov eax, ebx
call fcn.0043f240
jmp 0x4285c3
mov edx, dword [0x4ca500]
mov ecx, dword [0x4ca504]
push edx
push ebx
call fcn.0043f8c0
jmp 0x4285c3
push 0
push ecx
mov edi, 7
mov ecx, ebx
call fcn.004234c0
add esp, 4
push eax
mov edi, 6
mov ecx, ebx
call fcn.004234c0
push eax
push ecx
mov edi, 5
mov ecx, ebx
call fcn.004234c0
add esp, 4
push eax
mov edi, 4
mov ecx, ebx
call fcn.004234c0
push eax
push ecx
mov edi, 3
mov ecx, ebx
call fcn.004234c0
add esp, 4
push eax
mov edi, 2
mov ecx, ebx
call fcn.004234c0
mov ecx, dword [0x4ca520]
push eax
push ebx
call fcn.0043a7f0
jmp 0x4285c3
mov eax, dword [0x4ca518]
push eax
push ecx
mov edi, 5
mov ecx, ebx
call fcn.004234c0
add esp, 4
push eax
mov edi, 4
mov ecx, ebx
call fcn.004234c0
push eax
push ecx
mov edi, 3
mov ecx, ebx
call fcn.004234c0
add esp, 4
push eax
mov edi, 2
mov ecx, ebx
call fcn.004234c0
push eax
push ebx
call fcn.0043b000
jmp 0x4285c3
mov ecx, dword [0x4ca50c]
push ecx
push ecx
mov edi, 2
mov ecx, ebx
call fcn.004234c0
mov edi, 1
mov ecx, ebx
mov esi, eax
call fcn.004234c0
add esp, 4
mov ecx, eax
push ebx
mov eax, esi
call fcn.00453120
jmp 0x4285c3
mov edx, dword [edi + 0xd4]
xor eax, eax
cmp cl, 0x42
mov ecx, dword [0x4ca500]
sete al
push 0
push edx
push eax
push ecx
call fcn.0040f570
add esp, 0x10
mov edi, 1
jmp 0x4285cd
mov eax, dword [0x4ca500]
xor edx, edx
cmp dword [edi + 0xd4], 3
push 0
sete dl
lea edx, [edx + edx + 1]
push edx
push 0
push eax
call fcn.0040f570
add esp, 0x10
mov edi, 1
jmp 0x4285cd
mov ecx, dword [0x4ca500]
push 0
push 2
push 0
push ecx
call fcn.0040f570
add esp, 0x10
mov edi, 1
jmp 0x4285cd
mov edx, dword [0x4ca500]
push 0
push 0
push 0
push edx
call fcn.0040f570
add esp, 0x10
mov edi, 1
jmp 0x4285cd
mov eax, dword [0x4ca500]
push eax
call fcn.00411770
add esp, 4
jmp 0x4285c3
mov edx, dword [0x4ca518]
mov eax, dword [0x4ca514]
push 0x4a3890
push edx
mov edx, dword [0x4ca510]
push eax
mov eax, dword [0x4ca50c]
push edx
mov edx, dword [0x4ca508]
push eax
mov eax, dword [0x4ca504]
push edx
mov edx, dword [0x4ca500]
push eax
mov eax, 0x4a3890
push ecx
call fcn.004119e0
add esp, 0x20
jmp 0x4285c3
mov edx, dword [0x4ca514]
mov eax, dword [0x4ca518]
push edx
mov edx, dword [0x4ca510]
push eax
mov eax, dword [0x4ca508]
push edx
mov edx, dword [0x4ca504]
push 0x4a3890
push 0x4a3890
push eax
mov eax, dword [0x4ca50c]
push edx
mov edx, dword [0x4ca500]
push ecx
call fcn.004119e0
add esp, 0x20
jmp 0x4285c3
mov eax, dword [0x4ca50c]
mov edx, dword [0x4ca508]
push 0x4a3890
push eax
mov eax, dword [0x4ca504]
push edx
mov edx, dword [0x4ca500]
push 0x4a3890
push 0x4a3890
push eax
push edx
mov eax, 0x4a3890
mov edx, eax
push ecx
call fcn.004119e0
add esp, 0x20
jmp 0x4285c3
mov edi, 4
mov ecx, ebx
call fcn.004234c0
push eax
mov ecx, ebx
call fcn.0043d850
jmp 0x4285c3
mov edx, dword [0x4ca504]
mov ebx, dword [0x4ca508]
mov esi, dword [0x4ca500]
cmp cl, 0x78
sete al
push 0
movzx ecx, al
mov eax, dword [0x4ca50c]
push 0
push ecx
push edx
push edi
call fcn.0047a3e0
add esp, 0x14
test eax, eax
je 0x42935f
mov eax, dword [0x4c6a44]
mov eax, dword [eax + 0x54]
cmp eax, 0xffffffff
jle 0x42935f
push 1
push eax
call fcn.004013d0
add esp, 8
mov ebx, dword [esp + 0x10]
mov edi, 1
jmp 0x4285cd
mov ecx, dword [0x4ca500]
push 9
push str.ahk_group
push ecx
call fcn.0049016d
add esp, 0xc
test eax, eax
jne 0x4293a2
mov edx, dword [0x4ca504]
cmp word [edx], ax
jne 0x4293a2
mov eax, dword [0x4ca50c]
cmp word [eax], 0
mov byte [esp + 0x3f], 1
je 0x4293a7
mov byte [esp + 0x3f], 0
mov al, byte [ebx]
xor ecx, ecx
cmp byte [esp + 0x3f], cl
setne cl
lea esi, [ecx - 1]
and esi, 0x14
cmp al, 0x84
je 0x429407
cmp al, 0x85
je 0x429407
mov edx, dword [0x4ca508]
cmp word [edx], 0
je 0x429444
mov ebx, dword [esp + 0x10]
mov al, byte [ebx]
cmp al, 0x84
je 0x4294ac
cmp al, 0x85
je 0x4294ae
mov edx, dword [0x4ca508]
mov ecx, dword [0x4ca504]
push edx
mov edx, dword [0x4ca500]
push ecx
mov ecx, dword [0x4ca50c]
push eax
call fcn.004363e0
jmp 0x4285c3
mov eax, dword [0x4ca508]
cmp word [eax], 0
je 0x429438
mov edi, 2
mov ecx, ebx
call fcn.00423570
fmul qword [0x4c0e20]
call fcn.0049e680
mov edi, dword [esp + 0x14]
mov esi, eax
test esi, esi
jne 0x429438
mov esi, 0x1f4
mov ecx, dword [0x4ca510]
cmp word [ecx], 0
jne 0x4293cc
cmp byte [esp + 0x3f], 0
je 0x4293cc
mov eax, dword [0x4ca500]
add eax, 0x12
call fcn.00409b60
cmp word [eax], 0
mov dword [esp + 0x30], eax
je 0x4293cc
mov ebx, dword [0x4cb540]
test ebx, ebx
je 0x4293cc
mov edx, dword [esp + 0x30]
mov eax, dword [ebx + 4]
push edx
push eax
call fcn.0048ff69
add esp, 8
test eax, eax
je 0x429495
mov ebx, dword [ebx + 0x14]
test ebx, ebx
jne 0x429474
jmp 0x4293cc
mov ecx, dword [esp + 0x10]
mov cl, byte [ecx]
push ebx
mov edx, esi
call fcn.0047c590
mov ebx, dword [esp + 0x10]
jmp 0x4285c3
cmp al, 0x85
mov ecx, dword [0x4ca510]
mov ebx, dword [0x4ca500]
sete dl
movzx eax, dl
mov edx, dword [0x4ca504]
push eax
mov eax, dword [0x4ca50c]
push ecx
push esi
push edx
push edi
call fcn.0047a6f0
jmp 0x429340
mov ebx, dword [0x4ca504]
call fcn.0043a150
mov ebx, dword [esp + 0x10]
jmp 0x4285c3
mov ecx, dword [0x4ca504]
mov edx, dword [0x4ca500]
push ecx
push edx
call dword [sym.imp.KERNEL32.dll_SetEnvironmentVariableW]
test eax, eax
sete al
movzx ecx, al
push ecx
push ebx
call fcn.00430370
jmp 0x4285c3
lea edx, [esp + 0xe0]
push edx
push 0x3a98
push 1
push str.Environment
push 0
push 0x1a
push 0xffff
call dword [sym.imp.USER32.dll_SendMessageTimeoutW]
test eax, eax
sete al
movzx ecx, al
push ecx
push ebx
call fcn.00430370
jmp 0x4285c3
mov edx, dword [0x4ca504]
mov eax, dword [0x4ca500]
push edx
push ebx
call fcn.00454910
jmp 0x4285c3
mov eax, dword [0x4ca500]
mov ecx, 0x4cc008
call fcn.00473d30
mov eax, dword [0x4ca504]
mov ecx, 0x4cc014
call fcn.00473d30
mov eax, dword [0x4ca508]
mov ecx, 0x4cc020
call fcn.00473d30
mov edi, 1
jmp 0x4285cd
mov ecx, dword [0x4ca508]
mov eax, str.UseErrorLevel
call fcn.00476a60
mov ecx, dword [esp + 0x10]
test eax, eax
setne bl
mov al, 3
cmp al, byte [ecx + 1]
mov ecx, dword [0x4ca508]
sbb edx, edx
and edx, dword [0x4ca4bc]
mov byte [esp + 0xd4], bl
mov eax, dword [esp + 0xd4]
push edx
push 1
push eax
push 0
test bl, bl
sete dl
push ecx
mov ecx, dword [0x4ca504]
movzx eax, dl
mov edx, dword [0x4ca500]
push eax
push ecx
push 0
push 0x4cb508
call fcn.00431670
test bl, bl
je 0x429623
test eax, eax
mov eax, 0x4a3920
jne 0x429610
mov eax, str.ERROR
mov edx, dword [0x4cad6c]
push 1
push 0
push 0xffffffffffffffff
push eax
push edx
call fcn.00479730
mov ebx, dword [esp + 0x10]
jmp 0x4285c3
push ebx
call fcn.004364c0
jmp 0x4285c3
cmp byte [ebx + 1], 2
jbe 0x429679
mov eax, dword [0x4ca518]
mov ecx, dword [0x4ca514]
mov edx, dword [0x4ca510]
push eax
mov eax, dword [0x4ca50c]
push ecx
mov ecx, dword [0x4ca508]
push edx
mov edx, dword [0x4ca500]
push eax
mov eax, dword [0x4ca504]
push ecx
mov ecx, dword [0x4ca51c]
call fcn.00436bd0
jmp 0x4285c3
mov edx, dword [0x4ca504]
mov eax, dword [0x4ca500]
push 0x4a3890
push 0x4a3890
push 0x4a3890
push edx
mov ecx, 0x4a3890
push eax
mov eax, ecx
mov edx, ecx
call fcn.00436bd0
jmp 0x4285c3
mov ecx, dword [0x4ca528]
mov edx, dword [0x4ca524]
mov eax, dword [0x4ca520]
push ecx
mov ecx, dword [0x4ca51c]
push edx
mov edx, dword [0x4ca518]
push eax
mov eax, dword [0x4ca50c]
push ecx
mov ecx, dword [0x4ca508]
push edx
mov edx, dword [0x4ca504]
push eax
mov eax, dword [0x4ca500]
push ecx
mov ecx, dword [0x4ca510]
push edx
mov edx, dword [0x4ca514]
push eax
push ebx
call fcn.00453560
jmp 0x4285c3
mov eax, dword [0x4ca510]
xor edx, edx
cmp cl, 0x47
mov ecx, dword [0x4ca50c]
sete dl
push edx
mov edx, dword [0x4ca504]
push eax
mov eax, dword [0x4ca500]
push ecx
mov ecx, dword [0x4ca514]
push edx
mov edx, dword [0x4ca508]
push eax
push ebx
call fcn.00436cf0
jmp 0x4285c3
mov esi, dword [0x4ca50c]
push 1
xor bl, bl
call fcn.0040f010
add esp, 4
mov byte [esp + 0xd8], al
test al, al
jne 0x429772
mov ecx, dword [0x4ca50c]
push ecx
mov ecx, dword [esp + 0x14]
push 0
push str.Parameter_4_invalid.
call fcn.004306d0
mov ebx, dword [esp + 0x10]
jmp 0x4285c3
mov edx, dword [0x4ca510]
cmp word [edx], 0
je 0x42978e
mov ecx, dword [esp + 0x10]
mov edi, 4
call fcn.004234c0
jmp 0x429793
mov eax, 1
mov ecx, dword [0x4ca518]
mov edx, dword [0x4ca508]
push ecx
mov ecx, dword [0x4ca500]
push edx
mov edx, dword [0x4ca514]
push ecx
mov ecx, dword [esp + 0x1c]
push edx
mov edx, dword [0x4ca504]
push eax
mov eax, dword [esp + 0xec]
push eax
push ecx
mov ecx, dword [0x4ca51c]
call fcn.00436db0
mov ebx, dword [esp + 0x10]
jmp 0x4285c3
mov edx, dword [0x4ca51c]
mov eax, dword [0x4ca518]
mov ecx, dword [0x4ca510]
push edx
mov edx, dword [0x4ca50c]
push eax
mov eax, dword [0x4ca508]
push ecx
mov ecx, dword [0x4ca504]
push edx
mov edx, dword [0x4ca500]
push eax
push ecx
mov ecx, dword [0x4ca520]
push edx
mov edx, dword [0x4ca514]
push ebx
call fcn.00437420
jmp 0x4285c3
mov eax, dword [0x4ca520]
mov ecx, dword [0x4ca51c]
mov edx, dword [0x4ca518]
push eax
mov eax, dword [0x4ca514]
push ecx
mov ecx, dword [0x4ca510]
push edx
push eax
push ecx
mov ecx, ebx
call fcn.00437650
jmp 0x4285c3
mov edx, dword [0x4ca510]
mov eax, dword [0x4ca50c]
mov ecx, dword [0x4ca508]
push edx
mov edx, dword [0x4ca504]
push eax
push ecx
push edx
push ebx
call fcn.004377a0
jmp 0x4285c3
mov eax, dword [0x4ca50c]
mov ecx, dword [0x4ca508]
mov edx, dword [0x4ca500]
push eax
push ecx
mov ecx, dword [0x4ca510]
push edx
mov edx, dword [0x4ca504]
push ebx
call fcn.00437980
jmp 0x4285c3
mov eax, dword [0x4ca510]
mov ecx, dword [0x4ca50c]
mov edx, dword [0x4ca504]
mov esi, dword [0x4ca500]
push eax
mov eax, dword [esp + 0x14]
push ecx
mov ecx, dword [0x4ca514]
push edx
mov edx, dword [0x4ca508]
push eax
call fcn.00437a90
mov ebx, dword [esp + 0x10]
jmp 0x4285c3
mov ecx, dword [0x4ca510]
mov edx, dword [0x4ca504]
mov eax, dword [0x4ca50c]
push ecx
mov ecx, dword [0x4ca514]
push edx
mov edx, dword [0x4ca508]
push ebx
call fcn.00437b50
jmp 0x4285c3
mov eax, dword [0x4ca518]
mov ecx, dword [0x4ca514]
mov edx, dword [0x4ca510]
push eax
mov eax, dword [0x4ca50c]
push ecx
mov ecx, dword [0x4ca508]
push edx
mov edx, dword [0x4ca500]
push eax
push ecx
mov ecx, dword [0x4ca504]
push ebx
call fcn.004538c0
jmp 0x4285c3
mov edx, dword [0x4ca51c]
mov eax, dword [0x4ca518]
mov ecx, dword [0x4ca514]
push edx
mov edx, dword [0x4ca510]
push eax
mov eax, dword [0x4ca50c]
push ecx
mov ecx, dword [0x4ca508]
push edx
push eax
push ecx
mov ecx, dword [0x4ca504]
push ebx
call fcn.00454090
jmp 0x4285c3
mov edx, dword [0x4ca510]
mov ecx, dword [0x4ca514]
mov eax, dword [0x4ca50c]
mov edi, dword [0x4ca504]
push edx
mov edx, dword [0x4ca508]
call fcn.004382f0
jmp 0x4285c3
mov eax, dword [0x4ca518]
mov ecx, dword [0x4ca514]
mov edx, dword [0x4ca510]
push eax
mov eax, dword [0x4ca508]
push ecx
mov ecx, dword [0x4ca504]
push edx
mov edx, dword [0x4ca500]
push eax
push ecx
mov ecx, dword [0x4ca51c]
push edx
mov edx, dword [0x4ca50c]
call fcn.00438360
jmp 0x4285c3
cmp cl, 0x92
sete al
movzx ecx, al
push ecx
mov eax, ebx
call fcn.004384a0
jmp 0x4285c3
mov edx, dword [0x4ca504]
mov ecx, dword [0x4ca508]
push edx
mov edx, dword [0x4ca500]
push ebx
call fcn.004387c0
jmp 0x4285c3
mov eax, dword [0x4ca514]
mov ecx, dword [0x4ca510]
mov edx, dword [0x4ca50c]
push eax
mov eax, dword [0x4ca508]
push ecx
mov ecx, dword [0x4ca504]
push edx
mov edx, dword [0x4ca500]
push eax
push ebx
call fcn.00438e50
jmp 0x4285c3
cmp byte [ebx + 1], 1
jbe 0x429a69
mov ecx, dword [0x4ca50c]
mov edx, dword [0x4ca508]
mov eax, dword [0x4ca504]
push ecx
mov ecx, dword [0x4ca510]
push edx
mov edx, dword [0x4ca500]
call fcn.00439230
jmp 0x4285c3
mov esi, dword [0x4ca500]
mov ecx, 0x4a3890
push 0x4a3890
mov eax, ecx
mov edx, ecx
call fcn.004449b0
test eax, eax
je 0x429a8e
push esi
push eax
call dword [sym.imp.USER32.dll_SetWindowTextW]
mov eax, 1
jmp 0x4285c3
mov eax, dword [0x4ca50c]
mov ecx, dword [0x4ca510]
mov edx, dword [0x4ca504]
push eax
mov eax, dword [0x4ca508]
call fcn.00439260
jmp 0x4285c3
mov ecx, dword [0x4ca50c]
mov eax, dword [0x4ca508]
mov edx, dword [0x4ca504]
push ecx
mov ecx, dword [0x4ca510]
call fcn.004393c0
jmp 0x4285c3
mov edx, dword [0x4ca510]
mov eax, dword [0x4ca50c]
mov ecx, dword [0x4ca504]
push edx
mov edx, dword [0x4ca508]
push eax
push ecx
mov ecx, dword [0x4ca514]
push ebx
call fcn.004394e0
jmp 0x4285c3
mov edx, dword [0x4ca50c]
mov ecx, dword [0x4ca510]
mov eax, dword [0x4ca508]
push edx
mov edx, dword [0x4ca504]
push ebx
call fcn.00439d70
jmp 0x4285c3
mov eax, dword [0x4ca51c]
mov ecx, dword [0x4ca518]
mov edx, dword [0x4ca514]
push eax
mov eax, dword [0x4ca510]
push ecx
push edx
push eax
mov eax, ebx
call fcn.00439fd0
jmp 0x4285c3
mov ecx, dword [0x4ca508]
push ecx
mov ecx, dword [0x4ca504]
push ebx
call fcn.0043a230
jmp 0x4285c3
push 0
push 0x1a3
push 0x111
push 0
push str.Shell_TrayWnd
call dword [sym.imp.USER32.dll_FindWindowW]
push eax
call dword [sym.imp.USER32.dll_PostMessageW]
mov edx, dword [0x4c6a44]
mov eax, dword [edx + 0x54]
cmp eax, 0xffffffff
jle 0x429ba0
push 1
push eax
call fcn.004013d0
add esp, 8
mov edi, 1
jmp 0x4285cd
push 0
push 0x1a0
push 0x111
push 0
push str.Shell_TrayWnd
call dword [sym.imp.USER32.dll_FindWindowW]
push eax
call dword [sym.imp.USER32.dll_PostMessageW]
mov eax, dword [0x4c6a44]
mov eax, dword [eax + 0x54]
cmp eax, 0xffffffff
jle 0x429ba0
push 1
push eax
call fcn.004013d0
add esp, 8
mov edi, 1
jmp 0x4285cd
mov eax, dword [ebx + 0xc]
test eax, eax
jne 0x429c25
mov edi, dword [0x4ca500]
cmp word [edi], ax
je 0x429c25
mov eax, 0x4cb508
call fcn.0041c540
test eax, eax
jne 0x429c25
mov ecx, dword [0x4ca500]
push ecx
push eax
push str.Target_label_does_not_exist.
mov ecx, ebx
call fcn.004306d0
jmp 0x4285c3
mov dword [0x4cbf98], eax
mov edi, 1
jmp 0x4285cd
mov ecx, dword [0x4ca508]
mov dl, 1
cmp dl, byte [ebx + 1]
mov edx, dword [0x4ca504]
sbb eax, eax
and eax, dword [0x4ca4b4]
push eax
mov eax, dword [0x4ca500]
push ecx
mov ecx, dword [ebx + 0xc]
push edx
push eax
call fcn.0040b040
add esp, 0x10
jmp 0x4285c3
mov edi, dword [ebx + 0xc]
test edi, edi
jne 0x429d15
push edi
mov edi, dword [0x4ca500]
mov eax, esi
mov ebx, 0x4cb508
call fcn.0041c580
mov edi, eax
test edi, edi
jne 0x429d15
mov eax, dword [0x4ca500]
mov ecx, dword [esp + 0x10]
cmp word [eax], di
je 0x429cb1
push eax
push edi
push str.Target_label_does_not_exist.
call fcn.004306d0
mov ebx, dword [esp + 0x10]
jmp 0x4285c3
cmp byte [ecx + 1], 0
jbe 0x429cdd
mov edx, dword [ecx + 8]
mov eax, dword [edx + 4]
cmp word [eax], 0
je 0x429cdd
push 0x4a3890
push 0
push str.Parameter_1_invalid.
call fcn.004306d0
mov ebx, dword [esp + 0x10]
jmp 0x4285c3
mov eax, dword [esp + 0x14]
mov edi, dword [eax + 0xbc]
test edi, edi
jne 0x429d15
mov eax, dword [eax + 0xc0]
test eax, eax
je 0x429cfb
mov edi, dword [eax]
test edi, edi
jne 0x429d15
push 0x4a3890
push 0
push str.Parameter_1_must_not_be_blank_in_this_case.
call fcn.004306d0
mov ebx, dword [esp + 0x10]
jmp 0x4285c3
mov eax, dword [0x4ca504]
push 0
push 1
push 1
push 1
call fcn.00476510
add esp, 0x10
test eax, eax
jne 0x429dcd
mov esi, dword [0x4ca504]
push eax
call fcn.00409c00
add esp, 4
test eax, eax
jne 0x429d95
mov eax, dword [0x4ca504]
push str.Delete
push eax
call fcn.0048ff69
add esp, 8
test eax, eax
jne 0x429d75
push edi
push 0x4cb508
call fcn.0041c450
mov ebx, dword [esp + 0x10]
mov edi, 1
jmp 0x4285cd
mov ecx, dword [0x4ca504]
push ecx
mov ecx, dword [esp + 0x14]
push 0
push str.Parameter_2_invalid.
call fcn.004306d0
mov ebx, dword [esp + 0x10]
jmp 0x4285c3
jle 0x429dcd
cmp eax, 2
jg 0x429dcd
mov ecx, dword [0x4ca508]
cmp eax, 1
sete dl
push 0
movzx eax, dl
push eax
push ecx
push 0x4a3890
push edi
mov edi, 0x4cb508
call fcn.0041c170
mov ebx, dword [esp + 0x10]
mov edi, 1
jmp 0x4285cd
mov ecx, dword [0x4ca504]
cmp word [ecx], 0
mov edx, dword [0x4ca508]
jne 0x429de9
cmp word [edx], 0
je 0x429de9
mov al, 1
jmp 0x429deb
xor al, al
push eax
push 1
push edx
push ecx
push edi
mov edi, 0x4cb508
call fcn.0041c170
mov ebx, dword [esp + 0x10]
mov edi, 1
jmp 0x4285cd
mov eax, dword [0x4ca500]
cmp word [eax], 0
mov esi, 0x10
je 0x429e3e
push 0x4ab044
push eax
call fcn.0048ff69
add esp, 8
test eax, eax
je 0x429e3e
xor edi, edi
mov ecx, ebx
call fcn.004234c0
mov edi, dword [esp + 0x14]
mov esi, eax
test esi, esi
je 0x429e43
mov eax, 1
mov byte [edi + 0xee], al
test al, al
je 0x429e6d
or eax, 0xffffffff
mov dword [edi + 0xd8], esi
mov byte [edi + 0xec], 0
mov dword [edi], eax
mov dword [edi + 4], eax
mov dword [edi + 0x24], eax
lea edi, [eax + 2]
jmp 0x4285cd
mov dword [edi + 0xd8], 5
mov byte [edi + 0xec], 1
mov edi, 1
jmp 0x4285cd
mov esi, dword [0x4ca500]
call fcn.00416300
dec eax
je 0x429f3d
dec eax
je 0x429eee
dec eax
jne 0x42935f
mov edx, dword [0x4ca504]
cmp word [edx], ax
je 0x429eda
mov ecx, dword [esp + 0x10]
lea edi, [eax + 1]
call fcn.004234c0
or eax, edx
jne 0x429ed6
mov ebx, dword [esp + 0x10]
mov eax, edi
mov edi, dword [esp + 0x14]
mov byte [edi + 0xed], al
mov edi, eax
jmp 0x4285cd
mov edi, dword [esp + 0x14]
mov ebx, dword [esp + 0x10]
xor eax, eax
mov byte [edi + 0xed], al
lea edi, [eax + 1]
jmp 0x4285cd
mov eax, dword [0x4ca504]
cmp word [eax], 0
je 0x429f0c
mov ecx, dword [esp + 0x10]
mov edi, 1
call fcn.004234c0
mov dword [0x4cbffc], eax
mov ecx, dword [0x4ca508]
cmp word [ecx], 0
je 0x42935f
mov ecx, dword [esp + 0x10]
mov edi, 2
call fcn.004234c0
mov ebx, dword [esp + 0x10]
mov dword [0x4cbff8], eax
mov edi, 1
jmp 0x4285cd
mov ecx, dword [esp + 0x10]
mov edi, 1
call fcn.004234c0
mov edx, dword [esp + 0x14]
mov ebx, dword [esp + 0x10]
mov dword [edx + 0x2c], eax
jmp 0x4285cd
mov esi, dword [ebx + 0xc]
test esi, esi
jne 0x429f7e
mov edi, dword [0x4ca500]
push 1
push 0x4cb508
call fcn.00424230
mov esi, eax
test esi, esi
je case.0x4282b5.8
mov edi, dword [0x4ca50c]
cmp word [edi], 0
je 0x429fbb
mov eax, dword [ebx + 0x18]
test eax, eax
jne 0x429fb8
mov eax, 0x4cb508
call fcn.0041c540
test eax, eax
jne 0x429fb8
mov eax, dword [0x4ca50c]
push eax
push 0
push str.Target_label_does_not_exist.
mov ecx, ebx
call fcn.004306d0
jmp 0x4285c3
mov dword [esi + 0x10], eax
mov ecx, dword [0x4ca514]
mov edx, dword [0x4ca510]
mov eax, dword [0x4ca508]
push ecx
mov ecx, dword [0x4ca504]
push edx
push eax
push ecx
push esi
call fcn.0047c260
jmp 0x4285c3
mov esi, dword [ebx + 0xc]
test esi, esi
jne 0x42a020
mov eax, dword [0x4ca500]
mov edi, eax
cmp word [eax], si
je 0x42a05b
mov esi, dword [0x4cb540]
test esi, esi
je 0x42a05b
mov edi, edi
mov edx, dword [esi + 4]
push edi
push edx
call fcn.0048ff69
add esp, 8
test eax, eax
je 0x42a020
mov esi, dword [esi + 0x14]
test esi, esi
jne 0x42a000
lea edi, [esi + 1]
jmp 0x4285cd
mov eax, dword [0x4ca504]
cmp word [eax], 0
je 0x42a051
push 0x4a6e84
push eax
call fcn.0048ff69
add esp, 8
test eax, eax
jne 0x42a051
mov al, 1
mov ecx, esi
push eax
call fcn.0047c8e0
mov edi, 1
jmp 0x4285cd
xor al, al
mov ecx, esi
push eax
call fcn.0047c8e0
mov edi, 1
jmp 0x4285cd
mov esi, dword [ebx + 0xc]
test esi, esi
jne 0x42a0b0
mov eax, dword [0x4ca500]
mov edi, eax
cmp word [eax], si
je 0x42a11a
mov esi, dword [0x4cb540]
test esi, esi
je 0x42a11a
lea ebx, [ebx]
mov eax, dword [esi + 4]
push edi
push eax
call fcn.0048ff69
add esp, 8
test eax, eax
je 0x42a0b0
mov esi, dword [esi + 0x14]
test esi, esi
jne 0x42a090
lea edi, [esi + 1]
jmp 0x4285cd
mov eax, dword [0x4ca504]
cmp word [eax], 0
je 0x42a111
push 0x4a9618
push eax
call fcn.0048ff69
add esp, 8
test eax, eax
jne 0x42a0e1
push esi
xor edx, edx
mov cl, 0x84
call fcn.0047c590
mov edi, 1
jmp 0x4285cd
mov eax, dword [0x4ca504]
cmp word [eax], 0
je 0x42a111
push 0x4a6e84
push eax
call fcn.0048ff69
add esp, 8
test eax, eax
jne 0x42a111
mov al, 1
push eax
push esi
call fcn.0047c650
mov edi, 1
jmp 0x4285cd
xor al, al
push eax
push esi
call fcn.0047c650
mov edi, 1
jmp 0x4285cd
mov ecx, dword [0x4ca508]
mov eax, dword [0x4ca504]
push ecx
call fcn.00440440
jmp 0x4285c3
test esi, esi
jne 0x42a152
lea edi, [esi + 1]
mov ecx, ebx
call fcn.004234c0
call fcn.00414ac0
jmp 0x4285cd
mov eax, dword [0x4ca504]
push 0
push 1
push 0
push 1
call fcn.00476510
add esp, 0x10
cmp eax, 2
je 0x42a18a
mov eax, dword [0x4ca508]
push 0
push 1
push 0
push 1
call fcn.00476510
add esp, 0x10
cmp eax, 2
jne 0x42a216
mov edx, dword [0x4ca504]
cmp word [edx], 0
je 0x42a1a4
mov edi, 1
mov ecx, ebx
call fcn.00423570
jmp 0x42a1a6
fldz
mov eax, dword [0x4ca508]
fst qword [esp + 0x30]
cmp word [eax], 0
je 0x42a1e0
mov edi, 2
fstp st(0)
mov ecx, ebx
call fcn.00423570
fst qword [esp + 0x40]
fld qword [esp + 0x30]
fxch st(1)
fcom st(1)
fnstsw ax
test ah, 5
jp 0x42a1ec
fstp qword [esp + 0x30]
fstp qword [esp + 0x40]
jmp 0x42a1f0
fld qword [0x4c0ea8]
fst qword [esp + 0x40]
jmp 0x42a1cd
fstp st(0)
fstp st(0)
call fcn.00414c30
fld qword [esp + 0x40]
fld qword [esp + 0x30]
sub esp, 8
fsub st(1), st(0)
fxch st(2)
fmulp st(1)
faddp st(1)
fstp qword [esp]
push esi
call fcn.00415170
jmp 0x4285c3
mov ecx, dword [0x4ca504]
cmp word [ecx], 0
je 0x42a234
mov ecx, dword [esp + 0x10]
mov edi, 1
call fcn.004234c0
mov ebx, eax
jmp 0x42a236
xor ebx, ebx
mov edx, dword [0x4ca508]
cmp word [edx], 0
je 0x42a254
mov ecx, dword [esp + 0x10]
mov edi, 2
call fcn.004234c0
mov esi, eax
jmp 0x42a259
mov esi, SysReAllocString
cmp ebx, esi
jle 0x42a263
mov eax, ebx
mov ebx, esi
mov esi, eax
call fcn.00414be0
mov ecx, eax
mov eax, esi
cdq
mov esi, eax
mov edi, edx
mov eax, ebx
cdq
sub esi, eax
sbb edi, edx
add esi, 1
adc edi, 0
push edi
push esi
push 0
push ecx
call fcn.0049f190
add eax, ebx
jmp 0x428f0b
mov ecx, dword [0x4ca504]
push 1
push ebx
call fcn.00440560
jmp 0x4285c3
mov edx, dword [0x4ca508]
mov eax, dword [0x4ca504]
mov ecx, dword [0x4ca500]
push edx
push ebx
call fcn.004406a0
jmp 0x4285c3
mov ecx, dword [0x4ca508]
mov edx, dword [0x4ca504]
push ebx
call fcn.00440950
jmp 0x4285c3
mov eax, dword [0x4ca50c]
mov edx, dword [0x4ca504]
push eax
xor eax, eax
cmp cl, 0x9d
sete al
push edx
dec eax
and eax, dword [0x4ca500]
push eax
push ebx
call fcn.00440f70
jmp 0x4285c3
mov ecx, dword [0x4ca504]
cmp word [ecx], 0
je 0x42a319
mov edi, 1
mov ecx, ebx
call fcn.004234c0
dec eax
jmp 0x42a31b
xor eax, eax
cdq
test edx, edx
jg 0x42a32c
jl 0x42a326
test eax, eax
jae 0x42a32c
xor eax, eax
mov dword [esp + 0x34], eax
cmp byte [ebx], 0x9f
push eax
jne 0x42a342
mov esi, dword [esp + 0x14]
call fcn.00442080
mov ebx, esi
jmp 0x4285c3
mov edi, dword [0x4ca500]
mov ebx, dword [esp + 0x14]
call fcn.00442170
jmp 0x4285c3
mov edx, dword [0x4ca504]
cmp word [edx], 0
je 0x42a374
mov edi, 1
mov ecx, ebx
call fcn.004234c0
mov esi, eax
test esi, esi
jns 0x42a379
mov esi, 0x96
mov eax, dword [0x4ca500]
cmp word [eax], 0
je 0x42a39f
xor edi, edi
mov ecx, ebx
call fcn.004234c0
push esi
push eax
call dword [sym.imp.KERNEL32.dll_Beep]
mov edi, 1
jmp 0x4285cd
mov eax, 0x20b
push esi
push eax
call dword [sym.imp.KERNEL32.dll_Beep]
mov edi, 1
jmp 0x4285cd
mov eax, dword [0x4ca504]
cmp word [eax], 0
je 0x42a3d8
push str.wait
push eax
call fcn.0048ff69
add esp, 8
test eax, eax
je 0x42a3fd
mov eax, dword [0x4ca504]
push 0x4a6324
push eax
call fcn.0048ff69
add esp, 8
test eax, eax
je 0x42a3fd
xor al, al
push eax
mov eax, dword [0x4ca500]
push ebx
call fcn.004422d0
jmp 0x4285c3
mov eax, 1
push eax
mov eax, dword [0x4ca500]
push ebx
call fcn.004422d0
jmp 0x4285c3
cmp byte [ebx + 1], 2
jae 0x42a41e
mov edi, dword [edi + 0x18]
jmp 0x42a420
xor edi, edi
mov ecx, dword [0x4ca500]
mov edx, dword [0x4ca504]
push edi
push ecx
push edx
push ebx
call fcn.00443630
jmp 0x4285c3
mov ecx, dword [0x4ca504]
push ebx
call fcn.00442d20
jmp 0x4285c3
mov eax, dword [0x4ca504]
mov ecx, dword [0x4ca508]
push eax
push ebx
call fcn.004432a0
jmp 0x4285c3
mov esi, dword [0x4ca500]
mov edi, dword [esp + 0x10]
call fcn.00443a30
mov ebx, edi
jmp 0x4285c3
mov eax, dword [0x4ca500]
mov edi, ebx
call fcn.00455580
jmp 0x4285c3
mov ecx, dword [0x4ca500]
movzx eax, word [ecx]
neg eax
sbb eax, eax
push 7
and eax, ecx
push eax
push 0
call dword [sym.imp.SHELL32.dll_SHEmptyRecycleBinW]
test eax, eax
setne cl
movzx edx, cl
push edx
push ebx
call fcn.00430370
jmp 0x4285c3
mov eax, dword [0x4ca500]
mov ecx, dword [0x4ca508]
mov edx, dword [0x4ca504]
push eax
push ebx
call fcn.00443aa0
jmp 0x4285c3
add edi, 0x30
push edi
push 0
mov edi, 2
mov ecx, ebx
call fcn.004234c0
cmp eax, 1
mov eax, dword [0x4ca504]
sete cl
movzx edx, cl
mov ecx, dword [0x4ca500]
push edx
push eax
call fcn.00455c10
add esp, 0x10
test eax, eax
jne 0x42a554
mov ecx, dword [0x4cad6c]
push 1
push eax
push 0xffffffffffffffff
push 0x4a3920
push ecx
call fcn.00479730
jmp 0x4285c3
add edi, 0x30
push edi
push 1
mov edi, 2
mov ecx, ebx
call fcn.004234c0
mov ecx, dword [0x4ca504]
cmp eax, 1
sete dl
movzx eax, dl
push eax
push ecx
mov ecx, dword [0x4ca500]
call fcn.00455c10
add esp, 0x10
push eax
push ebx
call fcn.00430430
jmp 0x4285c3
push 0
push ecx
mov edi, 2
mov ecx, ebx
call fcn.004234c0
dec eax
add esp, 4
neg eax
sbb eax, eax
inc eax
mov edx, dword [0x4ca504]
push eax
mov eax, dword [0x4ca500]
push edx
push eax
call fcn.00455860
add esp, 0x10
test al, al
sete cl
movzx edx, cl
push edx
push ebx
call fcn.00430370
jmp 0x4285c3
mov eax, dword [0x4ca508]
mov ax, word [eax]
call fcn.00409ae0
cmp ax, 0x52
jne 0x42a5dd
mov ecx, dword [0x4ca504]
mov edx, dword [0x4ca500]
push ecx
push edx
call dword [sym.imp.KERNEL32.dll_MoveFileW]
test eax, eax
sete al
movzx ecx, al
push ecx
push ebx
call fcn.00430370
jmp 0x4285c3
push 1
push ecx
mov edi, 2
mov ecx, ebx
call fcn.004234c0
add esp, 4
jmp 0x42a578
mov eax, dword [0x4ca500]
push 0
push eax
call fcn.00442c40
add esp, 8
test al, al
sete cl
mov byte [esp + 0x78], cl
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, dword [0x4c6a44]
mov dword [edx + 0x30], eax
mov eax, dword [esp + 0x78]
push eax
push ebx
call fcn.00430370
jmp 0x4285c3
mov ecx, dword [0x4ca500]
cmp word [ecx], 0
je 0x42a669
mov edi, 1
mov ecx, ebx
call fcn.004234c0
cmp eax, edi
sete dl
movzx eax, dl
push eax
mov eax, dword [0x4ca500]
call fcn.00455b20
add esp, 4
test al, al
je 0x42a669
xor al, al
push eax
push ebx
call fcn.00430370
jmp 0x4285c3
mov eax, 1
push eax
push ebx
call fcn.00430370
jmp 0x4285c3
mov eax, dword [0x4ca504]
cmp word [eax], 0
jne 0x42a697
mov edi, dword [edi + 0x10]
lea eax, [edi + 0x250]
test edi, edi
jne 0x42a697
mov eax, 0x4a3890
mov edi, ebx
call fcn.00443c50
jmp 0x4285c3
mov ebx, dword [0x4ca504]
cmp word [ebx], 0
jne 0x42a6c1
mov edi, dword [edi + 0x10]
lea ebx, [edi + 0x250]
test edi, edi
jne 0x42a6c1
mov ebx, 0x4a3890
mov ecx, dword [esp + 0x10]
mov edi, 3
call fcn.004234c0
mov esi, dword [0x4ca508]
cmp eax, 1
sete cl
movzx edx, cl
push edx
call fcn.00416560
push eax
mov eax, dword [esp + 0x18]
push ebx
push eax
mov eax, dword [0x4ca500]
call fcn.00443d60
mov ebx, dword [esp + 0x10]
jmp 0x4285c3
mov eax, dword [0x4ca504]
cmp word [eax], 0
jne 0x42a71b
mov edi, dword [edi + 0x10]
lea eax, [edi + 0x250]
test edi, edi
jne 0x42a71b
mov eax, 0x4a3890
mov ecx, dword [0x4ca508]
movzx edx, word [ecx]
push edx
mov edi, ebx
call fcn.004443d0
jmp 0x4285c3
mov ebx, dword [0x4ca504]
cmp word [ebx], 0
jne 0x42a74f
mov edi, dword [edi + 0x10]
lea ebx, [edi + 0x250]
test edi, edi
jne 0x42a74f
mov ebx, 0x4a3890
mov ecx, dword [esp + 0x10]
mov edi, 4
call fcn.004234c0
mov esi, dword [0x4ca50c]
cmp eax, 1
sete al
movzx ecx, al
push ecx
call fcn.00416560
mov edx, dword [0x4ca508]
mov edi, dword [esp + 0x14]
push eax
movzx eax, word [edx]
push eax
mov eax, dword [0x4ca500]
push ebx
call fcn.00444550
mov ebx, edi
jmp 0x4285c3
mov eax, dword [0x4ca504]
cmp word [eax], 0
je 0x42a7b2
mov ecx, dword [0x4ca508]
push ecx
mov edi, eax
push ebx
call fcn.00444710
jmp 0x4285c3
mov edi, dword [edi + 0x10]
test edi, edi
je 0x42a7d1
mov ecx, dword [0x4ca508]
push ecx
add edi, 0x250
push ebx
call fcn.00444710
jmp 0x4285c3
mov ecx, dword [0x4ca508]
push ecx
mov edi, 0x4a3890
push ebx
call fcn.00444710
jmp 0x4285c3
mov eax, dword [0x4ca504]
cmp word [eax], 0
jne 0x42a805
mov edi, dword [edi + 0x10]
lea eax, [edi + 0x250]
test edi, edi
jne 0x42a805
mov eax, 0x4a3890
push ebx
call fcn.00455690
jmp 0x4285c3
mov eax, dword [0x4ca500]
call fcn.00442500
xor edx, edx
cmp dword [edi + 0x104], edx
sete dl
mov edi, edx
jmp 0x4285c5
mov eax, dword [0x4ca510]
mov ecx, dword [0x4ca504]
mov edx, dword [0x4ca508]
push eax
push ecx
mov ecx, dword [0x4ca50c]
push ebx
call fcn.004425c0
jmp 0x4285c3
mov edx, dword [0x4ca508]
mov eax, dword [0x4ca504]
mov ecx, dword [0x4ca50c]
push edx
push eax
mov edx, ebx
call fcn.00454c90
jmp 0x4285c3
mov ecx, dword [0x4ca500]
push ecx
push ebx
call fcn.00454fa0
jmp 0x4285c3
mov edx, dword [0x4ca520]
mov eax, dword [0x4ca518]
mov ecx, dword [0x4ca514]
mov edi, dword [0x4ca51c]
push edx
mov edx, dword [0x4ca50c]
push eax
mov eax, dword [0x4ca504]
push ecx
mov ecx, dword [0x4ca500]
push edx
mov edx, dword [0x4ca508]
push eax
push ecx
mov ecx, dword [0x4ca510]
push ebx
call fcn.00455330
jmp 0x4285c3
push 0
mov ecx, 4
call fcn.0043c9c0
add esp, 4
jmp 0x4285c3
mov esi, dword [0x4ca500]
push 7
call fcn.00409c00
add esp, 4
cmp eax, 7
jne 0x42a905
push 0
lea ecx, [eax - 6]
call fcn.0043c9c0
mov ebx, dword [esp + 0x14]
add esp, 4
jmp 0x4285c3
cmp byte [edi + 0xf9], 0
je 0x42a931
mov ecx, dword [0x4cb480]
test ecx, ecx
jle 0x42a91b
dec ecx
jmp 0x42a920
mov ecx, 0x18f
mov dword [0x4cb480], ecx
mov dword [ecx*4 + 0x4cae40], 0
mov ebx, dword [esp + 0x10]
cmp eax, 1
sete dl
mov byte [edi + 0xf9], dl
mov edi, 1
jmp 0x4285cd
push 0
mov ecx, 2
call fcn.0043c9c0
add esp, 4
jmp 0x4285c3
push 0
mov ecx, 3
call fcn.0043c9c0
add esp, 4
jmp 0x4285c3
mov ebx, dword [0x4c6a44]
add ebx, 0x4c
call fcn.0045da40
test eax, eax
je 0x42a992
mov eax, dword [0x4c6a44]
mov ecx, dword [eax + 0x4c]
mov esi, dword [ecx + 4]
jmp 0x42a994
xor esi, esi
mov ebx, dword [esp + 0x10]
mov al, byte [ebx + 1]
test al, al
jne 0x42a9b6
fldz
sub esp, 8
fstp qword [esp]
push esi
push 0
push 0x10000
push str.Press_OK_to_continue.
jmp 0x42a9fd
cmp al, 1
jne 0x42a9d3
fldz
mov edx, dword [0x4ca500]
sub esp, 8
fstp qword [esp]
push esi
push 0
push 0x10000
push edx
jmp 0x42a9fd
mov edi, 3
mov ecx, ebx
call fcn.00423570
mov eax, dword [0x4ca504]
sub esp, 8
fstp qword [esp]
push esi
push eax
xor edi, edi
mov ecx, ebx
call fcn.004234c0
mov ecx, dword [0x4ca508]
push eax
push ecx
call fcn.0047b310
mov esi, eax
add esp, 0x18
test esi, esi
jne 0x42aa35
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x59e
jne 0x42aa35
mov edx, dword [0x4ca500]
push edx
push esi
push str.Parameter_1_invalid.
mov ecx, ebx
call fcn.004306d0
mov ebx, dword [esp + 0x10]
jmp 0x4285c3
mov ebx, dword [esp + 0x10]
xor eax, eax
test esi, esi
setne al
jmp 0x4285c3
mov ecx, dword [0x4ca51c]
cmp word [ecx], 0
je 0x42aa63
mov edi, 7
mov ecx, ebx
call fcn.004234c0
mov dword [esp + 0x40], eax
jmp 0x42aa6b
mov dword [esp + 0x40], SysStringLen
mov edx, dword [0x4ca518]
cmp word [edx], 0
je 0x42aa89
mov edi, 6
mov ecx, ebx
call fcn.004234c0
mov dword [esp + 0x24], eax
jmp 0x42aa91
mov dword [esp + 0x24], SysStringLen
mov eax, dword [0x4ca514]
cmp word [eax], 0
je 0x42aaae
mov edi, 5
mov ecx, ebx
call fcn.004234c0
mov dword [esp + 0x18], eax
jmp 0x42aab6
mov dword [esp + 0x18], SysStringLen
mov ecx, dword [0x4ca510]
cmp word [ecx], 0
je 0x42aad4
mov edi, 4
mov ecx, ebx
call fcn.004234c0
mov dword [esp + 0x20], eax
jmp 0x42aadc
mov dword [esp + 0x20], SysStringLen
mov edi, 9
mov ecx, ebx
call fcn.00423570
mov edx, dword [0x4ca528]
mov eax, dword [0x4ca520]
mov ax, word [eax]
sub esp, 8
fstp qword [esp]
push edx
call fcn.00409ae0
cmp ax, 0x4c
mov eax, dword [esp + 0x4c]
sete cl
movzx edx, cl
mov ecx, dword [esp + 0x30]
push edx
mov edx, dword [esp + 0x28]
push eax
mov eax, dword [0x4ca50c]
mov ax, word [eax]
push ecx
push edx
call fcn.00409ae0
mov edx, dword [0x4ca508]
mov edi, dword [esp + 0x3c]
cmp ax, 0x48
mov eax, dword [0x4ca504]
push edx
push eax
sete cl
push esi
call fcn.0043cc90
add esp, 0x28
jmp 0x4285c3
mov ecx, dword [0x4ca504]
cmp word [ecx], 0
je 0x42ab6b
mov edi, 1
mov ecx, ebx
call fcn.004234c0
mov esi, eax
jmp 0x42ab6d
xor esi, esi
mov edx, dword [0x4ca500]
cmp word [edx], 0
je 0x42ab84
xor edi, edi
mov ecx, ebx
call fcn.004234c0
jmp 0x42ab89
mov eax, 0xc8
mov ecx, dword [0x4ca50c]
mov edx, dword [0x4ca508]
push ecx
push edx
push esi
push eax
call fcn.004532f0
jmp 0x4285c3
mov eax, dword [0x4ca56c]
test eax, eax
je 0x42abc3
push eax
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x42abc3
mov eax, dword [0x4ca56c]
push eax
call dword [sym.imp.USER32.dll_DestroyWindow]
mov dword [0x4ca56c], 0
mov edi, 1
jmp 0x4285cd
mov ecx, dword [0x4ca510]
mov edx, dword [0x4ca50c]
mov eax, dword [0x4ca508]
push 0
push ecx
mov ecx, dword [0x4ca504]
push edx
mov edx, dword [0x4ca500]
push eax
push ecx
push edx
push ebx
mov ecx, 0x4a3890
call fcn.00432e20
jmp 0x4285c3
mov eax, dword [0x4ca514]
mov ecx, dword [0x4ca510]
mov edx, dword [0x4ca50c]
push 1
push eax
mov eax, dword [0x4ca508]
push ecx
mov ecx, dword [0x4ca504]
push edx
push eax
push ecx
mov ecx, dword [0x4ca500]
push ebx
call fcn.00432e20
jmp 0x4285c3
mov edx, dword [0x4ca508]
mov eax, dword [0x4ca504]
mov ecx, dword [0x4ca500]
push edx
push eax
push ecx
mov ecx, dword [0x4ca50c]
push ebx
call fcn.00434080
jmp 0x4285c3
mov edx, dword [0x4ca504]
mov eax, dword [0x4ca500]
mov edi, dword [0x4ca50c]
mov esi, dword [0x4ca508]
push edx
push eax
call fcn.00434390
mov ebx, dword [esp + 0x10]
jmp 0x4285c3
mov ecx, ebx
call fcn.004356c0
jmp 0x4285c3
mov esi, dword [0x4ca504]
call fcn.004167f0
mov esi, dword [0x4ca500]
movzx ebx, ax
call fcn.00416860
movzx ecx, ax
cmp ecx, 0xffffffff
je 0x428f19
cmp ebx, 0xffffffff
je 0x428f19
mov eax, 3
shl ax, cl
shl bx, cl
not ax
and ax, word [edi + 0xf0]
or ax, bx
mov ebx, dword [esp + 0x10]
mov word [edi + 0xf0], ax
mov edi, 1
jmp 0x4285cd
xor edi, edi
mov ecx, ebx
call fcn.004234c0
mov ecx, dword [esp + 0x14]
mov byte [ecx + 0xef], al
cmp al, 0x64
jbe 0x42ad10
mov byte [ecx + 0xef], 2
mov edi, 1
jmp 0x4285cd
mov ecx, dword [edi + 0xd4]
mov eax, dword [0x4ca500]
push ecx
call fcn.004164d0
mov dword [edi + 0xd4], eax
add esp, 4
mov edi, 1
jmp 0x4285cd
xor edi, edi
mov ecx, ebx
call fcn.004234c0
cmp eax, 0x64
ja 0x42ad56
mov edx, dword [esp + 0x14]
mov byte [edx + 0xf6], al
mov edi, 1
jmp 0x4285cd
mov eax, dword [0x4ca508]
push str.Play
push eax
call fcn.0048ff69
add esp, 8
test eax, eax
jne 0x42adb5
mov ecx, dword [0x4ca500]
cmp word [ecx], ax
je 0x42ad92
xor edi, edi
mov ecx, ebx
call fcn.004234c0
mov edx, dword [esp + 0x14]
mov dword [edx + 0x60], eax
mov eax, dword [0x4ca504]
cmp word [eax], 0
je 0x42adf0
mov edi, 1
mov ecx, ebx
call fcn.004234c0
mov ecx, dword [esp + 0x14]
mov dword [ecx + 0x68], eax
jmp 0x4285cd
mov edx, dword [0x4ca500]
cmp word [edx], 0
je 0x42add1
xor edi, edi
mov ecx, ebx
call fcn.004234c0
mov ecx, dword [esp + 0x14]
mov dword [ecx + 0x5c], eax
mov edx, dword [0x4ca504]
cmp word [edx], 0
je 0x42adf0
mov edi, 1
mov ecx, ebx
call fcn.004234c0
mov ecx, dword [esp + 0x14]
mov dword [ecx + 0x64], eax
mov edi, 1
jmp 0x4285cd
mov edx, dword [0x4ca504]
push str.Play
push edx
call fcn.0048ff69
add esp, 8
xor edi, edi
mov ecx, ebx
test eax, eax
jne 0x42ae2c
call fcn.004234c0
mov ecx, dword [esp + 0x14]
mov dword [ecx + 0x70], eax
mov edi, 1
jmp 0x4285cd
call fcn.004234c0
mov edx, dword [esp + 0x14]
mov dword [edx + 0x6c], eax
mov edi, 1
jmp 0x4285cd
xor edi, edi
mov ecx, ebx
call fcn.004234c0
mov ecx, dword [esp + 0x14]
mov dword [ecx + 0x54], eax
mov edi, 1
jmp 0x4285cd
xor edi, edi
mov ecx, ebx
call fcn.004234c0
mov edx, dword [esp + 0x14]
mov dword [edx + 0x58], eax
mov edi, 1
jmp 0x4285cd
mov ecx, dword [0x4ca500]
mov eax, 0x4ab084
call fcn.00476a60
mov ecx, ebx
test eax, eax
je 0x42aeb1
mov dword [edi], 0xffffffff
mov dword [edi + 4], 0xffffffff
xor edi, edi
call fcn.004234c0
mov ecx, dword [esp + 0x14]
mov dword [ecx + 0x24], eax
mov edi, 1
jmp 0x4285cd
mov dword [edi + 0x24], 0xffffffff
xor edi, edi
call fcn.004234c0
mov ecx, dword [esp + 0x14]
mov dword [ecx + 4], edx
mov edx, eax
or edx, dword [ecx + 4]
mov dword [ecx], eax
jne 0x42aed8
mov dword [ecx], 0xa
mov dword [ecx + 4], edi
mov edi, 1
jmp 0x4285cd
mov esi, dword [0x4ca500]
push 7
call fcn.00409c00
add esp, 4
cmp eax, 7
je 0x428f19
mov ebx, dword [esp + 0x10]
cmp eax, 1
sete al
mov byte [edi + 0xf3], al
mov edi, 1
jmp 0x4285cd
mov esi, dword [0x4ca500]
call fcn.00415fd0
dec eax
cmp eax, 5
ja case.default.0x42af2a
jmp dword [eax*4 + 0x42c0c0]
mov ebx, dword [esp + 0x10]
mov dword [edi + 0x20], 1
mov edi, 1
jmp 0x4285cd
mov ebx, dword [esp + 0x10]
mov dword [edi + 0x20], 2
mov edi, 1
jmp 0x4285cd
mov ebx, dword [esp + 0x10]
mov dword [edi + 0x20], 4
mov edi, 1
jmp 0x4285cd
mov ebx, dword [esp + 0x10]
mov dword [edi + 0x20], 3
mov edi, 1
jmp 0x4285cd
mov ebx, dword [esp + 0x10]
mov byte [edi + 0xe9], 1
mov edi, 1
jmp 0x4285cd
mov ebx, dword [esp + 0x10]
mov byte [edi + 0xe9], 0
mov edi, 1
jmp 0x4285cd
mov edx, dword [0x4ca500]
push 5
push str.Float
push edx
call fcn.0049016d
add esp, 0xc
test eax, eax
jne 0x42b098
lea edi, [eax + 1]
mov ecx, ebx
call fcn.00423430
cmp eax, 0x1e
jae 0x4285cd
mov ecx, dword [esp + 0x10]
call fcn.004234c0
mov edi, eax
mov eax, dword [0x4ca504]
push 0x2e
push eax
mov ebx, edx
call fcn.00490d91
mov esi, eax
add esp, 8
mov dword [esp + 0x30], esi
test esi, esi
je 0x42b015
add esi, 2
call fcn.00415070
mov esi, dword [esp + 0x30]
jmp 0x42b019
xor eax, eax
xor edx, edx
add edi, eax
adc ebx, edx
add edi, 2
adc ebx, 0
mov dword [esp + 0x34], ebx
js 0x42b03b
jg 0x428f19
cmp edi, 0xff
ja 0x428f19
mov eax, dword [0x4ca504]
push 0
push 1
push 1
push 1
call fcn.00476510
add esp, 0x10
mov ecx, 0x4ab08c
test eax, eax
jne 0x42b05e
mov ecx, 0x4a3890
mov eax, 0x4a3890
test esi, esi
jne 0x42b06c
mov eax, 0x4a9e70
mov edx, dword [esp + 0x14]
push ecx
mov ecx, dword [0x4ca504]
push eax
push ecx
add edx, 0x74
push 0x4ab090
push edx
call fcn.004904f6
mov ebx, dword [esp + 0x24]
add esp, 0x14
mov edi, 1
jmp 0x4285cd
mov eax, dword [0x4ca500]
push 7
push str.Integer
push eax
call fcn.0049016d
add esp, 0xc
test eax, eax
jne case.0x42b0c9.69
mov ecx, dword [0x4ca504]
movzx eax, word [ecx]
add eax, 0xffffffbc
cmp eax, 0x24
ja case.0x42b0c9.69
movzx edx, byte [eax + 0x42c0e4]
jmp dword [edx*4 + 0x42c0d8]
mov byte [edi + 0xf5], 0x44
mov edi, 1
jmp 0x4285cd
mov al, byte [ecx]
mov byte [edi + 0xf5], al
mov edi, 1
jmp 0x4285cd
mov ecx, dword [0x4ca508]
push ecx
mov ecx, dword [0x4ca504]
call fcn.0043dc20
jmp 0x4285c3
movzx eax, byte [ebx + 1]
mov dl, 4
cmp dl, al
sbb ecx, ecx
and ecx, dword [0x4ca4c0]
mov dl, 3
push ecx
mov ecx, dword [0x4ca514]
cmp dl, al
mov edx, dword [0x4ca510]
sbb eax, eax
and eax, dword [0x4ca4bc]
push eax
mov eax, dword [0x4ca50c]
push ecx
mov ecx, dword [0x4ca508]
push edx
mov edx, dword [0x4ca500]
push eax
push ecx
mov ecx, dword [0x4ca504]
push edx
push 0x4cb508
call fcn.0046bfb0
jmp 0x4285c3
mov eax, dword [0x4ca50c]
mov ecx, dword [0x4ca508]
mov edx, dword [0x4ca504]
push eax
push ecx
mov ecx, dword [0x4ca500]
push edx
push 0x4cb508
call fcn.0045dab0
jmp 0x4285c3
mov edx, dword [0x4ca504]
mov al, 2
cmp al, byte [ebx + 1]
mov eax, dword [0x4ca500]
sbb ecx, ecx
and ecx, dword [0x4ca4b8]
push ecx
push edx
push eax
mov eax, dword [0x4ca508]
push ebx
call fcn.0045e410
jmp 0x4285c3
mov ecx, dword [0x4ca50c]
mov edx, dword [0x4ca508]
mov eax, dword [0x4ca504]
push ecx
push edx
push eax
push ebx
call fcn.0045f3e0
jmp 0x4285c3
mov eax, dword [0x4ca500]
mov esi, eax
call fcn.00409cc0
test eax, eax
jne 0x42b1fc
push str.Permit
push esi
call fcn.0048ff69
add esp, 8
neg eax
sbb eax, eax
and eax, 0xfffffffa
add eax, 6
jmp switch.0x0042b201
cmp eax, 7
ja case.0x42b201.3
jmp dword [eax*4 + 0x42c10c]
cmp byte [0x4ca6c6], 0
jne case.0x42b201.3
call fcn.00430020
mov edi, 1
jmp 0x4285cd
cmp byte [0x4ca6c6], 0
je case.0x42b201.3
call fcn.00430020
mov edi, 1
jmp 0x4285cd
mov ecx, dword [0x4ca500]
push ecx
push 0
push str.Parameter_1_invalid.
mov ecx, ebx
call fcn.004306d0
jmp 0x4285c3
mov edi, 1
mov ecx, ebx
call fcn.004234c0
test eax, eax
setne dl
movzx eax, dl
push eax
mov eax, dword [0x4ca500]
call fcn.00409cc0
push eax
push ebx
call fcn.00430070
jmp 0x4285c3
mov esi, dword [0x4ca500]
push 7
call fcn.00409c00
add esp, 4
cmp eax, 7
je 0x428f19
mov ebx, dword [esp + 0x10]
cmp eax, 1
sete cl
mov byte [edi + 0xf4], cl
mov edi, 1
jmp 0x4285cd
mov esi, dword [0x4ca500]
call fcn.00416360
mov byte [edi + 0xf2], al
cmp al, 4
jne 0x428f19
mov ebx, dword [esp + 0x10]
mov byte [edi + 0xf2], 0
mov edi, 1
jmp 0x4285cd
mov esi, dword [0x4ca500]
push 7
call fcn.00409c00
add esp, 4
cmp eax, 7
je 0x428f19
mov ebx, dword [esp + 0x10]
cmp eax, 1
sete dl
mov byte [edi + 0xea], dl
mov edi, 1
jmp 0x4285cd
mov esi, dword [0x4ca500]
push 7
call fcn.00409c00
add esp, 4
cmp eax, 7
je 0x428f19
mov ebx, dword [esp + 0x10]
cmp eax, 1
sete al
mov byte [edi + 0xeb], al
mov edi, 1
jmp 0x4285cd
mov eax, dword [0x4ca500]
call fcn.00416420
lea ecx, [eax - 1]
cmp ecx, 0xc
ja case.0x42b361.3
movzx ecx, byte [ecx + 0x42c144]
jmp dword [ecx*4 + 0x42c12c]
push 1
call dword [sym.imp.USER32.dll_BlockInput]
mov byte [0x4cad7a], 1
mov edi, 1
jmp 0x4285cd
push 0
call dword [sym.imp.USER32.dll_BlockInput]
mov byte [0x4cad7a], 0
mov edi, 1
jmp 0x4285cd
mov dword [0x4c6a54], eax
mov edi, 1
jmp 0x4285cd
or byte [0x4cadac], 2
cmp dword [0x4ca698], 0
mov byte [0x4cad7b], 1
jne case.0x42b361.3
mov edx, dword [0x4c7b80]
movzx eax, word [edx]
push eax
call fcn.00408310
add esp, 4
mov edi, 1
jmp 0x4285cd
mov byte [0x4cad7b], 0
mov edi, 1
jmp 0x4285cd
mov eax, dword [0x4ca500]
mov edi, str._a_a_a_v
mov cl, 0x90
call fcn.004448d0
jmp 0x4285c3
mov eax, dword [0x4ca500]
mov edi, 0x4c6a4c
mov cl, 0x14
call fcn.004448d0
jmp 0x4285c3
mov eax, dword [0x4ca500]
mov edi, 0x4c6a50
mov cl, 0x91
call fcn.004448d0
jmp 0x4285c3
mov al, 1
mov edx, 0x4cb508
call fcn.00417de0
mov edi, 1
jmp 0x4285cd
xor edi, edi
mov ecx, ebx
call fcn.004234c0
jmp 0x429b95
mov ecx, dword [0x4ca504]
mov ebx, dword [0x4ca50c]
mov edx, dword [0x4ca508]
push ecx
mov ecx, dword [0x4ca510]
call fcn.00472ce0
mov ebx, dword [esp + 0x10]
jmp 0x4285c3
mov edx, dword [0x4ca500]
mov eax, dword [esp + 0x10]
mov ecx, dword [0x4ca50c]
mov ebx, dword [0x4ca508]
push edx
mov edx, dword [0x4ca504]
push eax
call fcn.00472f20
mov ebx, dword [esp + 0x10]
jmp 0x4285c3
cmp byte [ebx + 1], 3
mov edx, dword [0x4ca504]
sbb ecx, ecx
not ecx
and ecx, dword [0x4ca508]
push ecx
push edx
mov edx, dword [0x4ca500]
push ebx
call fcn.00473070
jmp 0x4285c3
mov eax, 2
cmp byte [ebx + 1], al
jae 0x42b4f6
mov edi, dword [edi + 0x14]
test edi, edi
je 0x42b4f6
lea ecx, [edi + 8]
push ecx
mov ecx, dword [edi + 4]
lea eax, [edi + 0x808]
push ebx
call fcn.004730f0
jmp 0x4285c3
lea edx, [esp + 0x2f]
push edx
mov edx, dword [0x4ca504]
lea ecx, [esp + 0x4c]
push ecx
push edx
call fcn.00415cd0
mov ecx, dword [esp + 0x54]
add esp, 0xc
mov esi, eax
test ecx, ecx
jne 0x42b52a
mov ecx, dword [0x4ca508]
mov eax, dword [0x4ca50c]
mov dword [esp + 0x48], ecx
jmp 0x42b52f
mov eax, dword [0x4ca508]
push ecx
push ebx
mov ecx, esi
call fcn.004730f0
cmp byte [esp + 0x2f], 0
mov edi, eax
je 0x4285c5
test esi, esi
je 0x4285c5
push esi
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp 0x4285c5
mov eax, 2
cmp byte [ebx + 1], al
jae 0x42b58f
mov edi, dword [edi + 0x14]
test edi, edi
je 0x42b58f
mov eax, dword [0x4ca500]
push eax
mov eax, dword [edi + 4]
lea ecx, [edi + 0x808]
push ecx
mov ecx, dword [edi + 0x1008]
lea edx, [edi + 8]
push edx
push ebx
call fcn.004734a0
jmp 0x4285c3
lea ecx, [esp + 0x2f]
push ecx
mov ecx, dword [0x4ca504]
lea edx, [esp + 0x4c]
push edx
push ecx
call fcn.00415cd0
mov ebx, eax
mov eax, dword [esp + 0x54]
add esp, 0xc
test eax, eax
jne 0x42b5c9
mov eax, dword [0x4ca508]
mov ecx, dword [0x4ca50c]
mov edx, dword [0x4ca510]
mov dword [esp + 0x48], eax
jmp 0x42b5d5
mov ecx, dword [0x4ca508]
mov edx, dword [0x4ca50c]
mov esi, dword [0x4ca500]
push edx
push ecx
push eax
call fcn.00415ea0
mov edx, dword [esp + 0x1c]
mov ecx, eax
push edx
mov eax, ebx
call fcn.004734a0
cmp byte [esp + 0x2f], 0
mov edi, eax
je 0x42b605
test ebx, ebx
je 0x42b605
push ebx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov ebx, dword [esp + 0x10]
jmp 0x4285c5
cmp byte [ebx + 1], 1
jae 0x42b68a
mov eax, dword [edi + 0x14]
test eax, eax
je 0x42b68a
cmp dword [eax + 0x1008], 0xfffffffe
lea ecx, [eax + 8]
jne 0x42b665
cmp word [ecx], 0
je 0x42b65b
add eax, 0x808
push eax
push ecx
push 0x4a85a8
mov esi, 0x400
lea edi, [esp + 0x14c]
call fcn.004766b0
add esp, 0xc
mov ecx, edi
mov edi, dword [esp + 0x14]
xor eax, eax
jmp 0x42b66a
lea ecx, [eax + 0x808]
xor eax, eax
jmp 0x42b66a
add eax, 0x808
mov edx, dword [esp + 0x10]
push eax
mov eax, dword [edi + 0x14]
mov ebx, dword [eax + 4]
push edx
mov edi, ecx
mov dword [esp + 0x50], ecx
call fcn.004738b0
mov ebx, dword [esp + 0x10]
jmp 0x4285c3
mov edx, dword [0x4ca500]
lea eax, [esp + 0x2f]
push eax
lea ecx, [esp + 0x4c]
push ecx
push edx
mov eax, 2
call fcn.00415cd0
mov edi, dword [esp + 0x54]
add esp, 0xc
mov ebx, eax
test edi, edi
jne 0x42b6c4
mov edi, dword [0x4ca504]
mov esi, dword [0x4ca508]
mov dword [esp + 0x48], edi
jmp 0x42b6ca
mov esi, dword [0x4ca504]
cmp word [esi], 0
jne 0x42b6d4
xor esi, esi
jmp 0x42b6eb
push str.ahk_default
push esi
call fcn.0048ff69
add esp, 8
test eax, eax
jne 0x42b6eb
mov esi, 0x4a3890
mov eax, dword [esp + 0x10]
push esi
push eax
call fcn.004738b0
cmp byte [esp + 0x2f], 0
mov edi, eax
je 0x42b605
test ebx, ebx
je 0x42b605
push ebx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov ebx, dword [esp + 0x10]
jmp 0x4285c5
mov esi, dword [0x4ca500]
call fcn.00415f20
mov esi, eax
cmp esi, 0xffffffff
jne 0x42b74d
mov ecx, dword [0x4ca500]
push ecx
mov ecx, dword [esp + 0x14]
push 0
push str.Parameter_1_invalid.
call fcn.004306d0
mov ebx, dword [esp + 0x10]
jmp 0x4285c3
call fcn.00477cf0
test eax, eax
je 0x428f19
mov ebx, dword [esp + 0x10]
mov dword [edi + 0xd0], esi
mov edi, 1
jmp 0x4285cd
mov edx, dword [0x4ca500]
push edx
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
mov edi, 1
jmp 0x4285cd
xor edi, edi
mov ecx, ebx
call fcn.004234c0
push eax
call fcn.004561f0
xor ecx, ecx
add esp, 4
test al, al
setne cl
mov edi, ecx
jmp 0x4285c5
mov eax, dword [0x4ca500]
call fcn.00416a20
cmp eax, 0xffffffff
jne 0x42b7ce
mov edx, dword [0x4ca500]
push edx
push 0
push str.Parameter_1_invalid.
mov ecx, ebx
call fcn.004306d0
jmp 0x4285c3
mov dword [edi + 0xfc], eax
mov edi, 1
jmp 0x4285cd
xor edi, edi
mov eax, edi
mov ecx, dword [esp + 0x974]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov edx, dword [esp + 0x38]
mov dword [edx], eax
mov eax, edi
mov ecx, dword [esp + 0x974]
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 0x427486
mov eax, edi
mov ecx, dword [esp + 0x974]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [eax + 8]
mov ecx, dword [esp + 0x38]
mov dword [ecx], eax
jmp case.0x4274b5.116
cmp dword [ebp + 0xc], 0
je 0x42b8b4
mov edx, dword [ebp + 0xc]
cmp dword [edx + 8], 0
jne 0x42b8b4
mov ecx, dword [0x4ca4b0]
test ecx, ecx
je 0x42b8a3
cmp byte [ecx + 0x17], 0
jne 0x42b871
mov eax, dword [ecx + 0xc]
jmp 0x42b873
mov eax, ecx
test byte [eax + 0x15], 2
je 0x42b8a3
mov eax, edx
call fcn.004153e0
mov eax, dword [ebp + 8]
dec eax
neg eax
sbb eax, eax
and eax, 6
inc eax
mov ecx, dword [esp + 0x974]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov eax, edx
mov dword [eax + 8], 0
mov ecx, dword [0x4ca500]
mov dword [eax], ecx
mov eax, dword [ebp + 8]
dec eax
neg eax
sbb eax, eax
and eax, 6
inc eax
mov ecx, dword [esp + 0x974]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov ebx, dword [ebx + 0x18]
test ebx, ebx
je 0x42b8e9
mov edx, dword [esp + 0x38]
mov dword [edx], ebx
jmp case.0x4274b5.116
mov eax, 5
mov ecx, dword [esp + 0x974]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov ebx, dword [ebx + 0x18]
test ebx, ebx
je 0x42b912
mov eax, dword [esp + 0x38]
mov dword [eax], ebx
mov eax, 6
mov ecx, dword [esp + 0x974]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov ecx, dword [0x4ca504]
push ecx
mov ecx, dword [esp + 0x14]
push 0
push str.Parameter_2_invalid.
call fcn.004306d0
mov ecx, dword [esp + 0x974]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov edx, dword [0x4ca508]
push edx
push 0
push str.Parameter_3_invalid.
mov ecx, ebx
call fcn.004306d0
mov ecx, dword [esp + 0x974]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
cmp dword [esp + 0x40], 0
je 0x42b998
lea esi, [esp + 0x40]
call fcn.00430eb0
test ebx, ebx
je 0x42bb1a
cmp ebx, 8
je 0x42bb1a
mov ecx, dword [0x4cbb3c]
push 0x4a3890
push 0
push str.Jumps_cannot_exit_a_FINALLY_block.
call fcn.004306d0
mov ecx, dword [esp + 0x974]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [esp + 0x38]
mov dword [eax], edx
jmp case.0x4274b5.116
mov ecx, dword [esp + 0x38]
mov dword [ecx], edx
mov eax, edi
mov ecx, dword [esp + 0x974]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
cmp byte [ebx + 1], 0
jne 0x42ba31
push 0x4a3890
push 0
push str.An_exception_was_thrown.
mov ecx, ebx
call fcn.004302d0
mov ecx, dword [esp + 0x974]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
push 0x10
call fcn.004913c8
mov edi, eax
add esp, 4
test edi, edi
jne 0x42ba6a
push 0x4a3890
push eax
push str.Out_of_memory.
mov ecx, ebx
call fcn.004306d0
mov ecx, dword [esp + 0x974]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [0x4cb48c]
mov edx, dword [0x4cb488]
lea ecx, [esp + 0x24]
push ecx
mov dword [esp + 0x44], eax
xor eax, eax
push edi
mov dword [esp + 0x2c], edx
mov edx, dword [esp + 0x18]
push eax
push edx
lea ebx, [esp + 0x50]
mov dword [0x4cb488], eax
mov dword [0x4cb48c], eax
call fcn.0045c020
mov ebx, eax
cmp ebx, 1
jne 0x42bace
cmp dword [edi + 8], 0
jne 0x42bace
mov eax, dword [esp + 0x24]
cmp dword [edi], eax
jne 0x42bace
cmp dword [esp + 0x40], 0x400000
mov ecx, eax
mov dword [edi + 0xc], ecx
jbe 0x42bb3a
dec dword [0x4cb490]
jmp 0x42bb3a
cmp dword [esp + 0x24], 0
je 0x42bb0c
mov eax, dword [0x4cb488]
test eax, eax
je 0x42baf9
push eax
call fcn.004908b1
add esp, 4
cmp dword [0x4cb48c], 0x400000
jbe 0x42baf9
dec dword [0x4cb490]
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x40]
mov dword [0x4cb488], edx
mov dword [0x4cb48c], eax
cmp ebx, 1
je 0x42bb33
push edi
call fcn.004908a6
add esp, 4
mov eax, ebx
mov ecx, dword [esp + 0x974]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov dword [edi + 0xc], 0
test byte [esi + 0x100], 2
mov dword [esi + 0x104], edi
jne 0x42bb56
mov ecx, dword [esp + 0x10]
push ecx
call fcn.00430b90
add esp, 4
xor eax, eax
mov ecx, dword [esp + 0x974]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov edx, dword [0x4c7b80]
cmp word [edx], 0
jne 0x42bb9f
cmp dword [0x4caddc], 0
jne 0x42bb9f
cmp dword [0x4ca694], 0
jne 0x42bb9f
cmp dword [0x4ca698], 0
jne 0x42bb9f
cmp byte [0x4ca6a2], 0
je case.0x4274b5.224
mov eax, 8
mov ecx, dword [esp + 0x974]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
xor edi, edi
mov ecx, ebx
call fcn.004234c0
push eax
push 6
push 0x4cb508
call fcn.00417e10
mov ecx, dword [esp + 0x974]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
cmp dword [ebp + 8], 2
je case.0x4274b5.116
push 0x4a3890
push 0
push str.A__return__must_be_encountered_prior_to_this___.
mov ecx, ebx
call fcn.004306d0
mov ecx, dword [esp + 0x974]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret 0xc