Function at 0x41eb44
Capabilities:
Check for software breakpoints

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffff6c
push ebx
push esi
push edi
mov dword [ebp - 0x44], ecx
mov ebx, edx
mov edi, eax
mov eax, 0x4d06bc
call fcn.004b58a4
mov word [ebp - 0x30], 8
xor edx, edx
mov dword [ebp - 4], edx
inc dword [ebp - 0x24]
mov word [ebp - 0x30], 0x14
cmp dword [edi + 0x2dc], 0
je 0x41eb87
cmp dword [edi + 0x2e0], 0
jne 0x41eba6
dec dword [ebp - 0x24]
lea eax, [ebp - 4]
mov edx, 2
call fcn.004c1004
mov ecx, dword [ebp - 0x40]
mov dword fs:[0], ecx
jmp 0x41f0b0
cmp ebx, 0x32
jne 0x41ec1c
xor eax, eax
mov dword [ebp - 0x5c], eax
jmp 0x41ebe6
mov eax, esi
mov edx, dword [ebp - 0x5c]
call fcn.0049f894
mov esi, eax
cmp dword [esi + 4], 0x32
jne 0x41ebe3
dec dword [ebp - 0x24]
lea eax, [ebp - 4]
mov edx, 2
call fcn.004c1004
mov ecx, dword [ebp - 0x40]
mov dword fs:[0], ecx
jmp 0x41f0b0
inc dword [ebp - 0x5c]
mov esi, dword [edi + 0x2e0]
mov eax, dword [esi + 8]
cmp eax, dword [ebp - 0x5c]
jg 0x41ebb2
cmp byte [0x4edec6], 0
je 0x41ec44
dec dword [ebp - 0x24]
lea eax, [ebp - 4]
mov edx, 2
call fcn.004c1004
mov ecx, dword [ebp - 0x40]
mov dword fs:[0], ecx
jmp 0x41f0b0
cmp byte [0x4edec5], 0
je 0x41ec44
dec dword [ebp - 0x24]
lea eax, [ebp - 4]
mov edx, 2
call fcn.004c1004
mov ecx, dword [ebp - 0x40]
mov dword fs:[0], ecx
jmp 0x41f0b0
xor eax, eax
mov dword [ebp - 0x50], eax
mov byte [ebp - 0x5d], 0
cmp ebx, 0x32
je 0x41ec87
cmp ebx, 0x13f
je 0x41ec87
cmp ebx, 0x146
je 0x41ec87
cmp ebx, 0x140
je 0x41ec87
cmp ebx, 0x141
je 0x41ec87
cmp ebx, 0x13b
je 0x41ec87
cmp ebx, 0x137
je 0x41ec87
cmp ebx, 0x75
jne 0x41ec8b
mov byte [ebp - 0x5d], 1
xor edx, edx
cmp ebx, 0x32
mov dword [ebp - 0x4c], edx
jne 0x41ecff
mov word [ebp - 0x30], 0x20
xor ecx, ecx
lea edx, [ebp - 8]
mov dword [ebp - 8], ecx
mov eax, edi
inc dword [ebp - 0x24]
call fcn.0041e638
lea edx, [ebp - 8]
lea eax, [ebp - 4]
call fcn.004c1034
dec dword [ebp - 0x24]
lea eax, [ebp - 8]
mov edx, 2
call fcn.004c1004
cmp dword [ebp - 4], 0
je 0x41ecd6
mov ecx, dword [ebp - 4]
mov eax, dword [ecx - 4]
jmp 0x41ecd8
xor eax, eax
test eax, eax
jne 0x41edc3
dec dword [ebp - 0x24]
lea eax, [ebp - 4]
mov edx, 2
call fcn.004c1004
mov ecx, dword [ebp - 0x40]
mov dword fs:[0], ecx
jmp 0x41f0b0
mov word [ebp - 0x30], 0x2c
xor eax, eax
mov ecx, dword [0x4eda5c]
mov dword [ebp - 0xc], eax
lea edx, [ebp - 0xc]
inc dword [ebp - 0x24]
mov eax, dword [ecx]
call fcn.00475494
lea eax, [ebp - 0xc]
mov eax, dword [eax]
xor edx, edx
mov dword [ebp - 0x10], edx
lea edx, [ebp - 0x10]
inc dword [ebp - 0x24]
call fcn.004ac97c
lea edx, [ebp - 0x10]
lea eax, [ebp - 4]
call fcn.004c1034
dec dword [ebp - 0x24]
lea eax, [ebp - 0x10]
mov edx, 2
call fcn.004c1004
dec dword [ebp - 0x24]
lea eax, [ebp - 0xc]
mov edx, 2
call fcn.004c1004
mov word [ebp - 0x30], 0x38
mov edx, str.Sounds_
lea eax, [ebp - 0x14]
call fcn.004c0ef0
inc dword [ebp - 0x24]
lea edx, [ebp - 0x14]
lea eax, [ebp - 4]
call fcn.004c1048
dec dword [ebp - 0x24]
lea eax, [ebp - 0x14]
mov edx, 2
call fcn.004c1004
mov word [ebp - 0x30], 0x44
xor ecx, ecx
mov dword [ebp - 0x18], ecx
lea ecx, [ebp - 0x18]
inc dword [ebp - 0x24]
mov edx, ebx
mov eax, edi
call fcn.0041cda8
lea edx, [ebp - 0x18]
lea eax, [ebp - 4]
call fcn.004c1048
dec dword [ebp - 0x24]
lea eax, [ebp - 0x18]
mov edx, 2
call fcn.004c1004
lea ecx, [ebp - 0x4c]
push ecx
lea eax, [ebp - 0x70]
push eax
lea edx, [ebp - 0x48]
push edx
cmp dword [ebp - 4], 0
je 0x41edda
mov ecx, dword [ebp - 4]
jmp 0x41eddf
mov ecx, 0x4cfa9f
push ecx
call fcn.0041cd08
add esp, 0x10
test al, al
je 0x41f073
push 0x24
push 0
lea eax, [ebp - 0x94]
push eax
call fcn.004b5508
mov dword [ebp - 0x94], 0x24
mov dword [ebp - 0x90], 0x80
mov edx, dword [ebp - 0x48]
add esp, 0xc
mov dword [ebp - 0x8c], edx
lea eax, [ebp - 0x70]
mov dword [ebp - 0x84], eax
lea edx, [ebp - 0x50]
push 0
push edx
lea ecx, [ebp - 0x94]
push ecx
mov eax, dword [edi + 0x2dc]
push eax
mov edx, dword [eax]
call dword [edx + 0xc]
test eax, eax
jne 0x41f073
mov ecx, dword [ebp - 0x50]
push ecx
mov eax, dword [ecx]
call dword [eax + 4]
push 2
push 0
push 0
lea edx, [ebp - 0x58]
push edx
lea ecx, [ebp - 0x54]
push ecx
push 0
push 0
mov eax, dword [ebp - 0x50]
push eax
mov edx, dword [eax]
call dword [edx + 0x2c]
test eax, eax
jne 0x41f073
mov ecx, dword [ebp - 0x58]
push ecx
mov eax, dword [ebp - 0x4c]
push eax
mov edx, dword [ebp - 0x54]
push edx
call fcn.004b5498
add esp, 0xc
push 0
push 0
mov ecx, dword [ebp - 0x58]
push ecx
mov eax, dword [ebp - 0x54]
push eax
mov edx, dword [ebp - 0x50]
push edx
mov ecx, dword [edx]
call dword [ecx + 0x4c]
push 0
mov eax, dword [ebp - 0x50]
push eax
mov edx, dword [eax]
call dword [edx + 0x34]
test eax, eax
jne 0x41f073
push 0x18
call fcn.004b49c8
pop ecx
mov dword [ebp - 0x1c], eax
test eax, eax
je 0x41eeda
mov word [ebp - 0x30], 0x5c
mov eax, dword [ebp - 0x1c]
call fcn.0041c780
mov word [ebp - 0x30], 0x50
mov esi, dword [ebp - 0x1c]
jmp 0x41eedd
mov esi, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x50]
mov dword [esi], eax
push eax
mov edx, dword [eax]
call dword [edx + 4]
mov ecx, dword [ebp + 8]
mov dword [esi + 0x14], ecx
mov dword [esi + 4], ebx
cmp byte [ebp - 0x5d], 0
jne 0x41ef19
mov eax, dword [ebp - 0x48]
xor edx, edx
shl eax, 3
mov ecx, dword [edi + 0x2d4]
lea eax, [eax + eax*4]
lea eax, [eax + eax*4]
lea eax, [eax + eax*4]
div dword [ebp - 0x68]
xor edx, edx
div dword [ecx + 0x24]
mov dword [esi + 0xc], eax
xor eax, eax
mov dword [esi + 0x10], eax
mov eax, esi
mov byte [esi + 9], 0
mov cl, byte [ebp - 0x5d]
mov byte [esi + 8], cl
call fcn.0041c7c4
mov eax, dword [edi + 0x2e0]
mov edx, esi
call fcn.0049f738
cmp byte [ebp - 0x5d], 0
je 0x41ef53
push 1
push 0
push 0
mov ecx, dword [ebp - 0x50]
push ecx
mov eax, dword [ecx]
call dword [eax + 0x30]
jmp 0x41ef62
push 0
push 0
push 0
mov edx, dword [ebp - 0x50]
push edx
mov ecx, dword [edx]
call dword [ecx + 0x30]
cmp ebx, 0xc9
je 0x41efcf
cmp ebx, 0xcb
je 0x41efcf
cmp ebx, 0xcc
je 0x41efcf
cmp ebx, 0xcd
je 0x41efcf
cmp ebx, 0xce
je 0x41efcf
cmp ebx, 0xd0
je 0x41efcf
cmp ebx, 0xd1
je 0x41efcf
cmp ebx, 0xd2
je 0x41efcf
cmp ebx, 0xd5
je 0x41efcf
cmp ebx, 0xd6
je 0x41efcf
cmp ebx, 0xd7
je 0x41efcf
cmp ebx, 0x130
je 0x41efcf
cmp ebx, 0x75
je 0x41efcf
cmp ebx, 0x14b
jne 0x41efe8
call fcn.004b9c94
mov ecx, 0x1f4
cdq
idiv ecx
add edx, 0xc8
push edx
call sub.KERNEL32.DLL_Sleep
cmp ebx, 0x6a
jne 0x41f006
call fcn.004b9c94
mov ecx, 0x3e8
cdq
idiv ecx
add edx, 0x1f4
push edx
call sub.KERNEL32.DLL_Sleep
cmp ebx, 0x147
je 0x41f043
cmp ebx, 0x14a
je 0x41f043
cmp ebx, 0x6c
je 0x41f043
cmp ebx, 0xd4
je 0x41f043
cmp ebx, 0x148
je 0x41f043
cmp ebx, 0x149
je 0x41f043
cmp ebx, 0x146
je 0x41f043
cmp ebx, 0xd8
jne 0x41f05c
call fcn.004b9c94
mov ecx, 0x3e8
cdq
idiv ecx
add edx, 0x3e8
push edx
call sub.KERNEL32.DLL_Sleep
cmp dword [ebp - 0x44], 0
jle 0x41f06b
mov eax, dword [ebp - 0x44]
push eax
call sub.KERNEL32.DLL_Sleep
mov word [ebp - 0x30], 0x14
jmp 0x41f087
cmp dword [ebp - 0x4c], 0
je 0x41f087
mov eax, dword [ebp - 0x4c]
push eax
call sub.KERNEL32.DLL_GlobalFree
xor edx, edx
mov dword [ebp - 0x4c], edx
cmp dword [ebp - 0x50], 0
je 0x41f096
mov ecx, dword [ebp - 0x50]
push ecx
mov eax, dword [ecx]
call dword [eax + 8]
dec dword [ebp - 0x24]
lea eax, [ebp - 4]
mov edx, 2
call fcn.004c1004
mov ecx, dword [ebp - 0x40]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4