Function at 0x436457
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x2fc
mov eax, dword [0x5c4e68]
xor eax, esp
mov dword [esp + 0x2f8], eax
mov eax, dword [ebp + 0x10]
mov dword [esp + 0x1c], eax
mov eax, dword [ebp + 0x18]
mov dword [esp + 0x10], eax
mov eax, dword [ebp + 0x1c]
mov dword [esp + 4], eax
mov eax, dword [ebp + 0x20]
mov dword [esp + 0x78], eax
mov eax, dword [ebp + 0x28]
push ebx
mov dword [esp + 0x1c], eax
mov eax, dword [ebp + 0x2c]
push esi
push edi
mov dword [esp + 0x7c], eax
mov eax, dword [ebp + 0x30]
push 0x44
mov dword [esp + 0x84], eax
xor ebx, ebx
lea eax, [esp + 0x38]
push ebx
push eax
call fcn.005117f0
xor eax, eax
lea edi, [esp + 0x22]
mov word [esp + 0x20], bx
stosw word es:[edi], ax
add esp, 0xc
lea edi, [esp + 0x22]
mov word [esp + 0x20], bx
stosw word es:[edi], ax
lea edi, [esp + 0x1a]
push 0x4f
mov word [esp + 0x1c], bx
stosw word es:[edi], ax
lea eax, [esp + 0xa5]
push ebx
push eax
mov byte [esp + 0xac], bl
call fcn.005117f0
add esp, 0xc
mov esi, 0x103
push esi
lea eax, [esp + 0x1fd]
push ebx
push eax
mov byte [esp + 0x204], bl
call fcn.005117f0
xor eax, eax
lea edi, [esp + 0x95]
mov byte [esp + 0x94], bl
stosd dword es:[edi], eax
lea edi, [esp + 0xa5]
mov byte [esp + 0xa4], bl
stosd dword es:[edi], eax
add esp, 0xc
cmp dword [0x5e23c0], ebx
lea edi, [esp + 0x91]
mov byte [esp + 0x90], bl
stosd dword es:[edi], eax
je 0x436559
mov dword [0x5e23c0], ebx
mov dword [ebp + 0x14], 1
cmp dword [esp + 0x10], ebx
mov edi, 0x104
je 0x43657b
push dword [esp + 0x10]
mov ecx, edi
lea eax, [esp + 0x1fc]
call fcn.004c3b66
pop ecx
mov dword [esp + 0x10], eax
call fcn.00412cb9
mov dword [esp + 0x78], eax
call fcn.00412c21
mov edx, dword [esp + 0x10]
mov dword [esp + 0x2c], eax
mov dword [esp + 0x60], ebx
call fcn.004c3b34
test eax, eax
jne 0x43666d
push esi
lea eax, [esp + 0xf5]
push ebx
push eax
mov byte [esp + 0xfc], bl
call fcn.005117f0
add esp, 0xc
push dword [esp + 0x10]
push ebx
push ebx
call fcn.00489f49
pop ecx
pop ecx
push eax
push str._sSoundsNotifyWin_s
lea eax, [esp + 0xfc]
push edi
push eax
call fcn.004c53b7
lea eax, [esp + 0x104]
add esp, 0x14
push eax
call fcn.004bf213
cmp eax, ebx
pop ecx
mov dword [esp + 0x60], eax
jne 0x43666d
push dword [esp + 0x10]
call fcn.004bf213
cmp eax, ebx
pop ecx
mov dword [esp + 0x60], eax
jne 0x43666d
push str..wav
mov eax, edi
lea esi, [esp + 0xf4]
call fcn.004c3c36
mov eax, edi
lea esi, [esp + 0x1fc]
mov dword [esp], str..wav
call fcn.004c3c36
pop ecx
lea eax, [esp + 0xf0]
push eax
call fcn.004bf213
cmp eax, ebx
pop ecx
mov dword [esp + 0x60], eax
jne 0x43666d
push dword [esp + 0x10]
call fcn.004bf213
cmp eax, ebx
pop ecx
mov dword [esp + 0x60], eax
jne 0x43666d
push dword [esp + 0x10]
push dword [esp + 0x28]
push str.:3:vNotifyWindow___s___FAILED_to_find_the_given_ready_sound___s_.
call fcn.00426c01
add esp, 0xc
cmp dword [ebp + 0x14], ebx
je 0x4366af
fld1
push ebx
fst dword [esp + 0x44]
push ebx
fstp dword [esp + 0x4c]
call fcn.00489f49
push eax
push str._sSoundsClick1.wav
push ebx
call fcn.004c5467
add esp, 0x14
push eax
call fcn.004bef3e
pop ecx
push ebx
push ebx
mov dword [esp + 0x64], eax
call fcn.00489f49
push eax
push str._sSoundsSmallClick.wav
jmp 0x436844
cmp dword [ebp + 8], ebx
mov eax, dword [ebp + 0xc]
je 0x4367e7
dec eax
je 0x436782
fld dword [0x5bfdb4]
fstp dword [esp + 0x40]
fld dword [0x5bfdb0]
fstp dword [esp + 0x44]
call fcn.004c0e22
push ebx
push ebx
call fcn.00489f49
push eax
push str._sSoundsNotifyWinWinInAlert.wav
push ebx
call fcn.004c5467
add esp, 0x14
push eax
call fcn.004bef3e
pop ecx
push ebx
push ebx
mov dword [esp + 0x64], eax
call fcn.00489f49
push eax
push str._sSoundsNotifyWinIllegalKey.wav
push ebx
call fcn.004c5467
add esp, 0x14
push eax
call fcn.004bef3e
pop ecx
push ebx
push ebx
mov dword [esp + 0x60], eax
call fcn.00489f49
push eax
push str._sSoundsNotifyWinWinOutAlert.wav
push ebx
call fcn.004c5467
add esp, 0x14
push eax
call fcn.004bef3e
cmp dword [esp + 0x64], ebx
pop ecx
mov dword [esp + 0x64], eax
jne 0x436858
mov eax, dword [esp + 0x10]
cmp eax, ebx
je 0x43675d
call fcn.004c3b56
test eax, eax
jne 0x436858
push ebx
push ebx
call fcn.00489f49
push eax
push str._sSoundsNotifyWinUhOh_.wav
push ebx
call fcn.004c5467
add esp, 0x14
push eax
call fcn.004bef3e
mov dword [esp + 0x64], eax
jmp 0x436857
push ebx
push ebx
fld dword [0x5bfdbc]
fstp dword [esp + 0x48]
fld dword [0x5bfdc8]
fstp dword [esp + 0x4c]
call fcn.00489f49
push eax
push str._sSoundsNotifyWinWinIn.wav
push ebx
call fcn.004c5467
add esp, 0x14
push eax
call fcn.004bef3e
pop ecx
push ebx
push ebx
mov dword [esp + 0x64], eax
call fcn.00489f49
push eax
push str._sSoundsNotifyWinIllegalKey.wav
push ebx
call fcn.004c5467
add esp, 0x14
push eax
call fcn.004bef3e
pop ecx
push ebx
push ebx
mov dword [esp + 0x60], eax
call fcn.00489f49
push eax
push str._sSoundsNotifyWinWinOut.wav
jmp 0x436844
dec eax
push ebx
push ebx
jne 0x436784
fld dword [0x5bfdb0]
fst dword [esp + 0x48]
fstp dword [esp + 0x4c]
call fcn.00489f49
push eax
mov esi, str._sSoundsNotifyWinVeryLightWhoosh.wav
push esi
push ebx
call fcn.004c5467
add esp, 0x14
push eax
call fcn.004bef3e
pop ecx
push ebx
push ebx
mov dword [esp + 0x64], eax
call fcn.00489f49
push eax
push str._sSoundsNotifyWinIllegalKey.wav
push ebx
call fcn.004c5467
add esp, 0x14
push eax
call fcn.004bef3e
pop ecx
push ebx
push ebx
mov dword [esp + 0x60], eax
call fcn.00489f49
push eax
push esi
push ebx
call fcn.004c5467
add esp, 0x14
push eax
call fcn.004bef3e
mov dword [esp + 0x68], eax
pop ecx
mov edi, dword [esp + 0x2c]
dec edi
push edi
push ebx
push 0x32
lea esi, [esp + 0xac]
pop eax
mov dword [esp + 0x18], ebx
call fcn.0041096f
mov eax, esi
push 0x534f68
push eax
call fcn.004c48c1
xor esi, esi
add esp, 0x10
inc esi
test eax, eax
je 0x43689c
push edi
push esi
call fcn.00410a3d
and al, 0xf0
cmp al, 0xc0
pop ecx
pop ecx
jne 0x43689c
mov dword [esp + 0x10], esi
call fcn.00415269
test eax, eax
je 0x4368a9
mov dword [esp + 0x10], esi
push str..Input.c
push 0x85f
xor ecx, ecx
call fcn.0046091b
cmp dword [esp + 0x2c], ebx
pop ecx
mov esi, eax
pop ecx
mov dword [esp + 0x30], esi
mov ecx, esi
je 0x4368db
push dword [esp + 0x24]
push 0x533b00
call fcn.00460d97
pop ecx
jmp 0x4368e5
push 0x530220
call fcn.00460d97
mov edi, dword [esp + 0x80]
pop ecx
push dword [esp + 0x80]
mov eax, esi
call fcn.00460e3d
pop ecx
mov eax, esi
call fcn.004612b7
mov edi, eax
mov eax, esi
add edi, 4
call fcn.0046124d
mov esi, eax
mov eax, dword [esp + 0x84]
mov dword [esp + 0x50], eax
mov eax, dword [ebp + 0x24]
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x28]
add esi, 3
cmp eax, ebx
jne 0x436996
call fcn.00412cb9
add eax, edi
mov dword [esp + 0x1c], eax
call fcn.00512297
cdq
idiv dword [esp + 0x1c]
mov eax, dword [esp + 0x2c]
add eax, 2
mov word [esp + 0x16], ax
sub edx, edi
mov word [esp + 0x14], dx
call fcn.00412cb9
add eax, edi
mov dword [esp + 0x1c], eax
call fcn.00512297
cdq
idiv dword [esp + 0x1c]
sub edx, edi
cmp dword [esp + 0x10], ebx
mov word [esp + 0x18], dx
je 0x436987
push 0xfffffffffffffffe
pop eax
sub eax, esi
jmp 0x43698c
mov ax, word [esp + 0x16]
mov word [esp + 0x1a], ax
jmp 0x436a8f
movzx ecx, word [eax]
cmp cx, bx
mov dword [esp + 0x24], ecx
jge 0x4369ab
mov word [esp + 0x14], 0x8000
jmp 0x4369dd
mov eax, edi
cdq
sub eax, edx
sar eax, 1
movsx ecx, cx
add eax, ecx
mov ecx, eax
mov eax, dword [esp + 0x78]
cdq
sub eax, edx
sar eax, 1
cmp ecx, eax
mov ecx, dword [esp + 0x24]
jle 0x4369d1
push 2
pop eax
sub eax, edi
jmp 0x4369d8
mov eax, dword [esp + 0x78]
add eax, 2
mov word [esp + 0x14], ax
mov eax, dword [esp + 0x28]
movzx edi, word [eax + 2]
cmp di, bx
mov dword [esp + 0x28], edi
jge 0x4369f4
mov ax, 0x8000
jmp 0x436a27
mov eax, esi
cdq
sub eax, edx
sar eax, 1
movsx edx, di
mov edi, dword [esp + 0x28]
add eax, edx
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x2c]
cdq
sub eax, edx
mov edx, dword [esp + 0x1c]
sar eax, 1
cmp edx, eax
jle 0x436a20
push 2
pop eax
sub eax, esi
jmp 0x436a27
mov eax, dword [esp + 0x2c]
add eax, 2
cmp cx, bx
mov word [esp + 0x16], ax
mov word [esp + 0x20], 0x8000
jl 0x436a3d
mov word [esp + 0x20], cx
cmp di, bx
mov word [esp + 0x22], 0x8000
jl 0x436a4e
mov word [esp + 0x22], di
cmp cx, bx
jge 0x436a5c
mov word [esp + 0x18], 0x8000
jmp 0x436a66
mov cx, word [esp + 0x14]
mov word [esp + 0x18], cx
cmp di, bx
mov word [esp + 0x1a], 0x8000
jl 0x436a77
mov word [esp + 0x1a], ax
cmp dword [esp + 0x10], ebx
je 0x436a87
push 0xfffffffffffffffe
pop eax
sub eax, esi
mov word [esp + 0x1a], ax
lea eax, [esp + 0x20]
mov dword [esp + 0x3c], eax
cmp dword [ebp + 0x14], ebx
lea eax, [esp + 0x14]
mov dword [esp + 0x34], eax
lea eax, [esp + 0x18]
mov dword [esp + 0x38], eax
je 0x436aac
mov dword [esp + 0x34], ebx
mov dword [esp + 0x38], ebx
cmp dword [ebp + 8], ebx
lea eax, [esp + 0x88]
je 0x436b50
push 0x535ffc
push eax
mov dword [esp + 0x50], 0x226
call fcn.005123e0
mov esi, 0x536000
lea eax, [esp + 0xa0]
push esi
push eax
call fcn.005123e0
lea eax, [esp + 0xa0]
push esi
push eax
call fcn.005123e0
mov dl, byte [0x5c577a]
lea eax, [esp + 0xa0]
mov dword [esp + 0x8c], eax
lea eax, [esp + 0xb0]
mov dword [esp + 0x84], eax
lea eax, [esp + 0xa8]
mov dword [esp + 0x88], eax
movsx eax, dl
add esp, 0x18
call fcn.004c39be
cmp eax, 0x78
je 0x436b45
mov byte [esp + 0x88], dl
mov byte [esp + 0x98], dl
mov byte [esp + 0x90], dl
mov dl, byte [0x5c57ad]
jmp 0x436bdb
push 0x535e04
push eax
mov dword [esp + 0x50], ebx
call fcn.005123e0
mov esi, 0x535e08
lea eax, [esp + 0xa0]
push esi
push eax
call fcn.005123e0
lea eax, [esp + 0xa0]
push esi
push eax
call fcn.005123e0
mov dl, byte [0x5c577b]
lea eax, [esp + 0xa0]
mov dword [esp + 0x8c], eax
lea eax, [esp + 0xb0]
mov dword [esp + 0x84], eax
lea eax, [esp + 0xa8]
mov dword [esp + 0x88], eax
movsx eax, dl
add esp, 0x18
call fcn.004c39be
cmp eax, 0x78
je 0x436bd5
mov byte [esp + 0x88], dl
mov byte [esp + 0x98], dl
mov byte [esp + 0x90], dl
mov dl, byte [0x5c57ae]
movsx eax, dl
call fcn.004c39be
cmp eax, 0x78
je 0x436bef
mov byte [esp + 0x89], dl
lea ecx, [esp + 0x30]
mov byte [0x5c577a], 0x78
mov byte [0x5c577b], 0x78
mov byte [0x5c57ad], 0x78
mov byte [0x5c57ae], 0x78
call fcn.0048a966
mov esi, eax
mov eax, dword [esp + 0x5c]
call fcn.004bf22f
mov eax, dword [esp + 0x58]
call fcn.004bf22f
mov eax, dword [esp + 0x64]
call fcn.004bf22f
mov eax, dword [esp + 0x60]
call fcn.004bf22f
mov eax, dword [esp + 0x30]
call fcn.00460a72
mov ecx, dword [esp + 0x304]
pop edi
mov eax, esi
pop esi
pop ebx
xor ecx, esp
call fcn.0051291c
mov esp, ebp
pop ebp
ret