Function at 0x407ca8
Capabilities:
Get common file path

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffff9e8
push ebx
push esi
push edi
mov edi, ecx
mov dword [ebp - 4], edx
mov dword [ebp - 0xa0], eax
mov eax, 0x485be0
call fcn.0046462c
mov dword [ebp - 0x80], 1
lea edx, [ebp - 4]
lea eax, [ebp - 4]
call fcn.0046f698
inc dword [ebp - 0x80]
mov word [ebp - 0x8c], 8
push 0x484a5b
cmp dword [ebp - 4], 0
je 0x407cf7
mov edx, dword [ebp - 4]
jmp 0x407cfc
mov edx, 0x484a5e
push edx
call fcn.004660dc
add esp, 8
mov ebx, eax
test eax, eax
jne 0x407d5d
mov word [ebp - 0x8c], 0x14
mov edx, str.failed1
lea eax, [ebp - 8]
call fcn.0046f660
inc dword [ebp - 0x80]
mov eax, dword [eax]
call fcn.00436610
dec dword [ebp - 0x80]
lea eax, [ebp - 8]
mov edx, 2
call fcn.0046f718
dec dword [ebp - 0x80]
lea eax, [ebp - 4]
mov edx, 2
call fcn.0046f718
mov ecx, dword [ebp - 0x9c]
mov dword fs:[0], ecx
jmp 0x409ceb
mov eax, dword [ebp + 8]
sub eax, 0x2c
mov dword [ebp - 0xa4], eax
push 0
mov edx, dword [ebp - 0xa4]
push edx
push ebx
call fcn.004663bc
add esp, 0xc
push ebx
push 1
push 0x2c
mov ecx, dword [ebp - 0xa0]
add ecx, 0x140c
push ecx
call fcn.0046631c
add esp, 0x10
mov eax, dword [ebp - 0xa4]
sub eax, 0xb4
mov dword [ebp - 0xa4], eax
push 0
mov edx, dword [ebp - 0xa4]
push edx
push ebx
call fcn.004663bc
add esp, 0xc
push ebx
push 1
push 0xb4
mov ecx, dword [ebp - 0xa0]
add ecx, 0x1358
push ecx
call fcn.0046631c
add esp, 0x10
mov eax, dword [ebp - 0xa0]
cmp dword [eax + 0x1380], 0
jne 0x407e12
mov edx, dword [ebp - 0xa0]
cmp dword [edx + 0x136c], 0
jne 0x407e12
mov ecx, dword [ebp - 0xa0]
cmp dword [ecx + 0x135c], 1
jne 0x407e12
mov eax, dword [ebp - 0xa0]
mov dword [eax + 0x1380], 1
mov edx, dword [ebp - 0xa4]
sub edx, 4
mov dword [ebp - 0xa4], edx
push 0
mov ecx, dword [ebp - 0xa4]
push ecx
push ebx
call fcn.004663bc
add esp, 0xc
push ebx
push 1
push 4
lea eax, [ebp - 0xa8]
push eax
call fcn.0046631c
add esp, 0x10
mov edx, dword [ebp - 0xa8]
sub dword [ebp - 0xa4], edx
mov ecx, dword [ebp - 0xa8]
inc ecx
push ecx
call fcn.00463ad4
pop ecx
mov esi, eax
mov dl, 1
mov eax, dword [0x44fd04]
call fcn.00406db4
mov ecx, dword [ebp - 0xa0]
mov dword [ecx + 0x1438], eax
push 0
mov eax, dword [ebp - 0xa4]
push eax
push ebx
call fcn.004663bc
add esp, 0xc
push ebx
push 1
mov edx, dword [ebp - 0xa8]
push edx
push esi
call fcn.0046631c
mov ecx, dword [ebp - 0xa8]
add esp, 0x10
lea eax, [ebp - 0xc]
mov edx, esi
mov byte [esi + ecx], 0
mov word [ebp - 0x8c], 0x20
call fcn.0046f660
inc dword [ebp - 0x80]
mov edx, dword [eax]
mov eax, dword [ebp - 0xa0]
mov eax, dword [eax + 0x1438]
mov ecx, dword [eax]
call dword [ecx + 0x2c]
dec dword [ebp - 0x80]
lea eax, [ebp - 0xc]
mov edx, 2
call fcn.0046f718
push esi
call fcn.004638fc
pop ecx
mov ecx, dword [ebp - 0xa0]
cmp dword [ecx + 0x13b4], 1
jne 0x407fd5
mov eax, dword [ebp - 0xa4]
sub eax, 4
mov dword [ebp - 0xa4], eax
push 0
mov edx, dword [ebp - 0xa4]
push edx
push ebx
call fcn.004663bc
add esp, 0xc
push ebx
push 1
push 4
lea ecx, [ebp - 0xa8]
push ecx
call fcn.0046631c
add esp, 0x10
mov eax, dword [ebp - 0xa8]
sub dword [ebp - 0xa4], eax
mov edx, dword [ebp - 0xa8]
inc edx
push edx
call fcn.00463ad4
pop ecx
mov esi, eax
mov dl, 1
mov eax, dword [0x44fd04]
call fcn.00406db4
mov ecx, dword [ebp - 0xa0]
mov dword [ecx + 0x143c], eax
push 0
mov eax, dword [ebp - 0xa4]
push eax
push ebx
call fcn.004663bc
add esp, 0xc
push ebx
push 1
mov edx, dword [ebp - 0xa8]
push edx
push esi
call fcn.0046631c
mov ecx, dword [ebp - 0xa8]
add esp, 0x10
lea eax, [ebp - 0x10]
mov edx, esi
mov byte [esi + ecx], 0
mov word [ebp - 0x8c], 0x2c
call fcn.0046f660
inc dword [ebp - 0x80]
mov edx, dword [eax]
mov eax, dword [ebp - 0xa0]
mov eax, dword [eax + 0x143c]
mov ecx, dword [eax]
call dword [ecx + 0x2c]
dec dword [ebp - 0x80]
lea eax, [ebp - 0x10]
mov edx, 2
call fcn.0046f718
push esi
call fcn.004638fc
pop ecx
push 0
push edi
push ebx
call fcn.004663bc
add esp, 0xc
push ebx
push 1
push 4
lea ecx, [ebp - 0xa4]
push ecx
call fcn.0046631c
add esp, 0x10
cmp dword [ebp - 0xa4], 0
je 0x4083eb
cmp dword [ebp - 0xa4], 0
jle 0x4081d9
mov eax, 0x48d634
mov edx, 0x484a67
mov cl, byte [eax]
cmp cl, byte [edx]
jne 0x408039
test cl, cl
je 0x4081af
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
jne 0x408039
add eax, 2
add edx, 2
test cl, cl
jne 0x408019
je 0x4081af
mov eax, dword [ebp - 0xa0]
lea edx, [ebp - 0x504]
mov byte [eax + 0x148e], 1
push edx
push 0x3e8
call sub.KERNEL32.DLL_GetTempPathA
push 0x484a6d
lea ecx, [ebp - 0x504]
push ecx
call fcn.0046437c
mov eax, dword [ebp - 0xa0]
add esp, 8
lea ecx, [ebp - 0x5e0]
mov edx, dword [eax + 0x364]
push edx
push 0x484a72
push ecx
call fcn.00466e50
add esp, 0xc
lea eax, [ebp - 0x5e0]
push eax
lea edx, [ebp - 0x504]
push edx
call fcn.0046437c
add esp, 8
push 0x484a75
lea ecx, [ebp - 0x504]
push ecx
call fcn.0046437c
mov eax, dword [ebp - 0xa0]
add esp, 8
lea ecx, [ebp - 0x504]
mov edx, dword [eax + 0x13ac]
push edx
push ebx
push ecx
mov eax, dword [ebp - 0xa0]
push eax
call fcn.00402764
add esp, 0x10
inc eax
jne 0x408120
mov word [ebp - 0x8c], 0x38
mov edx, 0x484a7a
lea eax, [ebp - 0x14]
call fcn.0046f660
inc dword [ebp - 0x80]
mov eax, dword [eax]
call fcn.00436610
dec dword [ebp - 0x80]
lea eax, [ebp - 0x14]
mov edx, 2
call fcn.0046f718
mov ecx, dword [ebp - 0xa0]
mov byte [ecx + 0x148e], 0
mov dword [ebp - 0xfc], 0x484a87
lea eax, [ebp - 0x504]
lea edx, [ebp - 0x104]
mov dword [ebp - 0xf8], eax
push edx
push 0x2200
push 0x803
push 0
call sub.WINMM.DLL_mciSendCommandA
mov esi, eax
test eax, eax
je 0x408193
mov word [ebp - 0x8c], 0x44
mov edx, 0x484a91
lea eax, [ebp - 0x18]
call fcn.0046f660
inc dword [ebp - 0x80]
mov eax, dword [eax]
call fcn.00436610
dec dword [ebp - 0x80]
lea eax, [ebp - 0x18]
mov edx, 2
call fcn.0046f718
mov ecx, dword [ebp - 0xa0]
mov byte [ecx + 0x148e], 0
jmp 0x4081bc
mov eax, dword [ebp - 0xa0]
mov edx, dword [ebp - 0x100]
mov dword [eax + 0x1490], edx
xor ecx, ecx
mov dword [ebp - 0xec], ecx
jmp 0x4081bc
mov eax, dword [ebp - 0xa0]
mov byte [eax + 0x148e], 0
add edi, dword [ebp - 0xa4]
mov edx, dword [ebp - 0xa0]
sub edi, dword [edx + 0x1428]
mov dword [ebp - 0xa4], edi
jmp 0x408401
cmp dword [ebp - 0xa4], 0
jge 0x408401
mov eax, 0x48d634
mov edx, str.nowav
mov cl, byte [eax]
cmp cl, byte [edx]
jne 0x408210
test cl, cl
je 0x4083d3
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
jne 0x408210
add eax, 2
add edx, 2
test cl, cl
jne 0x4081f0
je 0x4083d3
mov eax, dword [ebp - 0xa0]
lea edx, [ebp - 0x504]
mov byte [eax + 0x148e], 1
push edx
push 0x3e8
call sub.KERNEL32.DLL_GetTempPathA
push str.plzj
lea ecx, [ebp - 0x504]
push ecx
call fcn.0046437c
mov eax, dword [ebp - 0xa0]
add esp, 8
lea ecx, [ebp - 0x5e0]
mov edx, dword [eax + 0x364]
push edx
push 0x484aad
push ecx
call fcn.00466e50
add esp, 0xc
lea eax, [ebp - 0x5e0]
push eax
lea edx, [ebp - 0x504]
push edx
call fcn.0046437c
add esp, 8
push str..wav
lea ecx, [ebp - 0x504]
push ecx
call fcn.0046437c
xor eax, eax
add esp, 8
sub eax, dword [ebp - 0xa4]
mov dword [ebp - 0xa4], eax
mov ecx, dword [ebp - 0xa0]
mov edx, dword [ebp - 0xa4]
add edx, edi
sub edx, dword [ecx + 0x1428]
mov dword [ebp - 0xa4], edx
push 0
mov eax, dword [ebp - 0xa4]
push eax
push ebx
call fcn.004663bc
mov edx, dword [ebp - 0xa0]
add esp, 0xc
lea eax, [ebp - 0x504]
mov ecx, dword [edx + 0x13ac]
push ecx
push ebx
push eax
mov edx, dword [ebp - 0xa0]
push edx
call fcn.00402764
add esp, 0x10
inc eax
jne 0x408331
mov word [ebp - 0x8c], 0x50
mov edx, 0x484ab5
lea eax, [ebp - 0x1c]
call fcn.0046f660
inc dword [ebp - 0x80]
mov eax, dword [eax]
call fcn.00436610
dec dword [ebp - 0x80]
lea eax, [ebp - 0x1c]
mov edx, 2
call fcn.0046f718
mov ecx, dword [ebp - 0xa0]
mov byte [ecx + 0x148e], 0
mov eax, dword [ebp - 0xa0]
cmp byte [eax + 0x148e], 1
jne 0x4083e0
mov dword [ebp - 0xfc], str.waveaudio
lea edx, [ebp - 0x504]
lea ecx, [ebp - 0x104]
mov dword [ebp - 0xf8], edx
push ecx
push 0x2200
push 0x803
push 0
call sub.WINMM.DLL_mciSendCommandA
mov esi, eax
test eax, eax
je 0x4083b7
mov word [ebp - 0x8c], 0x5c
mov edx, 0x484acc
lea eax, [ebp - 0x20]
call fcn.0046f660
inc dword [ebp - 0x80]
mov eax, dword [eax]
call fcn.00436610
dec dword [ebp - 0x80]
lea eax, [ebp - 0x20]
mov edx, 2
call fcn.0046f718
mov ecx, dword [ebp - 0xa0]
mov byte [ecx + 0x148e], 0
jmp 0x4083e0
mov eax, dword [ebp - 0xa0]
mov edx, dword [ebp - 0x100]
mov dword [eax + 0x1490], edx
xor ecx, ecx
mov dword [ebp - 0xec], ecx
jmp 0x4083e0
mov eax, dword [ebp - 0xa0]
mov byte [eax + 0x148e], 0
add edi, 4
mov dword [ebp - 0xa4], edi
jmp 0x408401
add edi, 4
mov dword [ebp - 0xa4], edi
mov eax, dword [ebp - 0xa0]
mov byte [eax + 0x148e], 0
push ebx
call fcn.00465d70
pop ecx
mov edx, dword [ebp - 0xa0]
mov ecx, dword [ebp - 0xa4]
mov dword [edx + 0x1354], ecx
mov eax, dword [ebp - 0xa0]
mov eax, dword [eax + 0x2d0]
call fcn.004352f4
mov eax, dword [eax + 0x14]
mov dl, 1
call fcn.004206d4
mov ecx, dword [ebp - 0xa0]
mov eax, dword [ecx + 0x2d0]
call fcn.004352f4
mov eax, dword [eax + 0xc]
mov edx, 0xa
call fcn.00420088
push 1
push 0
lea ecx, [ebp - 0xb1]
push ecx
call fcn.004642d8
add esp, 0xc
lea eax, [ebp - 0xb1]
or byte [ebp - 0xb1], 1
mov dl, byte [eax]
push edx
mov ecx, dword [ebp - 0xa0]
mov eax, dword [ecx + 0x2d0]
call fcn.004352f4
mov eax, dword [eax + 0xc]
pop edx
call fcn.004200b4
mov word [ebp - 0x8c], 0x68
mov edx, 0x484add
lea eax, [ebp - 0x24]
call fcn.0046f660
inc dword [ebp - 0x80]
mov ecx, dword [eax]
push ecx
mov eax, dword [ebp - 0xa0]
mov eax, dword [eax + 0x2d0]
call fcn.004352f4
mov eax, dword [eax + 0xc]
pop edx
call fcn.00420010
dec dword [ebp - 0x80]
lea eax, [ebp - 0x24]
mov edx, 2
call fcn.0046f718
mov ecx, dword [ebp - 0xa0]
mov eax, dword [ecx + 0x2d0]
call fcn.004352f4
mov eax, dword [eax + 0xc]
mov edx, 0xff
call fcn.0041fde8
mov ecx, dword [ebp - 0xa0]
mov eax, dword [ecx + 0x1498]
call fcn.0042518c
mov eax, dword [eax + 0x14]
mov dl, 1
call fcn.004206d4
mov ecx, dword [ebp - 0xa0]
mov eax, dword [ecx + 0x14ac]
xor ecx, ecx
mov edx, dword [ebp - 0xa4]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov eax, dword [ebp - 0xa0]
mov edx, dword [ebp - 0xa0]
add edx, 0x14b4
mov ecx, 0x28
mov eax, dword [eax + 0x14ac]
mov ebx, dword [eax]
call dword [ebx + 4]
lea edx, [ebp - 0x518]
mov eax, dword [ebp - 0xa0]
mov eax, dword [eax + 0x14ac]
mov ecx, 0x14
mov ebx, dword [eax]
call dword [ebx + 4]
mov byte [ebp - 0x505], 0
mov word [ebp - 0x8c], 0x74
lea edx, [ebp - 0x518]
lea eax, [ebp - 0x28]
call fcn.0046f660
mov edx, eax
inc dword [ebp - 0x80]
mov eax, dword [ebp - 0xa0]
add eax, 0x147c
call fcn.0046f748
dec dword [ebp - 0x80]
lea eax, [ebp - 0x28]
mov edx, 2
call fcn.0046f718
lea edx, [ebp - 0x518]
mov eax, dword [ebp - 0xa0]
mov eax, dword [eax + 0x14ac]
mov ecx, 0x14
mov ebx, dword [eax]
call dword [ebx + 4]
mov byte [ebp - 0x505], 0
mov word [ebp - 0x8c], 0x80
lea edx, [ebp - 0x518]
lea eax, [ebp - 0x2c]
call fcn.0046f660
mov edx, eax
inc dword [ebp - 0x80]
mov eax, dword [ebp - 0xa0]
add eax, 0x1480
call fcn.0046f748
dec dword [ebp - 0x80]
lea eax, [ebp - 0x2c]
mov edx, 2
call fcn.0046f718
mov ecx, dword [ebp - 0xa0]
mov edx, 0x484ae2
lea eax, [ebp - 0x30]
mov byte [ecx + 0x148c], 1
mov word [ebp - 0x8c], 0x8c
call fcn.0046f660
inc dword [ebp - 0x80]
lea edx, [ebp - 0x30]
mov eax, dword [ebp - 0xa0]
add eax, 0x147c
call fcn.0046f7e8
test al, al
jne 0x40868a
mov edx, 0x484ae3
lea eax, [ebp - 0x34]
call fcn.0046f660
inc dword [ebp - 0x80]
lea edx, [ebp - 0x34]
mov eax, dword [ebp - 0xa0]
add eax, 0x1480
call fcn.0046f7e8
test al, al
lea eax, [ebp - 0x34]
setne cl
and ecx, 1
mov edx, 2
push ecx
dec dword [ebp - 0x80]
call fcn.0046f718
pop ecx
test ecx, ecx
jne 0x40868a
xor eax, eax
jmp 0x40868f
mov eax, 1
push eax
dec dword [ebp - 0x80]
lea eax, [ebp - 0x30]
mov edx, 2
call fcn.0046f718
pop ecx
test cl, cl
je 0x4086b4
mov eax, dword [ebp - 0xa0]
mov byte [eax + 0x148c], 0
jmp 0x4086c1
mov edx, dword [ebp - 0xa0]
push edx
call fcn.00409cf4
pop ecx
lea edx, [ebp - 0x57c]
mov eax, dword [ebp - 0xa0]
mov eax, dword [eax + 0x14ac]
mov ecx, 0x28
mov ebx, dword [eax]
call dword [ebx + 4]
mov byte [ebp - 0x554], 0
lea eax, [ebp - 0x57c]
push eax
mov edx, dword [ebp - 0xa0]
push edx
call fcn.0040a014
mov word [ebp - 0x8c], 0x98
add esp, 8
lea edx, [ebp - 0x57c]
lea eax, [ebp - 0x38]
call fcn.0046f660
mov edx, eax
inc dword [ebp - 0x80]
mov eax, dword [ebp - 0xa0]
add eax, 0x1468
call fcn.0046f748
dec dword [ebp - 0x80]
lea eax, [ebp - 0x38]
mov edx, 2
call fcn.0046f718
mov eax, dword [ebp - 0xa0]
mov edx, dword [ebp - 0xa0]
add edx, 0x1460
mov ecx, 4
mov eax, dword [eax + 0x14ac]
mov ebx, dword [eax]
call dword [ebx + 4]
mov eax, dword [ebp - 0xa0]
mov edx, dword [ebp - 0xa0]
add edx, 0x1464
mov ecx, 4
mov eax, dword [eax + 0x14ac]
mov ebx, dword [eax]
call dword [ebx + 4]
mov eax, dword [ebp - 0xa0]
mov edx, dword [ebp - 0xa0]
add edx, 0x146c
mov ecx, 4
mov eax, dword [eax + 0x14ac]
mov ebx, dword [eax]
call dword [ebx + 4]
lea edx, [ebp - 0x57c]
mov eax, dword [ebp - 0xa0]
mov eax, dword [eax + 0x14ac]
mov ecx, 0x14
mov ebx, dword [eax]
call dword [ebx + 4]
mov byte [ebp - 0x568], 0
mov word [ebp - 0x8c], 0xa4
lea edx, [ebp - 0x57c]
lea eax, [ebp - 0x3c]
call fcn.0046f660
mov edx, eax
inc dword [ebp - 0x80]
mov eax, dword [ebp - 0xa0]
add eax, 0x1470
call fcn.0046f748
dec dword [ebp - 0x80]
lea eax, [ebp - 0x3c]
mov edx, 2
call fcn.0046f718
mov eax, dword [ebp - 0xa0]
mov edx, dword [ebp - 0xa0]
add edx, 0x1474
mov ecx, 4
mov eax, dword [eax + 0x14ac]
mov ebx, dword [eax]
call dword [ebx + 4]
lea edx, [ebp - 0xa9]
mov eax, dword [ebp - 0xa0]
mov eax, dword [eax + 0x14ac]
mov ecx, 1
mov ebx, dword [eax]
call dword [ebx + 4]
movsx eax, byte [ebp - 0xa9]
dec eax
jne 0x408851
mov eax, dword [ebp - 0xa0]
add eax, 0x1478
or byte [eax], 1
lea edx, [ebp - 0xa9]
mov ecx, dword [ebp - 0xa0]
mov eax, dword [ecx + 0x14ac]
mov ecx, 1
mov ebx, dword [eax]
call dword [ebx + 4]
movsx eax, byte [ebp - 0xa9]
dec eax
jne 0x408885
mov eax, dword [ebp - 0xa0]
add eax, 0x1478
or byte [eax], 2
lea edx, [ebp - 0xa9]
mov ecx, dword [ebp - 0xa0]
mov eax, dword [ecx + 0x14ac]
mov ecx, 1
mov ebx, dword [eax]
call dword [ebx + 4]
movsx eax, byte [ebp - 0xa9]
dec eax
jne 0x4088b9
mov eax, dword [ebp - 0xa0]
add eax, 0x1478
or byte [eax], 4
lea edx, [ebp - 0xa9]
mov ecx, dword [ebp - 0xa0]
mov eax, dword [ecx + 0x14ac]
mov ecx, 1
mov ebx, dword [eax]
call dword [ebx + 4]
movsx eax, byte [ebp - 0xa9]
dec eax
jne 0x4088ed
mov eax, dword [ebp - 0xa0]
add eax, 0x1478
or byte [eax], 8
mov edx, dword [ebp - 0xa0]
mov eax, dword [ebp - 0xa0]
mov ecx, dword [edx + 0x14b8]
mov dword [eax + 0x14e0], ecx
mov edx, dword [ebp - 0xa0]
mov eax, dword [ebp - 0xa0]
mov ecx, dword [edx + 0x14bc]
xor edx, edx
mov dword [eax + 0x14dc], ecx
mov dword [ebp - 0xa8], edx
mov ecx, dword [ebp - 0xa0]
cmp dword [ecx + 0x1380], 1
jne 0x408952
mov eax, dword [0x48d258]
mov eax, dword [eax]
call fcn.00430af8
mov esi, eax
mov eax, dword [0x48d258]
mov eax, dword [eax]
call fcn.00430aec
mov ebx, eax
jmp 0x40899b
mov eax, dword [ebp - 0xa0]
cmp dword [eax + 0x135c], 0
jne 0x408981
mov edx, 0x258
mov eax, dword [ebp - 0xa0]
call fcn.0042ca48
mov edx, 0x190
mov eax, dword [ebp - 0xa0]
call fcn.0042ca78
mov eax, dword [ebp - 0xa0]
call fcn.0043b104
mov esi, eax
mov eax, dword [ebp - 0xa0]
call fcn.0043b148
mov ebx, eax
mov eax, dword [ebp - 0xa0]
cmp esi, dword [eax + 0x14e0]
jl 0x408a19
mov edx, dword [ebp - 0xa0]
push dword [edx + 0x14e0]
mov edx, esi
pop eax
sub edx, eax
sar edx, 1
jns 0x4089c1
adc edx, 0
mov ecx, dword [ebp - 0xa0]
mov eax, dword [ecx + 0x2d0]
call fcn.0043ae94
mov edx, dword [ebp - 0xa0]
mov eax, dword [ebp - 0xa0]
mov eax, dword [eax + 0x2d0]
mov edx, dword [edx + 0x14e0]
call fcn.0043aed8
mov edx, dword [ebp - 0xa0]
mov ecx, dword [edx + 0x2d0]
mov eax, dword [ecx + 0x128]
call fcn.00422d0c
mov edx, dword [ebp - 0xa0]
mov ecx, dword [eax]
mov edx, dword [edx + 0x14e0]
call dword [ecx + 0x40]
jmp 0x408a67
mov dword [ebp - 0xa8], 1
mov eax, dword [ebp - 0xa0]
xor edx, edx
mov eax, dword [eax + 0x2d0]
call fcn.0043ae94
mov ecx, dword [ebp - 0xa0]
mov edx, esi
mov eax, dword [ecx + 0x2d0]
call fcn.0043aed8
mov ecx, dword [ebp - 0xa0]
mov eax, dword [ecx + 0x2d0]
mov eax, dword [eax + 0x128]
call fcn.00422d0c
mov edx, esi
mov ecx, dword [eax]
call dword [ecx + 0x40]
mov eax, dword [ebp - 0xa0]
cmp ebx, dword [eax + 0x14dc]
jl 0x408af1
mov edx, dword [ebp - 0xa0]
push dword [edx + 0x14dc]
mov edx, ebx
pop eax
sub edx, eax
sar edx, 1
jns 0x408a8d
adc edx, 0
mov ecx, dword [ebp - 0xa0]
mov eax, dword [ecx + 0x2d0]
call fcn.0043aeb4
mov edx, dword [ebp - 0xa0]
mov eax, dword [ebp - 0xa0]
mov eax, dword [eax + 0x2d0]
mov edx, dword [edx + 0x14dc]
call fcn.0043aef8
mov edx, dword [ebp - 0xa0]
mov ecx, dword [edx + 0x2d0]
mov eax, dword [ecx + 0x128]
call fcn.00422d0c
mov dword [ebp - 0xb8], eax
mov eax, dword [ebp - 0xb8]
mov edx, dword [ebp - 0xa0]
mov ecx, dword [eax]
mov edx, dword [edx + 0x14dc]
call dword [ecx + 0x34]
jmp 0x408b3f
mov dword [ebp - 0xa8], 1
mov eax, dword [ebp - 0xa0]
xor edx, edx
mov eax, dword [eax + 0x2d0]
call fcn.0043aef8
mov ecx, dword [ebp - 0xa0]
mov edx, ebx
mov eax, dword [ecx + 0x2d0]
call fcn.0043aef8
mov ecx, dword [ebp - 0xa0]
mov eax, dword [ecx + 0x2d0]
mov eax, dword [eax + 0x128]
call fcn.00422d0c
mov edx, ebx
mov ecx, dword [eax]
call dword [ecx + 0x34]
cmp dword [ebp - 0xa8], 1
jne 0x408b66
mov eax, dword [ebp - 0xa0]
cmp dword [eax + 0x1374], 1
jne 0x408b66
mov edx, dword [ebp - 0xa0]
mov byte [edx + 0x14fc], 1
jmp 0x408b73
mov ecx, dword [ebp - 0xa0]
mov byte [ecx + 0x14fc], 0
mov eax, dword [ebp - 0xa0]
mov dl, 1
mov eax, dword [eax + 0x2ec]
call fcn.0041b634
mov ecx, dword [sym.Project1.exe__ControlForm]
mov eax, dword [ecx]
mov eax, dword [eax + 0x2dc]
mov dl, 1
mov ecx, dword [eax]
call dword [ecx + 0x5c]
mov eax, dword [ebp - 0xa0]
mov dl, 1
mov eax, dword [eax + 0x308]
call fcn.0041b634
mov ecx, dword [sym.Project1.exe__ControlForm]
mov eax, dword [ecx]
mov eax, dword [eax + 0x2f4]
mov dl, 1
mov ecx, dword [eax]
call dword [ecx + 0x5c]
mov eax, dword [ebp - 0xa0]
xor edx, edx
mov eax, dword [eax + 0x2ec]
call fcn.0041b5e0
mov ecx, dword [sym.Project1.exe__ControlForm]
xor edx, edx
mov eax, dword [ecx]
mov eax, dword [eax + 0x2dc]
call fcn.0044ac80
mov ecx, dword [ebp - 0xa0]
xor edx, edx
mov eax, dword [ecx + 0x308]
call fcn.0041b5e0
mov ecx, dword [sym.Project1.exe__ControlForm]
xor edx, edx
mov eax, dword [ecx]
mov eax, dword [eax + 0x2f4]
call fcn.0044ac80
mov ecx, dword [ebp - 0xa0]
mov byte [ecx + 0x354], 0
mov eax, dword [ebp - 0xa0]
cmp dword [eax + 0x368], 0
jne 0x408e99
mov word [ebp - 0x8c], 0xb0
mov edx, 0x48d634
lea eax, [ebp - 0x40]
call fcn.0046f660
inc dword [ebp - 0x80]
xor edx, edx
mov dword [ebp - 0x44], edx
lea edx, [ebp - 0x44]
inc dword [ebp - 0x80]
call fcn.0046f890
lea eax, [ebp - 0x44]
mov eax, dword [eax]
xor edx, edx
mov dword [ebp - 0x48], edx
lea edx, [ebp - 0x48]
inc dword [ebp - 0x80]
call fcn.0045b978
cmp dword [ebp - 0x48], 0
je 0x408c7c
mov eax, dword [ebp - 0x48]
jmp 0x408c81
mov eax, 0x484ae4
mov edi, eax
xor eax, eax
or ecx, 0xffffffff
mov esi, 0x48d634
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
xchg edi, esi
shr ecx, 2
mov eax, edi
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
mov edx, 2
and ecx, 3
lea eax, [ebp - 0x48]
rep movsb byte es:[edi], byte [esi]
dec dword [ebp - 0x80]
call fcn.0046f718
dec dword [ebp - 0x80]
lea eax, [ebp - 0x44]
mov edx, 2
call fcn.0046f718
dec dword [ebp - 0x80]
lea eax, [ebp - 0x40]
mov edx, 2
call fcn.0046f718
push 0x48d634
call fcn.004643b8
pop ecx
mov dword [ebp - 0xa8], eax
cmp eax, 0xf
jl 0x408e99
xor eax, eax
or ecx, 0xffffffff
mov edi, 0x48d634
lea esi, [ebp - 0x57c]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
xchg edi, esi
shr ecx, 2
mov eax, edi
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
mov edx, str.playfromto_
and ecx, 3
lea eax, [ebp - 0x57c]
rep movsb byte es:[edi], byte [esi]
mov byte [ebp - 0x571], 0
mov cl, byte [eax]
cmp cl, byte [edx]
jne 0x408d45
test cl, cl
je 0x408d4b
mov cl, byte [eax + 1]
cmp cl, byte [edx + 1]
jne 0x408d45
add eax, 2
add edx, 2
test cl, cl
jne 0x408d29
jne 0x408e99
mov ebx, 0xb
lea eax, [ebp - 0x57c]
mov edx, 0x48d63f
jmp 0x408d64
mov cl, byte [edx]
inc ebx
mov byte [eax], cl
inc eax
inc edx
cmp ebx, dword [ebp - 0xa8]
jge 0x408d74
movsx ecx, byte [edx]
cmp ecx, 0x2c
jne 0x408d5d
mov byte [ebp + ebx - 0x587], 0
cmp ebx, dword [ebp - 0xa8]
jge 0x408e99
inc ebx
mov edx, ebx
lea eax, [edx + 0x48d634]
jmp 0x408da2
mov esi, edx
mov cl, byte [eax]
sub esi, ebx
inc edx
inc eax
mov byte [ebp + esi - 0x5e0], cl
cmp edx, dword [ebp - 0xa8]
jge 0x408db2
movsx ecx, byte [eax]
cmp ecx, 0x29
jne 0x408d93
sub edx, ebx
lea eax, [ebp - 0x4c]
mov byte [ebp + edx - 0x5e0], 0
mov word [ebp - 0x8c], 0xbc
mov word [ebp - 0x8c], 0xc8
lea edx, [ebp - 0x57c]
call fcn.0046f660
inc dword [ebp - 0x80]
call fcn.0046f918
mov edx, dword [ebp - 0xa0]
mov dword [edx + 0x358], eax
dec dword [ebp - 0x80]
lea eax, [ebp - 0x4c]
mov edx, 2
call fcn.0046f718
mov word [ebp - 0x8c], 0xd4
lea edx, [ebp - 0x5e0]
lea eax, [ebp - 0x50]
call fcn.0046f660
inc dword [ebp - 0x80]
call fcn.0046f918
mov ecx, dword [ebp - 0xa0]
mov edx, 2
mov dword [ecx + 0x35c], eax
lea eax, [ebp - 0x50]
dec dword [ebp - 0x80]
call fcn.0046f718
mov ecx, dword [ebp - 0xa0]
mov eax, dword [ecx + 0x358]
test eax, eax
jl 0x408e80
mov edx, dword [ebp - 0xa0]
cmp eax, dword [edx + 0x35c]
jge 0x408e80
mov ecx, dword [ebp - 0xa0]
mov edx, dword [ebp - 0xa0]
mov eax, dword [ecx + 0x35c]
cmp eax, dword [edx + 0x14c0]
jge 0x408e80
mov ecx, dword [ebp - 0xa0]
mov byte [ecx + 0x354], 1
mov word [ebp - 0x8c], 8
jmp 0x408e99
mov eax, dword [ebp - 0xa0]
mov ecx, dword [ebp - 0xa0]
mov edx, dword [eax + 0x14c0]
mov dword [ecx + 0x14e4], edx
mov eax, dword [sym.Project1.exe__PlayForm]
mov eax, dword [eax + 0x1438]
mov edx, dword [eax]
call dword [edx + 0x14]
sar eax, 1
jns 0x408ec8
adc eax, 0
mov ecx, dword [ebp - 0xa0]
mov edx, dword [ecx + 0x33c]
mov dword [edx + 0x10], eax
mov eax, dword [ebp - 0xa0]
cmp byte [eax + 0x354], 1
jne 0x4090ac
mov eax, dword [ebp - 0xa0]
mov ecx, dword [ebp - 0xa0]
mov eax, dword [eax + 0x1498]
mov edx, dword [ecx + 0x14b8]
mov ecx, dword [eax]
call dword [ecx + 0x40]
mov eax, dword [ebp - 0xa0]
mov edx, dword [ebp - 0xa0]
mov eax, dword [eax + 0x1498]
mov edx, dword [edx + 0x14bc]
mov ecx, dword [eax]
call dword [ecx + 0x34]
push 0
mov edx, dword [ebp - 0xa0]
mov eax, dword [edx + 0x1498]
push eax
mov edx, dword [ebp - 0xa0]
add edx, 0x140c
push edx
mov ecx, dword [ebp - 0xa0]
add ecx, 0x1358
push ecx
mov eax, dword [ebp - 0xa0]
mov edx, dword [eax + 0x14ac]
push edx
mov ecx, dword [ebp - 0xa0]
mov eax, dword [ecx + 0x1438]
push eax
mov edx, dword [ebp - 0xa0]
add edx, 0x14b4
push edx
mov ecx, dword [ebp - 0xa0]
mov eax, dword [ecx + 0x358]
push eax
mov edx, dword [ebp - 0xa0]
push edx
call fcn.0040a034
mov ecx, dword [ebp - 0xa0]
mov edx, dword [ebp - 0xa0]
add esp, 0x24
mov eax, dword [ecx + 0x358]
inc eax
mov dword [edx + 0x14e8], eax
xor eax, eax
mov ecx, dword [ebp - 0xa0]
xor ebx, ebx
mov dword [ecx + 0x14ec], eax
jmp 0x409070
mov word [ebp - 0x8c], 0xe0
xor eax, eax
mov esi, ebx
mov dword [ebp - 0x54], eax
lea ecx, [ebp - 0x54]
inc dword [ebp - 0x80]
add esi, esi
mov eax, dword [ebp - 0xa0]
mov edx, esi
mov eax, dword [eax + 0x1438]
mov edi, dword [eax]
call dword [edi + 0xc]
lea eax, [ebp - 0x54]
call fcn.0046f918
mov edx, dword [ebp - 0xa0]
cmp eax, dword [edx + 0x14e8]
jg 0x409050
xor ecx, ecx
mov dword [ebp - 0x58], ecx
lea ecx, [ebp - 0x58]
inc dword [ebp - 0x80]
mov edx, esi
add edx, 2
mov eax, dword [ebp - 0xa0]
mov eax, dword [eax + 0x1438]
mov esi, dword [eax]
call dword [esi + 0xc]
lea eax, [ebp - 0x58]
call fcn.0046f918
mov edx, dword [ebp - 0xa0]
cmp eax, dword [edx + 0x14e8]
lea eax, [ebp - 0x58]
setg cl
and ecx, 1
mov edx, 2
push ecx
dec dword [ebp - 0x80]
call fcn.0046f718
pop ecx
test ecx, ecx
jne 0x409054
xor eax, eax
jmp 0x409059
mov eax, 1
push eax
dec dword [ebp - 0x80]
lea eax, [ebp - 0x54]
mov edx, 2
call fcn.0046f718
pop ecx
test cl, cl
jne 0x409091
inc ebx
mov eax, dword [ebp - 0xa0]
mov eax, dword [eax + 0x1438]
mov edx, dword [eax]
call dword [edx + 0x14]
sar eax, 1
jns 0x409088
adc eax, 0
dec eax
cmp ebx, eax
jl 0x408fbe
mov ecx, dword [ebp - 0xa0]
mov eax, dword [ecx + 0x33c]
mov dword [eax + 0x14], ebx
push eax
call fcn.00404004
pop ecx
jmp 0x409338
mov edx, dword [ebp - 0xa0]
cmp dword [edx + 0x14d8], 1
jne 0x40918a
lea edx, [ebp - 0xa8]
mov eax, dword [ebp - 0xa0]
mov eax, dword [eax + 0x14ac]
mov ecx, 4
mov ebx, dword [eax]
call dword [ebx + 4]
fild dword [ebp - 0xa8]
mov eax, dword [ebp - 0xa0]
fstp dword [eax + 0x144c]
lea edx, [ebp - 0xa8]
mov ecx, dword [ebp - 0xa0]
mov eax, dword [ecx + 0x14ac]
mov ecx, 4
mov ebx, dword [eax]
call dword [ebx + 4]
fild dword [ebp - 0xa8]
mov eax, dword [ebp - 0xa0]
fstp dword [eax + 0x1450]
lea edx, [ebp - 0xa8]
mov ecx, dword [ebp - 0xa0]
mov eax, dword [ecx + 0x14ac]
mov ecx, 4
mov ebx, dword [eax]
call dword [ebx + 4]
mov eax, dword [ebp - 0xa0]
mov ecx, dword [ebp - 0xa0]
mov edx, dword [eax + 0x14ac]
mov eax, dword [ecx + 0x1448]
mov ecx, dword [ebp - 0xa8]
call fcn.00452e88
mov edx, dword [ebp - 0xa0]
mov eax, dword [edx + 0x1448]
xor edx, edx
call fcn.00452dd4
mov eax, dword [ebp - 0xa0]
mov ecx, dword [ebp - 0xa0]
mov eax, dword [eax + 0x145c]
mov edx, dword [ecx + 0x1448]
mov ecx, dword [eax]
call dword [ecx + 0x50]
mov edx, dword [ebp - 0xa0]
cmp dword [edx + 0x13a8], 0
jne 0x409264
lea edx, [ebp - 0xa8]
mov eax, dword [ebp - 0xa0]
mov eax, dword [eax + 0x14ac]
mov ecx, 4
mov ebx, dword [eax]
call dword [ebx + 4]
mov eax, dword [ebp - 0xa0]
mov ecx, dword [ebp - 0xa0]
mov edx, dword [eax + 0x14ac]
mov eax, dword [ecx + 0x14b0]
mov ecx, dword [ebp - 0xa8]
call fcn.00452e88
mov edx, dword [ebp - 0xa8]
push edx
mov eax, dword [ebp - 0xa0]
mov edx, dword [eax + 0x14b0]
push edx
mov ecx, dword [ebp - 0xa0]
push ecx
call fcn.004065f8
add esp, 0xc
mov eax, dword [ebp - 0xa0]
mov eax, dword [eax + 0x14b0]
xor ecx, ecx
xor edx, edx
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov eax, dword [ebp - 0xa0]
mov ecx, dword [ebp - 0xa0]
mov edx, dword [eax + 0x14b0]
mov eax, dword [ecx + 0x1494]
mov ecx, dword [eax]
call dword [ecx + 0x50]
mov edx, dword [ebp - 0xa0]
mov eax, dword [edx + 0x14b0]
call fcn.00453158
mov eax, dword [ebp - 0xa0]
mov edx, dword [ebp - 0xa0]
mov eax, dword [eax + 0x1498]
mov edx, dword [edx + 0x1494]
mov ecx, dword [eax]
call dword [ecx + 8]
jmp 0x4092e6
mov edx, dword [ebp - 0xa0]
cmp dword [edx + 0x13a8], 1
jl 0x4092e6
lea edx, [ebp - 0xa8]
mov eax, dword [ebp - 0xa0]
mov eax, dword [eax + 0x14ac]
mov ecx, 4
mov ebx, dword [eax]
call dword [ebx + 4]
mov eax, dword [ebp - 0xa0]
mov edx, dword [eax + 0x14bc]
push edx
mov ecx, dword [ebp - 0xa0]
mov eax, dword [ecx + 0x14b8]
push eax
mov edx, dword [ebp - 0xa0]
mov ecx, dword [edx + 0x13a8]
push ecx
mov eax, dword [ebp - 0xa8]
push eax
mov edx, dword [ebp - 0xa0]
mov ecx, dword [edx + 0x14ac]
push ecx
mov eax, dword [ebp - 0xa0]
mov edx, dword [eax + 0x1498]
push edx
mov ecx, dword [ebp - 0xa0]
push ecx
call fcn.0040205c
add esp, 0x1c
mov eax, dword [ebp - 0xa0]
mov dword [eax + 0x14e8], 1
mov edx, dword [ebp - 0xa0]
xor ecx, ecx
mov dword [edx + 0x14ec], ecx
lea edx, [ebp - 0xa8]
mov eax, dword [ebp - 0xa0]
mov eax, dword [eax + 0x14ac]
mov ecx, 4
mov ebx, dword [eax]
call dword [ebx + 4]
mov eax, dword [ebp - 0xa0]
mov eax, dword [eax + 0x33c]
xor edx, edx
mov dword [eax + 0x14], edx
push eax
call fcn.00404004
pop ecx
mov dl, 1
mov eax, dword [0x41e6dc]
call fcn.0041fc14
mov ecx, dword [ebp - 0xa0]
mov dword [ecx + 0x14a4], eax
mov eax, dword [ebp - 0xa0]
cmp byte [eax + 0x148c], 0
jne 0x4094b4
mov edx, dword [ebp - 0xa0]
mov eax, dword [edx + 0x14a4]
mov edx, 0x14
call fcn.00420088
push 1
push 0
lea ecx, [ebp - 0xb9]
push ecx
call fcn.004642d8
add esp, 0xc
lea eax, [ebp - 0xb9]
or byte [ebp - 0xb9], 1
mov ecx, dword [ebp - 0xa0]
mov dl, byte [eax]
mov eax, dword [ecx + 0x14a4]
call fcn.004200b4
mov word [ebp - 0x8c], 0xec
mov edx, 0x484af1
lea eax, [ebp - 0x5c]
call fcn.0046f660
inc dword [ebp - 0x80]
mov edx, dword [eax]
mov ecx, dword [ebp - 0xa0]
mov eax, dword [ecx + 0x14a4]
call fcn.00420010
dec dword [ebp - 0x80]
lea eax, [ebp - 0x5c]
mov edx, 2
call fcn.0046f718
mov ecx, dword [ebp - 0xa0]
mov edx, 0xff
mov eax, dword [ecx + 0x14a4]
call fcn.0041fde8
mov ecx, dword [ebp - 0xa0]
mov eax, dword [ecx + 0x1498]
call fcn.0042518c
add eax, 0xc
mov dword [ebp - 0xc0], eax
mov eax, dword [ebp - 0xc0]
mov edx, dword [ebp - 0xa0]
mov eax, dword [eax]
mov edx, dword [edx + 0x14a4]
mov ecx, dword [eax]
call dword [ecx + 8]
mov word [ebp - 0x8c], 0xf8
mov edx, 0x48445a
lea eax, [ebp - 0x60]
call fcn.0046f660
inc dword [ebp - 0x80]
mov edx, dword [eax]
push edx
mov ecx, dword [ebp - 0xa0]
mov eax, dword [ecx + 0x1498]
mov edx, dword [eax]
call dword [edx + 0x20]
sar eax, 1
jns 0x409465
adc eax, 0
add eax, 0xffffffec
push eax
mov ecx, dword [ebp - 0xa0]
mov eax, dword [ecx + 0x1498]
mov edx, dword [eax]
call dword [edx + 0x2c]
sar eax, 1
jns 0x409481
adc eax, 0
add eax, 0xffffff6a
push eax
mov ecx, dword [ebp - 0xa0]
mov eax, dword [ecx + 0x1498]
call fcn.0042518c
pop edx
pop ecx
call fcn.0046f650
dec dword [ebp - 0x80]
lea eax, [ebp - 0x60]
mov edx, 2
call fcn.0046f718
jmp 0x4095dc
mov word [ebp - 0x8c], 0x104
mov edx, 0x484af6
lea eax, [ebp - 0x64]
call fcn.0046f660
inc dword [ebp - 0x80]
lea edx, [ebp - 0x64]
mov eax, dword [ebp - 0xa0]
add eax, 0x1468
call fcn.0046f800
push eax
dec dword [ebp - 0x80]
lea eax, [ebp - 0x64]
mov edx, 2
call fcn.0046f718
pop ecx
test cl, cl
je 0x4095dc
mov eax, dword [ebp - 0xa0]
mov ecx, dword [ebp - 0xa0]
mov edx, dword [eax + 0x146c]
mov eax, dword [ecx + 0x14a4]
call fcn.00420088
mov edx, dword [ebp - 0xa0]
mov eax, dword [ebp - 0xa0]
mov eax, dword [eax + 0x14a4]
mov edx, dword [edx + 0x1470]
call fcn.00420010
mov edx, dword [ebp - 0xa0]
mov eax, dword [ebp - 0xa0]
mov eax, dword [eax + 0x14a4]
mov edx, dword [edx + 0x1474]
call fcn.0041fde8
mov edx, dword [ebp - 0xa0]
mov eax, dword [ebp - 0xa0]
mov eax, dword [eax + 0x14a4]
mov dl, byte [edx + 0x1478]
call fcn.004200b4
mov edx, dword [ebp - 0xa0]
mov eax, dword [edx + 0x1498]
call fcn.0042518c
add eax, 0xc
mov dword [ebp - 0xc4], eax
mov eax, dword [ebp - 0xc4]
mov edx, dword [ebp - 0xa0]
mov eax, dword [eax]
mov edx, dword [edx + 0x14a4]
mov ecx, dword [eax]
call dword [ecx + 8]
mov edx, dword [ebp - 0xa0]
mov eax, dword [edx + 0x1468]
push eax
mov edx, dword [ebp - 0xa0]
mov eax, dword [edx + 0x1498]
call fcn.0042518c
mov edx, dword [ebp - 0xa0]
mov ecx, dword [edx + 0x1464]
mov edx, dword [ebp - 0xa0]
mov edx, dword [edx + 0x1460]
call fcn.0046f650
mov eax, dword [ebp - 0xa0]
cmp dword [eax + 0x14d8], 1
jne 0x409633
mov ecx, dword [ebp - 0xa0]
mov eax, dword [ecx + 0x145c]
mov edx, dword [eax]
call dword [edx + 0x2c]
mov edx, eax
mov eax, dword [ebp - 0xa0]
mov eax, dword [eax + 0x14a0]
mov ecx, dword [eax]
call dword [ecx + 0x40]
mov edx, dword [ebp - 0xa0]
mov eax, dword [edx + 0x145c]
mov edx, dword [eax]
call dword [edx + 0x20]
mov edx, eax
mov eax, dword [ebp - 0xa0]
mov eax, dword [eax + 0x14a0]
mov ecx, dword [eax]
call dword [ecx + 0x34]
mov edx, dword [ebp - 0xa0]
cmp byte [edx + 0x14fc], 0
jne 0x409821
mov eax, dword [ebp - 0xa0]
mov edx, dword [eax + 0x1498]
push edx
mov ecx, dword [ebp - 0xa0]
mov eax, dword [ecx + 0x2d0]
call fcn.004352f4
xor ecx, ecx
xor edx, edx
call fcn.004208b0
mov eax, dword [ebp - 0xa0]
cmp dword [eax + 0x14d8], 1
jne 0x409877
mov edx, dword [ebp - 0xa0]
mov eax, dword [edx + 0x14a0]
mov edx, dword [eax]
call dword [edx + 0x20]
mov dword [ebp - 0x614], eax
fild dword [ebp - 0x614]
mov ecx, dword [ebp - 0xa0]
fadd dword [ecx + 0x1450]
call fcn.004687b0
mov dword [ebp - 0xd0], eax
mov edx, dword [ebp - 0xa0]
mov eax, dword [edx + 0x14a0]
mov edx, dword [eax]
call dword [edx + 0x2c]
mov dword [ebp - 0x618], eax
fild dword [ebp - 0x618]
mov ecx, dword [ebp - 0xa0]
fadd dword [ecx + 0x144c]
call fcn.004687b0
mov dword [ebp - 0xd4], eax
mov edx, dword [ebp - 0xa0]
fld dword [edx + 0x1450]
call fcn.004687b0
mov dword [ebp - 0xd8], eax
mov edx, dword [ebp - 0xa0]
fld dword [edx + 0x144c]
call fcn.004687b0
mov dword [ebp - 0xdc], eax
mov edx, dword [ebp - 0xdc]
mov dword [ebp - 0x600], edx
mov ecx, dword [ebp - 0xd8]
mov dword [ebp - 0x5fc], ecx
lea ecx, [ebp - 0x600]
mov eax, dword [ebp - 0xd4]
mov dword [ebp - 0x5f8], eax
mov edx, dword [ebp - 0xd0]
mov dword [ebp - 0x5f4], edx
push ecx
mov eax, dword [ebp - 0xa0]
mov eax, dword [eax + 0x14a0]
mov edx, dword [eax]
call dword [edx + 0x20]
mov dword [ebp - 0xc8], eax
mov ecx, dword [ebp - 0xa0]
mov eax, dword [ecx + 0x14a0]
mov edx, dword [eax]
call dword [edx + 0x2c]
mov dword [ebp - 0xcc], eax
xor ecx, ecx
mov dword [ebp - 0x5f0], ecx
xor eax, eax
mov dword [ebp - 0x5ec], eax
lea eax, [ebp - 0x5f0]
mov edx, dword [ebp - 0xcc]
mov dword [ebp - 0x5e8], edx
mov ecx, dword [ebp - 0xc8]
mov dword [ebp - 0x5e4], ecx
push eax
mov edx, dword [ebp - 0xa0]
mov eax, dword [edx + 0x2d0]
call fcn.004352f4
push eax
mov edx, dword [ebp - 0xa0]
mov eax, dword [edx + 0x14a0]
call fcn.0042518c
pop ecx
pop edx
call fcn.00420828
mov eax, dword [ebp - 0xa0]
mov edx, dword [eax + 0x145c]
push edx
mov ecx, dword [ebp - 0xa0]
mov eax, dword [ecx + 0x2d0]
call fcn.004352f4
push eax
mov edx, dword [ebp - 0xa0]
fld dword [edx + 0x1450]
call fcn.004687b0
push eax
mov edx, dword [ebp - 0xa0]
fld dword [edx + 0x144c]
call fcn.004687b0
mov edx, eax
pop ecx
pop eax
call fcn.004208b0
jmp 0x409877
mov edx, dword [ebp - 0xa0]
mov eax, dword [edx + 0x2d0]
call fcn.004352f4
mov edx, dword [ebp - 0xa0]
mov ecx, dword [edx + 0x1498]
mov edx, dword [ebp - 0xa0]
mov edi, dword [edx + 0x2d0]
xor edx, edx
mov ebx, dword [edi + 0x3c]
mov esi, dword [edi + 0x38]
mov dword [ebp - 0x610], edx
xor edx, edx
mov dword [ebp - 0x60c], edx
mov dword [ebp - 0x608], esi
mov dword [ebp - 0x604], ebx
lea edx, [ebp - 0x610]
call fcn.00420aec
mov eax, dword [ebp - 0xa0]
cmp dword [eax + 0x14d8], 1
jne 0x4098e2
lea edx, [ebp - 0xa8]
mov eax, dword [ebp - 0xa0]
mov eax, dword [eax + 0x14ac]
mov ecx, 4
mov ebx, dword [eax]
call dword [ebx + 4]
fild dword [ebp - 0xa8]
mov eax, dword [ebp - 0xa0]
fstp dword [eax + 0x1454]
lea edx, [ebp - 0xa8]
mov ecx, dword [ebp - 0xa0]
mov eax, dword [ecx + 0x14ac]
mov ecx, 4
mov ebx, dword [eax]
call dword [ebx + 4]
fild dword [ebp - 0xa8]
mov eax, dword [ebp - 0xa0]
fstp dword [eax + 0x1458]
push str.LXPLAYFF
push 0
push 0x1f0003
call sub.KERNEL32.DLL_OpenEventA
mov ebx, eax
mov eax, dword [ebp - 0xa0]
mov dword [eax + 0x348], ebx
test ebx, ebx
je 0x40990b
push ebx
call sub.KERNEL32.DLL_SetEvent
mov edx, dword [ebp - 0xa0]
mov byte [edx + 0x148d], 0
push 8
lea ecx, [ebp - 0xe4]
push ecx
call sub.WINMM.DLL_timeGetDevCaps
test eax, eax
jne 0x409a8d
push 1
call sub.WINMM.DLL_timeBeginPeriod
cmp eax, 0x61
jne 0x40996f
mov word [ebp - 0x8c], 0x110
mov edx, 0x484b00
lea eax, [ebp - 0x68]
call fcn.0046f660
inc dword [ebp - 0x80]
mov eax, dword [eax]
call fcn.00436610
dec dword [ebp - 0x80]
lea eax, [ebp - 0x68]
mov edx, 2
call fcn.0046f718
jmp 0x409abd
mov ecx, dword [ebp - 0xa0]
mov eax, dword [ecx + 0x14c8]
mov ecx, 0x28
cdq
idiv ecx
mov edx, dword [ebp - 0xa0]
mov dword [edx + 0x14f0], eax
mov eax, dword [ebp - 0xa0]
cmp dword [eax + 0x14f0], 0
jne 0x4099ae
mov ecx, dword [ebp - 0xa0]
mov dword [ecx + 0x14f0], 1
mov eax, dword [ebp - 0xa0]
mov ecx, dword [ebp - 0xa0]
mov edx, dword [eax + 0x14f0]
mov dword [ecx + 0x14f4], edx
push 1
mov eax, dword [ebp - 0xa0]
push eax
push 0x401590
push 1
mov edx, dword [ebp - 0xa0]
mov ecx, dword [edx + 0x14c8]
push ecx
call sub.WINMM.DLL_timeSetEvent
mov dword [0x48d62c], eax
test eax, eax
jne 0x409a21
mov word [ebp - 0x8c], 0x11c
mov edx, 0x484b0f
lea eax, [ebp - 0x6c]
call fcn.0046f660
inc dword [ebp - 0x80]
mov eax, dword [eax]
call fcn.00436610
dec dword [ebp - 0x80]
lea eax, [ebp - 0x6c]
mov edx, 2
call fcn.0046f718
push 1
mov ecx, dword [ebp - 0xa0]
push ecx
push 0x40160c
push 1
mov eax, dword [ebp - 0xa0]
mov edx, dword [ebp - 0xa0]
mov ecx, dword [edx + 0x14f0]
mov eax, dword [eax + 0x14c8]
cdq
idiv ecx
push eax
call sub.WINMM.DLL_timeSetEvent
mov dword [0x48d630], eax
test eax, eax
jne 0x409abd
mov word [ebp - 0x8c], 0x128
mov edx, 0x484b1e
lea eax, [ebp - 0x70]
call fcn.0046f660
inc dword [ebp - 0x80]
mov eax, dword [eax]
call fcn.00436610
dec dword [ebp - 0x80]
lea eax, [ebp - 0x70]
mov edx, 2
call fcn.0046f718
jmp 0x409abd
mov word [ebp - 0x8c], 0x134
mov edx, 0x484b2d
lea eax, [ebp - 0x74]
call fcn.0046f660
inc dword [ebp - 0x80]
mov eax, dword [eax]
call fcn.00436610
dec dword [ebp - 0x80]
lea eax, [ebp - 0x74]
mov edx, 2
call fcn.0046f718
mov ecx, dword [ebp - 0xa0]
mov byte [ecx + 0x148d], 1
mov eax, dword [ebp - 0xa0]
xor edx, edx
mov dword [eax + 0x1440], edx
mov ecx, dword [ebp - 0xa0]
cmp byte [ecx + 0x148e], 1
jne 0x409b97
mov eax, dword [ebp - 0xa0]
cmp byte [eax + 0x354], 1
jne 0x409b19
mov edx, dword [ebp - 0xa0]
mov eax, dword [ebp - 0xa0]
mov ecx, dword [edx + 0x14c8]
imul ecx, dword [eax + 0x358]
mov dword [ebp - 0xec], ecx
lea edx, [ebp - 0xf0]
push edx
push 4
push 0x806
mov ecx, dword [ebp - 0xa0]
mov eax, dword [ecx + 0x1490]
push eax
call sub.WINMM.DLL_mciSendCommandA
mov esi, eax
test eax, eax
je 0x409b97
mov word [ebp - 0x8c], 0x140
mov edx, 0x484b3c
lea eax, [ebp - 0x78]
call fcn.0046f660
inc dword [ebp - 0x80]
mov eax, dword [eax]
call fcn.00436610
dec dword [ebp - 0x80]
lea eax, [ebp - 0x78]
mov edx, 2
call fcn.0046f718
push 0
push 2
push 0x804
mov ecx, dword [ebp - 0xa0]
mov eax, dword [ecx + 0x1490]
push eax
call sub.WINMM.DLL_mciSendCommandA
mov edx, dword [ebp - 0xa0]
mov byte [edx + 0x148e], 0
push 0
push 0
push 0x410
mov eax, dword [sym.Project1.exe__PlayForm]
call fcn.00441778
push eax
call sub.USER32.DLL_PostMessageA
mov edx, dword [ebp - 0xa0]
mov byte [edx + 0x1351], 0
mov ecx, dword [ebp - 0xa0]
cmp dword [ecx + 0x1384], 0
jne 0x409bee
xor edx, edx
mov eax, dword [ebp - 0xa0]
call fcn.0043b658
mov ecx, dword [sym.Project1.exe__ControlForm]
mov eax, dword [ecx]
mov eax, dword [eax + 0x2e8]
xor edx, edx
mov ecx, dword [eax]
call dword [ecx + 0x5c]
mov eax, dword [ebp - 0xa0]
cmp dword [eax + 0x1388], 0
jne 0x409c10
mov edx, dword [ebp - 0xa0]
mov eax, dword [edx + 0x300]
xor edx, edx
call fcn.0041b634
mov ecx, dword [0x48d258]
mov eax, dword [ecx]
call fcn.00430af8
mov ecx, dword [sym.Project1.exe__ControlForm]
mov edx, eax
mov eax, dword [ecx]
mov ecx, dword [sym.Project1.exe__ControlForm]
sub edx, dword [eax + 0x38]
mov eax, dword [ecx]
add edx, 0xffffffce
call fcn.0043ae94
mov edx, dword [0x48d258]
mov eax, dword [edx]
call fcn.00430aec
mov ecx, dword [sym.Project1.exe__ControlForm]
mov edx, eax
mov eax, dword [ecx]
mov ecx, dword [sym.Project1.exe__ControlForm]
sub edx, dword [eax + 0x3c]
mov eax, dword [ecx]
add edx, 0xffffff9c
call fcn.0043aeb4
mov edx, dword [ebp - 0xa0]
cmp dword [edx + 0x1388], 1
jne 0x409ca4
mov ecx, dword [ebp - 0xa0]
cmp dword [ecx + 0x138c], 1
jne 0x409ca4
mov eax, dword [ebp - 0xa0]
mov dl, 1
mov eax, dword [eax + 0x300]
call fcn.0041b5e0
mov ecx, dword [sym.Project1.exe__ControlForm]
mov eax, dword [ecx]
call fcn.0042fc78
jmp 0x409cce
mov edx, dword [ebp - 0xa0]
cmp dword [edx + 0x1388], 0
jne 0x409cce
mov ecx, dword [sym.Project1.exe__ControlForm]
mov eax, dword [ecx]
cmp byte [eax + 0x47], 1
jne 0x409cce
mov edx, dword [sym.Project1.exe__ControlForm]
mov eax, dword [edx]
call fcn.0042fac0
dec dword [ebp - 0x80]
lea eax, [ebp - 4]
mov edx, 2
call fcn.0046f718
mov ecx, dword [ebp - 0x9c]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4