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

Disassembly:
push 0xffffffffffffffff
push 0x469d28
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x40c
mov al, byte [esp + 3]
push ebx
push ebp
push esi
mov ebx, ecx
xor ebp, ebp
push edi
push ebp
lea ecx, [esp + 0x88]
mov dword [esp + 0x34], ebx
mov byte [esp + 0x88], al
call fcn.00401a10
mov cl, byte [esp + 0x13]
push ebp
mov byte [esp + 0x20], cl
lea ecx, [esp + 0x20]
mov dword [esp + 0x428], ebp
call fcn.00401a10
mov dl, byte [esp + 0x13]
push ebp
lea ecx, [esp + 0x3c]
mov byte [esp + 0x428], 1
mov byte [esp + 0x3c], dl
call fcn.00401a10
mov al, byte [esp + 0x13]
push ebp
lea ecx, [esp + 0x134]
mov byte [esp + 0x428], 2
mov byte [esp + 0x134], al
call fcn.00401a10
mov cl, byte [esp + 0x13]
push ebp
mov byte [esp + 0x58], cl
lea ecx, [esp + 0x58]
mov byte [esp + 0x428], 3
call fcn.00401a10
mov dl, byte [esp + 0x13]
push ebp
lea ecx, [esp + 0x78]
mov byte [esp + 0x428], 4
mov byte [esp + 0x78], dl
call fcn.00401a10
mov byte [esp + 0x424], 5
mov esi, dword [ebx + 0x60]
lea ecx, [esp + 0x148]
push ecx
push esi
mov eax, dword [esi]
call dword [eax + 0xdc]
cmp eax, ebp
jge 0x41f002
push 0x4791d8
push esi
push eax
call fcn.0045c300
cmp dword [esp + 0x148], ebp
jne 0x4216c8
mov ecx, dword [ebx + 0x60]
lea edx, [esp + 0x144]
push edx
call fcn.00418620
mov ecx, dword [eax]
mov byte [esp + 0x424], 6
cmp ecx, ebp
je 0x41f036
call fcn.004187b0
mov edx, eax
jmp 0x41f038
xor edx, edx
mov edi, edx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push edx
lea ecx, [esp + 0x138]
call fcn.00401a60
lea ecx, [esp + 0x144]
mov byte [esp + 0x424], 5
call fcn.00402010
push 0x18
call fcn.0045cff5
mov esi, eax
add esp, 4
mov dword [esp + 0x34], esi
cmp esi, ebp
mov byte [esp + 0x424], 7
je 0x41f0be
mov al, byte [esp + 0x130]
sub esp, 0x10
mov edi, esp
mov dword [esp + 0x3c], esp
push ebp
mov ecx, edi
mov byte [edi], al
call fcn.00401a10
mov ecx, dword [0x46f234]
lea edx, [esp + 0x140]
push ecx
push ebp
push edx
mov ecx, edi
call fcn.00402510
mov ecx, esi
call fcn.0044f010
mov esi, eax
jmp 0x41f0c0
xor esi, esi
mov ecx, esi
mov byte [esp + 0x424], 5
call fcn.0044f370
test eax, eax
je 0x41efde
lea eax, [esp + 0x29c]
mov ecx, esi
push eax
call fcn.0044f390
mov ecx, dword [0x46f234]
mov byte [esp + 0x424], 8
push ecx
push ebp
push eax
lea ecx, [esp + 0x90]
call fcn.00402510
push 1
lea ecx, [esp + 0x2a0]
mov byte [esp + 0x428], 5
call fcn.00401a10
mov edi, str.MUSIC
or ecx, 0xffffffff
xor eax, eax
mov edx, dword [esp + 0x8c]
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push str.MUSIC
push edx
push ebp
lea ecx, [esp + 0x94]
call fcn.004186c0
cmp eax, ebp
je 0x41efde
mov edi, str.SNOWING
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov eax, dword [esp + 0x8c]
not ecx
dec ecx
push ecx
push str.SNOWING
push eax
push ebp
lea ecx, [esp + 0x94]
call fcn.004186c0
cmp eax, ebp
je 0x41efde
mov edi, str.BITMAP_LIST
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
mov ecx, dword [esp + 0x90]
push str.BITMAP_LIST
push ecx
push ebp
lea ecx, [esp + 0x94]
call fcn.004186c0
cmp eax, ebp
jne 0x41f49b
mov ecx, dword [ebx + 0x60]
lea edx, [esp + 0x140]
push edx
call fcn.00418620
mov ecx, dword [eax]
mov byte [esp + 0x424], 9
cmp ecx, ebp
je 0x41f1d6
call fcn.004187b0
mov edx, eax
jmp 0x41f1d8
xor edx, edx
mov edi, edx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push edx
lea ecx, [esp + 0x5c]
call fcn.00401a60
lea ecx, [esp + 0x140]
mov byte [esp + 0x424], 5
call fcn.00402010
mov ecx, dword [ebx + 0x60]
lea eax, [esp + 0xa0]
push eax
call fcn.00418620
mov ecx, dword [eax]
mov byte [esp + 0x424], 0xa
cmp ecx, ebp
je 0x41f22a
call fcn.004187b0
mov edx, eax
jmp 0x41f22c
xor edx, edx
mov edi, edx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push edx
lea ecx, [esp + 0x5c]
call fcn.00401a60
mov ecx, dword [esp + 0xa0]
mov byte [esp + 0x424], 5
cmp ecx, ebp
je 0x41f262
call fcn.00402060
mov dword [esp + 0xa0], ebp
push 0x18
call fcn.0045cff5
mov edi, eax
add esp, 4
mov dword [esp + 0x34], edi
cmp edi, ebp
mov byte [esp + 0x424], 0xb
je 0x41f2b4
mov cl, byte [esp + 0x54]
sub esp, 0x10
mov esi, esp
mov dword [esp + 0x3c], esp
push ebp
mov byte [esi], cl
mov ecx, esi
call fcn.00401a10
mov edx, dword [0x46f234]
lea eax, [esp + 0x64]
push edx
push ebp
push eax
mov ecx, esi
call fcn.00402510
mov ecx, edi
call fcn.0044f010
mov esi, eax
jmp 0x41f2b6
xor esi, esi
mov ecx, esi
mov byte [esp + 0x424], 5
call fcn.0044f370
test eax, eax
je 0x41f203
lea ecx, [esp + 0x23c]
push ecx
mov ecx, esi
call fcn.0044f390
mov edx, dword [0x46f234]
lea ecx, [esp + 0x1c]
push edx
push ebp
push eax
mov byte [esp + 0x430], 0xc
call fcn.00402510
push 1
lea ecx, [esp + 0x240]
mov byte [esp + 0x428], 5
call fcn.00401a10
mov edi, 0x479ad8
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov eax, dword [esp + 0x24]
not ecx
dec ecx
push ecx
push 0x479ad8
push eax
push ebp
lea ecx, [esp + 0x2c]
call fcn.004186c0
cmp eax, ebp
je 0x41efde
mov cl, byte [esp + 0x1c]
push ebp
mov byte [esp + 0x190], cl
lea ecx, [esp + 0x190]
call fcn.00401a10
mov edx, dword [0x46f234]
lea eax, [esp + 0x1c]
push edx
push ebp
push eax
lea ecx, [esp + 0x198]
call fcn.00402510
lea ecx, [esp + 0x20c]
mov byte [esp + 0x424], 0xd
push ecx
mov ecx, esi
call fcn.0044f390
lea edx, [esp + 0x1fc]
mov ecx, esi
push edx
mov byte [esp + 0x428], 0xe
call fcn.0044f390
push 0x28
mov byte [esp + 0x428], 0xf
call fcn.0045cff5
mov edi, eax
add esp, 4
mov dword [esp + 0x34], edi
cmp edi, ebp
mov byte [esp + 0x424], 0x10
je 0x41f439
mov al, byte [esp + 0x1fc]
sub esp, 0x10
mov esi, esp
mov dword [esp + 0x3c], esp
push ebp
mov ecx, esi
mov byte [esi], al
call fcn.00401a10
mov ecx, dword [0x46f234]
lea edx, [esp + 0x20c]
push ecx
push ebp
push edx
mov ecx, esi
call fcn.00402510
sub esp, 0x10
lea eax, [esp + 0x22c]
mov ecx, esp
mov dword [esp + 0x6c], esp
push eax
mov byte [esp + 0x448], 0x11
call fcn.004023f0
sub esp, 0x10
lea edx, [esp + 0x1bc]
mov ecx, esp
mov dword [esp + 0x78], esp
push edx
mov byte [esp + 0x458], 0x12
call fcn.004023f0
mov ecx, edi
mov byte [esp + 0x454], 0x10
call fcn.00402250
jmp 0x41f43b
xor eax, eax
push eax
mov eax, dword [0x47fb20]
mov byte [esp + 0x428], 0xf
mov ecx, dword [eax + 0x4b0]
call fcn.004020e0
push 1
lea ecx, [esp + 0x200]
mov byte [esp + 0x428], 0xe
call fcn.00401a10
push 1
lea ecx, [esp + 0x210]
mov byte [esp + 0x428], 0xd
call fcn.00401a10
push 1
lea ecx, [esp + 0x190]
mov byte [esp + 0x428], 5
call fcn.00401a10
jmp 0x41f203
mov edi, str.BITMAP
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
mov ecx, dword [esp + 0x90]
push str.BITMAP
push ecx
push ebp
lea ecx, [esp + 0x94]
call fcn.004186c0
cmp eax, ebp
jne 0x420367
mov dl, byte [esp + 0x13]
push ebp
lea ecx, [esp + 0x180]
mov byte [esp + 0x180], dl
call fcn.00401a10
mov edi, 0x47f834
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push 0x47f834
lea ecx, [esp + 0x184]
call fcn.00401a60
mov ecx, dword [ebx + 0x60]
mov eax, 1
mov dword [esp + 0x4c], eax
mov dword [esp + 0x48], eax
lea eax, [esp + 0xa8]
mov byte [esp + 0x424], 0x13
push eax
mov byte [esp + 0xb4], 0
mov dword [esp + 0x9c], 0
mov byte [esp + 0xf8], 0
mov byte [esp + 0xcc], 0
call fcn.00418620
mov ecx, dword [eax]
mov byte [esp + 0x424], 0x14
cmp ecx, ebp
je 0x41f565
call fcn.004187b0
mov edx, eax
jmp 0x41f567
xor edx, edx
mov edi, edx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push edx
lea ecx, [esp + 0x5c]
call fcn.00401a60
mov ecx, dword [esp + 0xa8]
mov byte [esp + 0x424], 0x13
cmp ecx, ebp
je 0x41f59d
call fcn.00402060
mov dword [esp + 0xa8], ebp
mov ecx, dword [ebx + 0x60]
lea edx, [esp + 0xc0]
push edx
call fcn.00418620
mov ecx, dword [eax]
mov byte [esp + 0x424], 0x15
cmp ecx, ebp
je 0x41f5c4
call fcn.004187b0
mov edx, eax
jmp 0x41f5c6
xor edx, edx
mov edi, edx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push edx
lea ecx, [esp + 0x5c]
call fcn.00401a60
mov ecx, dword [esp + 0xc0]
mov byte [esp + 0x424], 0x13
cmp ecx, ebp
je 0x41f5fc
call fcn.00402060
mov dword [esp + 0xc0], ebp
push 0x18
call fcn.0045cff5
mov edi, eax
add esp, 4
mov dword [esp + 0x34], edi
cmp edi, ebp
mov byte [esp + 0x424], 0x16
je 0x41f64e
mov al, byte [esp + 0x54]
sub esp, 0x10
mov esi, esp
mov dword [esp + 0x3c], esp
push ebp
mov ecx, esi
mov byte [esi], al
call fcn.00401a10
mov ecx, dword [0x46f234]
lea edx, [esp + 0x64]
push ecx
push ebp
push edx
mov ecx, esi
call fcn.00402510
mov ecx, edi
call fcn.0044f010
mov esi, eax
jmp 0x41f650
xor esi, esi
mov ecx, esi
mov byte [esp + 0x424], 0x13
call fcn.0044f370
test eax, eax
je 0x41f59d
lea eax, [esp + 0x39c]
mov ecx, esi
push eax
call fcn.0044f390
mov ecx, dword [0x46f234]
mov byte [esp + 0x424], 0x17
push ecx
push ebp
push eax
lea ecx, [esp + 0x28]
call fcn.00402510
push 1
lea ecx, [esp + 0x3a0]
mov byte [esp + 0x428], 0x13
call fcn.00401a10
mov edi, 0x479ad8
or ecx, 0xffffffff
xor eax, eax
mov edx, dword [esp + 0x24]
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push 0x479ad8
push edx
push ebp
lea ecx, [esp + 0x2c]
call fcn.004186c0
cmp eax, ebp
je 0x42034c
mov edi, str.NAME
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov eax, dword [esp + 0x24]
not ecx
dec ecx
push ecx
push str.NAME
push eax
push ebp
lea ecx, [esp + 0x2c]
call fcn.004186c0
cmp eax, ebp
jne 0x41f741
lea ecx, [esp + 0x25c]
push ecx
mov ecx, esi
call fcn.0044f390
mov edx, dword [0x46f234]
lea ecx, [esp + 0x17c]
push edx
push ebp
push eax
mov byte [esp + 0x430], 0x18
call fcn.00402510
push 1
lea ecx, [esp + 0x260]
mov byte [esp + 0x428], 0x13
call fcn.00401a10
jmp 0x41f59d
mov edi, str.ANIMATED
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov eax, dword [esp + 0x24]
not ecx
dec ecx
push ecx
push str.ANIMATED
push eax
push ebp
lea ecx, [esp + 0x2c]
call fcn.004186c0
cmp eax, ebp
jne 0x41f7ba
lea ecx, [esp + 0x33c]
push ecx
mov ecx, esi
call fcn.0044f390
mov eax, dword [eax + 4]
cmp eax, ebp
jne 0x41f784
mov eax, 0x46f230
push eax
call fcn.0045d66a
add esp, 4
call fcn.0045d004
test eax, eax
push 1
lea ecx, [esp + 0x340]
sete bl
call fcn.00401a10
test bl, bl
mov ebx, dword [esp + 0x30]
sete dl
mov byte [esp + 0xb0], dl
jmp 0x41f59d
mov edi, str.NUM_ROWS
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov eax, dword [esp + 0x24]
not ecx
dec ecx
push ecx
push str.NUM_ROWS
push eax
push ebp
lea ecx, [esp + 0x2c]
call fcn.004186c0
cmp eax, ebp
jne 0x41f822
lea ecx, [esp + 0x27c]
push ecx
mov ecx, esi
call fcn.0044f390
mov eax, dword [eax + 4]
cmp eax, ebp
jne 0x41f7fd
mov eax, 0x46f230
push eax
call fcn.0045d66a
add esp, 4
call fcn.0045d004
push 1
lea ecx, [esp + 0x280]
mov dword [esp + 0x50], eax
call fcn.00401a10
jmp 0x41f59d
mov edi, str.NUM_FRAMES
or ecx, 0xffffffff
xor eax, eax
mov edx, dword [esp + 0x24]
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push str.NUM_FRAMES
push edx
push ebp
lea ecx, [esp + 0x2c]
call fcn.004186c0
cmp eax, ebp
jne 0x41f88a
lea eax, [esp + 0x3dc]
mov ecx, esi
push eax
call fcn.0044f390
mov eax, dword [eax + 4]
cmp eax, ebp
jne 0x41f865
mov eax, 0x46f230
push eax
call fcn.0045d66a
add esp, 4
call fcn.0045d004
push 1
lea ecx, [esp + 0x3e0]
mov dword [esp + 0x4c], eax
call fcn.00401a10
jmp 0x41f59d
mov edi, str.FRAME_DELAY
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
mov ecx, dword [esp + 0x28]
push str.FRAME_DELAY
push ecx
push ebp
lea ecx, [esp + 0x2c]
call fcn.004186c0
cmp eax, ebp
jne 0x41f8f0
lea edx, [esp + 0x21c]
mov ecx, esi
push edx
call fcn.0044f390
mov eax, dword [eax + 4]
cmp eax, ebp
jne 0x41f8cd
mov eax, 0x46f230
push eax
call fcn.0045d66a
fstp dword [esp + 0x9c]
add esp, 4
lea ecx, [esp + 0x21c]
push 1
call fcn.00401a10
jmp 0x41f59d
mov edi, str.MIRROR_HORIZ
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov eax, dword [esp + 0x24]
not ecx
dec ecx
push ecx
push str.MIRROR_HORIZ
push eax
push ebp
lea ecx, [esp + 0x2c]
call fcn.004186c0
cmp eax, ebp
jne 0x41f969
lea ecx, [esp + 0x35c]
push ecx
mov ecx, esi
call fcn.0044f390
mov eax, dword [eax + 4]
cmp eax, ebp
jne 0x41f933
mov eax, 0x46f230
push eax
call fcn.0045d66a
add esp, 4
call fcn.0045d004
test eax, eax
push 1
lea ecx, [esp + 0x360]
sete bl
call fcn.00401a10
test bl, bl
mov ebx, dword [esp + 0x30]
sete dl
mov byte [esp + 0xf4], dl
jmp 0x41f59d
mov edi, str.MIRROR_VERT
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov eax, dword [esp + 0x24]
not ecx
dec ecx
push ecx
push str.MIRROR_VERT
push eax
push ebp
lea ecx, [esp + 0x2c]
call fcn.004186c0
cmp eax, ebp
jne 0x41f9e2
lea ecx, [esp + 0x2bc]
push ecx
mov ecx, esi
call fcn.0044f390
mov eax, dword [eax + 4]
cmp eax, ebp
jne 0x41f9ac
mov eax, 0x46f230
push eax
call fcn.0045d66a
add esp, 4
call fcn.0045d004
test eax, eax
push 1
lea ecx, [esp + 0x2c0]
sete bl
call fcn.00401a10
test bl, bl
mov ebx, dword [esp + 0x30]
sete dl
mov byte [esp + 0xc8], dl
jmp 0x41f59d
mov edi, str.BONE_ACTOR
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov eax, dword [esp + 0x24]
not ecx
dec ecx
push ecx
push str.BONE_ACTOR
push eax
push ebp
lea ecx, [esp + 0x2c]
call fcn.004186c0
cmp eax, ebp
jne 0x41f59d
mov cl, byte [esp + 0x13]
push ebp
mov byte [esp + 0x160], cl
lea ecx, [esp + 0x160]
call fcn.00401a10
mov edi, 0x47f834
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push 0x47f834
lea ecx, [esp + 0x164]
call fcn.00401a60
mov dl, byte [esp + 0x13]
push ebp
lea ecx, [esp + 0x170]
mov byte [esp + 0x428], 0x19
mov byte [esp + 0x170], dl
call fcn.00401a10
mov edi, 0x47f834
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push 0x47f834
lea ecx, [esp + 0x174]
call fcn.00401a60
mov al, byte [esp + 0x13]
push ebp
lea ecx, [esp + 0x150]
mov byte [esp + 0x428], 0x1a
mov byte [esp + 0x150], al
call fcn.00401a10
mov edi, 0x47f834
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push 0x47f834
lea ecx, [esp + 0x154]
call fcn.00401a60
mov cl, byte [esp + 0x17c]
sub esp, 0x10
mov esi, esp
mov eax, 0xff
mov dword [esp + 0x24], esp
push ebp
mov byte [esi], cl
mov ecx, esi
mov byte [esp + 0x438], 0x1b
mov dword [esp + 0x11c], 0x3f800000
mov dword [esp + 0xd8], 0
mov byte [esp + 0xb0], 0
mov dword [esp + 0x40], eax
mov dword [esp + 0x48], eax
mov dword [esp + 0x80], 0x3f800000
mov dword [esp + 0x78], 0x3f800000
call fcn.00401a10
mov edx, dword [0x46f234]
lea eax, [esp + 0x18c]
push edx
push ebp
push eax
mov ecx, esi
call fcn.00402510
mov ecx, dword [0x47fb20]
mov ecx, dword [ecx + 0x4b0]
call fcn.00402120
push 0x40
mov esi, eax
call fcn.0045cff5
add esp, 4
mov dword [esp + 0x14], eax
cmp eax, ebp
mov byte [esp + 0x424], 0x1c
je 0x41fbac
mov edx, dword [esp + 0xc8]
mov ecx, dword [esp + 0xf4]
push edx
mov edx, dword [esp + 0x9c]
push ecx
mov ecx, dword [esp + 0x50]
push 1
push 0x3c
push edx
mov edx, dword [esp + 0x60]
push ecx
mov ecx, dword [esp + 0xc8]
push edx
mov edx, dword [esi + 0x10]
push ecx
push edx
mov ecx, eax
call fcn.0044d000
mov dword [esp + 0x14], eax
jmp 0x41fbb0
mov dword [esp + 0x14], ebp
mov ecx, dword [0x47fb20]
mov eax, dword [esp + 0x14]
push eax
mov byte [esp + 0x428], 0x1b
mov ecx, dword [ecx + 0x4a8]
call fcn.00401000
mov ecx, dword [ebx + 0x60]
lea edx, [esp + 0xb8]
push edx
call fcn.00418620
mov ecx, dword [eax]
mov byte [esp + 0x424], 0x1d
cmp ecx, ebp
je 0x41fbf5
call fcn.004187b0
mov edx, eax
jmp 0x41fbf7
xor edx, edx
mov edi, edx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push edx
lea ecx, [esp + 0x7c]
call fcn.00401a60
mov ecx, dword [esp + 0xb8]
mov byte [esp + 0x424], 0x1b
cmp ecx, ebp
je 0x41fc2d
call fcn.00402060
mov dword [esp + 0xb8], ebp
mov ecx, dword [ebx + 0x60]
lea eax, [esp + 0xbc]
push eax
call fcn.00418620
mov ecx, dword [eax]
mov byte [esp + 0x424], 0x1e
cmp ecx, ebp
je 0x41fc54
call fcn.004187b0
mov edx, eax
jmp 0x41fc56
xor edx, edx
mov edi, edx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push edx
lea ecx, [esp + 0x7c]
call fcn.00401a60
mov ecx, dword [esp + 0xbc]
mov byte [esp + 0x424], 0x1b
cmp ecx, ebp
je 0x41fc8c
call fcn.00402060
mov dword [esp + 0xbc], ebp
push 0x18
call fcn.0045cff5
mov edi, eax
add esp, 4
mov dword [esp + 0x50], edi
cmp edi, ebp
mov byte [esp + 0x424], 0x1f
je 0x41fce1
mov cl, byte [esp + 0x74]
sub esp, 0x10
mov esi, esp
mov dword [esp + 0x28], esp
push ebp
mov byte [esi], cl
mov ecx, esi
call fcn.00401a10
mov edx, dword [0x46f234]
lea eax, [esp + 0x84]
push edx
push ebp
push eax
mov ecx, esi
call fcn.00402510
mov ecx, edi
call fcn.0044f010
mov esi, eax
jmp 0x41fce3
xor esi, esi
mov ecx, esi
mov byte [esp + 0x424], 0x1b
call fcn.0044f370
test eax, eax
je 0x41fc2d
lea ecx, [esp + 0x3bc]
push ecx
mov ecx, esi
call fcn.0044f390
mov edx, dword [0x46f234]
lea ecx, [esp + 0x38]
push edx
push ebp
push eax
mov byte [esp + 0x430], 0x20
call fcn.00402510
push 1
lea ecx, [esp + 0x3c0]
mov byte [esp + 0x428], 0x1b
call fcn.00401a10
mov edi, 0x479ad8
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov eax, dword [esp + 0x40]
not ecx
dec ecx
push ecx
push 0x479ad8
push eax
push ebp
lea ecx, [esp + 0x48]
call fcn.004186c0
cmp eax, ebp
je 0x4201ab
mov edi, str.FILE
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
mov ecx, dword [esp + 0x44]
push str.FILE
push ecx
push ebp
lea ecx, [esp + 0x48]
call fcn.004186c0
cmp eax, ebp
jne 0x41fdd4
lea edx, [esp + 0x2dc]
mov ecx, esi
push edx
call fcn.0044f390
mov ecx, dword [0x46f234]
mov byte [esp + 0x424], 0x21
push ecx
push ebp
push eax
lea ecx, [esp + 0x168]
call fcn.00402510
push 1
lea ecx, [esp + 0x2e0]
mov byte [esp + 0x428], 0x1b
call fcn.00401a10
jmp 0x41fc2d
mov edi, str.ANIM_NAME
or ecx, 0xffffffff
xor eax, eax
mov edx, dword [esp + 0x40]
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push str.ANIM_NAME
push edx
push ebp
lea ecx, [esp + 0x48]
call fcn.004186c0
cmp eax, ebp
jne 0x41fe43
lea eax, [esp + 0x37c]
mov ecx, esi
push eax
call fcn.0044f390
mov ecx, dword [0x46f234]
mov byte [esp + 0x424], 0x22
push ecx
push ebp
push eax
lea ecx, [esp + 0x158]
call fcn.00402510
push 1
lea ecx, [esp + 0x380]
mov byte [esp + 0x428], 0x1b
call fcn.00401a10
jmp 0x41fc2d
mov edi, str.BONE
or ecx, 0xffffffff
xor eax, eax
mov edx, dword [esp + 0x40]
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push str.BONE
push edx
push ebp
lea ecx, [esp + 0x48]
call fcn.004186c0
cmp eax, ebp
jne 0x41feb2
lea eax, [esp + 0x2fc]
mov ecx, esi
push eax
call fcn.0044f390
mov ecx, dword [0x46f234]
mov byte [esp + 0x424], 0x23
push ecx
push ebp
push eax
lea ecx, [esp + 0x178]
call fcn.00402510
push 1
lea ecx, [esp + 0x300]
mov byte [esp + 0x428], 0x1b
call fcn.00401a10
jmp 0x41fc2d
mov edi, str.FACE_PATH
or ecx, 0xffffffff
xor eax, eax
mov edx, dword [esp + 0x40]
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push str.FACE_PATH
push edx
push ebp
lea ecx, [esp + 0x48]
call fcn.004186c0
cmp eax, ebp
jne 0x41ff2b
lea eax, [esp + 0x3fc]
mov ecx, esi
push eax
call fcn.0044f390
mov eax, dword [eax + 4]
cmp eax, ebp
jne 0x41fef5
mov eax, 0x46f230
push eax
call fcn.0045d66a
add esp, 4
call fcn.0045d004
test eax, eax
push 1
lea ecx, [esp + 0x400]
sete bl
call fcn.00401a10
test bl, bl
mov ebx, dword [esp + 0x30]
sete cl
mov byte [esp + 0x9c], cl
jmp 0x41fc2d
mov edi, str.SPEED
or ecx, 0xffffffff
xor eax, eax
mov edx, dword [esp + 0x40]
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push str.SPEED
push edx
push ebp
lea ecx, [esp + 0x48]
call fcn.004186c0
cmp eax, ebp
jne 0x41ff91
lea eax, [esp + 0x31c]
mov ecx, esi
push eax
call fcn.0044f390
mov eax, dword [eax + 4]
cmp eax, ebp
jne 0x41ff6e
mov eax, 0x46f230
push eax
call fcn.0045d66a
fstp dword [esp + 0x10c]
add esp, 4
lea ecx, [esp + 0x31c]
push 1
call fcn.00401a10
jmp 0x41fc2d
mov edi, str.PAUSE
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
mov ecx, dword [esp + 0x44]
push str.PAUSE
push ecx
push ebp
lea ecx, [esp + 0x48]
call fcn.004186c0
cmp eax, ebp
jne 0x41fff7
lea edx, [esp + 0x22c]
mov ecx, esi
push edx
call fcn.0044f390
mov eax, dword [eax + 4]
cmp eax, ebp
jne 0x41ffd4
mov eax, 0x46f230
push eax
call fcn.0045d66a
fstp dword [esp + 0xc8]
add esp, 4
lea ecx, [esp + 0x22c]
push 1
call fcn.00401a10
jmp 0x41fc2d
mov edi, str.START_OPACITY
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov eax, dword [esp + 0x40]
not ecx
dec ecx
push ecx
push str.START_OPACITY
push eax
push ebp
lea ecx, [esp + 0x48]
call fcn.004186c0
cmp eax, ebp
jne 0x42005f
lea ecx, [esp + 0x24c]
push ecx
mov ecx, esi
call fcn.0044f390
mov eax, dword [eax + 4]
cmp eax, ebp
jne 0x42003a
mov eax, 0x46f230
push eax
call fcn.0045d66a
add esp, 4
call fcn.0045d004
push 1
lea ecx, [esp + 0x250]
mov dword [esp + 0x30], eax
call fcn.00401a10
jmp 0x41fc2d
mov edi, str.END_OPACITY
or ecx, 0xffffffff
xor eax, eax
mov edx, dword [esp + 0x40]
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push str.END_OPACITY
push edx
push ebp
lea ecx, [esp + 0x48]
call fcn.004186c0
cmp eax, ebp
jne 0x4200c7
lea eax, [esp + 0x26c]
mov ecx, esi
push eax
call fcn.0044f390
mov eax, dword [eax + 4]
cmp eax, ebp
jne 0x4200a2
mov eax, 0x46f230
push eax
call fcn.0045d66a
add esp, 4
call fcn.0045d004
push 1
lea ecx, [esp + 0x270]
mov dword [esp + 0x38], eax
call fcn.00401a10
jmp 0x41fc2d
mov edi, str.START_SCALE
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
mov ecx, dword [esp + 0x44]
push str.START_SCALE
push ecx
push ebp
lea ecx, [esp + 0x48]
call fcn.004186c0
cmp eax, ebp
jne 0x420137
lea edx, [esp + 0x28c]
mov ecx, esi
push edx
call fcn.0044f390
mov eax, dword [eax + 4]
cmp eax, ebp
jne 0x42010a
mov eax, 0x46f230
push eax
call fcn.0045d66a
add esp, 4
call fcn.0045d004
mov dword [esp + 0x6c], eax
push 1
fild dword [esp + 0x70]
lea ecx, [esp + 0x290]
fstp dword [esp + 0x70]
call fcn.00401a10
jmp 0x41fc2d
mov edi, str.END_SCALE
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov eax, dword [esp + 0x40]
not ecx
dec ecx
push ecx
push str.END_SCALE
push eax
push ebp
lea ecx, [esp + 0x48]
call fcn.004186c0
cmp eax, ebp
jne 0x41fc2d
lea ecx, [esp + 0x2ac]
push ecx
mov ecx, esi
call fcn.0044f390
mov eax, dword [eax + 4]
cmp eax, ebp
jne 0x42017e
mov eax, 0x46f230
push eax
call fcn.0045d66a
add esp, 4
call fcn.0045d004
mov dword [esp + 0x64], eax
push 1
fild dword [esp + 0x68]
lea ecx, [esp + 0x2b0]
fstp dword [esp + 0x68]
call fcn.00401a10
jmp 0x41fc2d
push 0x74
call fcn.0045cff5
mov edi, eax
add esp, 4
mov dword [esp + 0x18], edi
cmp edi, ebp
mov byte [esp + 0x424], 0x24
je 0x420202
mov dl, byte [esp + 0x15c]
sub esp, 0x10
mov esi, esp
mov dword [esp + 0x60], esp
push ebp
mov ecx, esi
mov byte [esi], dl
call fcn.00401a10
mov eax, dword [0x46f234]
lea ecx, [esp + 0x16c]
push eax
push ebp
push ecx
mov ecx, esi
call fcn.00402510
mov ecx, edi
call fcn.00402800
mov esi, eax
jmp 0x420204
xor esi, esi
mov dl, byte [esp + 0x16c]
sub esp, 0x10
mov edi, esp
mov dword [esp + 0x28], esp
push ebp
mov ecx, edi
mov byte [esp + 0x438], 0x1b
mov byte [edi], dl
call fcn.00401a10
mov eax, dword [0x46f234]
lea ecx, [esp + 0x17c]
push eax
push ebp
push ecx
mov ecx, edi
call fcn.00402510
mov ecx, esi
call fcn.00402b70
mov dl, byte [esp + 0x14c]
sub esp, 0x10
mov edi, esp
mov dword [esp + 0x28], esp
push ebp
mov ecx, edi
mov byte [edi], dl
call fcn.00401a10
mov eax, dword [0x46f234]
lea ecx, [esp + 0x15c]
push eax
push ebp
push ecx
mov ecx, edi
call fcn.00402510
mov ecx, esi
call fcn.00402cc0
mov edx, dword [esp + 0x9c]
mov ecx, esi
push edx
call fcn.00402b60
mov eax, dword [esp + 0x108]
mov ecx, esi
push eax
call fcn.00402a60
mov ecx, dword [esp + 0xc4]
push ecx
mov ecx, esi
call fcn.00402a70
mov edx, dword [esp + 0x2c]
mov ecx, esi
push edx
call fcn.00402a20
mov eax, dword [esp + 0x34]
mov ecx, esi
push eax
call fcn.00402a30
mov ecx, dword [esp + 0x6c]
push ecx
mov ecx, esi
call fcn.00402a40
mov edx, dword [esp + 0x64]
mov ecx, esi
push edx
call fcn.00402a50
mov eax, dword [esp + 0x14]
push ebp
push ecx
add eax, 0x10
mov ecx, esp
mov dword [esp + 0x20], esp
push eax
call fcn.0042efe0
mov ecx, esi
call fcn.00402a80
mov ecx, dword [0x47fb20]
push esi
mov ecx, dword [ecx + 0x4b4]
call fcn.00401000
push 1
lea ecx, [esp + 0x150]
mov byte [esp + 0x428], 0x1a
call fcn.00401a10
push 1
lea ecx, [esp + 0x170]
mov byte [esp + 0x428], 0x19
call fcn.00401a10
push 1
lea ecx, [esp + 0x160]
mov byte [esp + 0x428], 0x13
call fcn.00401a10
jmp 0x41f59d
push 1
lea ecx, [esp + 0x180]
mov byte [esp + 0x428], 5
call fcn.00401a10
jmp 0x41efde
mov edi, str.ACTOR
or ecx, 0xffffffff
xor eax, eax
mov edx, dword [esp + 0x8c]
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push str.ACTOR
push edx
push ebp
lea ecx, [esp + 0x94]
call fcn.004186c0
cmp eax, ebp
jne 0x41efde
mov al, byte [esp + 0x13]
push ebp
lea ecx, [esp + 0x124]
mov byte [esp + 0x124], al
call fcn.00401a10
mov edi, 0x47f834
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebx, ecx
lea ecx, [esp + 0x124]
push ebx
call fcn.00401c40
test al, al
je 0x4203fe
mov edi, dword [esp + 0x124]
mov ecx, ebx
mov edx, ecx
mov esi, 0x47f834
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
push ebx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x124]
call fcn.00401c20
mov al, byte [esp + 0x13]
push ebp
lea ecx, [esp + 0x110]
mov byte [esp + 0x428], 0x25
mov byte [esp + 0x110], al
call fcn.00401a10
mov edi, 0x47f834
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebx, ecx
lea ecx, [esp + 0x110]
push ebx
call fcn.00401c40
test al, al
je 0x42046b
mov edi, dword [esp + 0x110]
mov ecx, ebx
mov edx, ecx
mov esi, 0x47f834
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
push ebx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x110]
call fcn.00401c20
mov eax, dword [esp + 0x30]
lea edx, [esp + 0xa4]
push edx
mov byte [esp + 0x428], 0x26
mov ecx, dword [eax + 0x60]
mov dword [esp + 0x38], 0x5c
call fcn.00418620
mov ecx, dword [eax]
mov byte [esp + 0x424], 0x27
cmp ecx, ebp
je 0x4204a6
call fcn.004187b0
mov esi, eax
jmp 0x4204a8
xor esi, esi
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebx, ecx
lea ecx, [esp + 0x58]
push ebx
call fcn.00401c40
test al, al
je 0x4204e4
mov edi, dword [esp + 0x58]
mov ecx, ebx
mov eax, ecx
push ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x58]
call fcn.00401c20
mov ecx, dword [esp + 0xa4]
mov byte [esp + 0x424], 0x26
cmp ecx, ebp
je 0x420503
call fcn.00402060
mov dword [esp + 0xa4], ebp
mov ecx, dword [esp + 0x30]
lea edx, [esp + 0xcc]
push edx
mov ecx, dword [ecx + 0x60]
call fcn.00418620
mov ecx, dword [eax]
mov byte [esp + 0x424], 0x28
cmp ecx, ebp
je 0x42052e
call fcn.004187b0
mov esi, eax
jmp 0x420530
xor esi, esi
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebx, ecx
lea ecx, [esp + 0x58]
push ebx
call fcn.00401c40
test al, al
je 0x42056c
mov edi, dword [esp + 0x58]
mov ecx, ebx
mov eax, ecx
push ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x58]
call fcn.00401c20
mov ecx, dword [esp + 0xcc]
mov byte [esp + 0x424], 0x26
cmp ecx, ebp
je 0x42058b
call fcn.00402060
mov dword [esp + 0xcc], ebp
push 0x18
call fcn.0045cff5
mov edi, eax
add esp, 4
mov dword [esp + 0x18], edi
cmp edi, ebp
mov byte [esp + 0x424], 0x29
je 0x4205dd
mov cl, byte [esp + 0x54]
sub esp, 0x10
mov esi, esp
mov dword [esp + 0x60], esp
push ebp
mov byte [esi], cl
mov ecx, esi
call fcn.00401a10
mov edx, dword [0x46f234]
lea eax, [esp + 0x64]
push edx
push ebp
push eax
mov ecx, esi
call fcn.00402510
mov ecx, edi
call fcn.0044f010
mov esi, eax
jmp 0x4205df
xor esi, esi
mov ecx, esi
mov byte [esp + 0x424], 0x26
call fcn.0044f370
test eax, eax
je 0x420503
lea ecx, [esp + 0x2cc]
push ecx
mov ecx, esi
call fcn.0044f390
mov edx, dword [0x46f234]
lea ecx, [esp + 0x1c]
push edx
push ebp
push eax
mov byte [esp + 0x430], 0x2a
call fcn.00402510
push 1
lea ecx, [esp + 0x2d0]
mov byte [esp + 0x428], 0x26
call fcn.00401a10
mov edi, 0x479ad8
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov eax, dword [esp + 0x24]
not ecx
dec ecx
push ecx
push 0x479ad8
push eax
push ebp
lea ecx, [esp + 0x2c]
call fcn.004186c0
cmp eax, ebp
je 0x42163e
mov edi, str.FILE
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
mov ecx, dword [esp + 0x28]
push str.FILE
push ecx
push ebp
lea ecx, [esp + 0x2c]
call fcn.004186c0
cmp eax, ebp
jne 0x4206d0
lea edx, [esp + 0x2ec]
mov ecx, esi
push edx
call fcn.0044f390
mov ecx, dword [0x46f234]
mov byte [esp + 0x424], 0x2b
push ecx
push ebp
push eax
lea ecx, [esp + 0x12c]
call fcn.00402510
push 1
lea ecx, [esp + 0x2f0]
mov byte [esp + 0x428], 0x26
call fcn.00401a10
jmp 0x420503
mov edi, str.PLAY_ANIM
or ecx, 0xffffffff
xor eax, eax
mov edx, dword [esp + 0x24]
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push str.PLAY_ANIM
push edx
push ebp
lea ecx, [esp + 0x2c]
call fcn.004186c0
cmp eax, ebp
jne 0x420731
lea eax, [esp + 0x30c]
mov ecx, esi
push eax
call fcn.0044f390
mov eax, dword [eax + 4]
cmp eax, ebp
jne 0x420713
mov eax, 0x46f230
push eax
call fcn.0045d66a
add esp, 4
lea ecx, [esp + 0x30c]
fstp st(0)
push 1
call fcn.00401a10
jmp 0x420503
mov edi, str.Z_ORDER
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
mov ecx, dword [esp + 0x28]
push str.Z_ORDER
push ecx
push ebp
lea ecx, [esp + 0x2c]
call fcn.004186c0
cmp eax, ebp
jne 0x420799
lea edx, [esp + 0x32c]
mov ecx, esi
push edx
call fcn.0044f390
mov eax, dword [eax + 4]
cmp eax, ebp
jne 0x420774
mov eax, 0x46f230
push eax
call fcn.0045d66a
add esp, 4
call fcn.0045d004
push 1
lea ecx, [esp + 0x330]
mov dword [esp + 0x38], eax
call fcn.00401a10
jmp 0x420503
mov edi, str.ANIM_NAME
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov eax, dword [esp + 0x24]
not ecx
dec ecx
push ecx
push str.ANIM_NAME
push eax
push ebp
lea ecx, [esp + 0x2c]
call fcn.004186c0
cmp eax, ebp
jne 0x420808
lea ecx, [esp + 0x34c]
push ecx
mov ecx, esi
call fcn.0044f390
mov edx, dword [0x46f234]
lea ecx, [esp + 0x10c]
push edx
push ebp
push eax
mov byte [esp + 0x430], 0x2c
call fcn.00402510
push 1
lea ecx, [esp + 0x350]
mov byte [esp + 0x428], 0x26
call fcn.00401a10
jmp 0x420503
mov edi, str.SCALE
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov eax, dword [esp + 0x24]
not ecx
dec ecx
push ecx
push str.SCALE
push eax
push ebp
lea ecx, [esp + 0x2c]
call fcn.004186c0
cmp eax, ebp
jne 0x420869
lea ecx, [esp + 0x36c]
push ecx
mov ecx, esi
call fcn.0044f390
mov eax, dword [eax + 4]
cmp eax, ebp
jne 0x42084b
mov eax, 0x46f230
push eax
call fcn.0045d66a
add esp, 4
lea ecx, [esp + 0x36c]
fstp st(0)
push 1
call fcn.00401a10
jmp 0x420503
mov edi, str.BONE_ACTOR
or ecx, 0xffffffff
xor eax, eax
mov edx, dword [esp + 0x24]
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push str.BONE_ACTOR
push edx
push ebp
lea ecx, [esp + 0x2c]
call fcn.004186c0
cmp eax, ebp
jne 0x420503
mov al, byte [esp + 0x13]
push 0
lea ecx, [esp + 0xfc]
mov byte [esp + 0xfc], al
call fcn.00401a10
mov edi, 0x47f834
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebp, ecx
lea ecx, [esp + 0xfc]
push ebp
call fcn.00401c40
test al, al
je 0x4208fb
mov edi, dword [esp + 0xfc]
mov ecx, ebp
mov edx, ecx
mov esi, 0x47f834
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
push ebp
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0xfc]
call fcn.00401c20
mov al, byte [esp + 0x13]
push 0
lea ecx, [esp + 0xe8]
mov byte [esp + 0x428], 0x2d
mov byte [esp + 0xe8], al
call fcn.00401a10
mov edi, 0x47f834
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebp, ecx
lea ecx, [esp + 0xe8]
push ebp
call fcn.00401c40
test al, al
je 0x420969
mov edi, dword [esp + 0xe8]
mov ecx, ebp
mov edx, ecx
mov esi, 0x47f834
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
push ebp
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0xe8]
call fcn.00401c20
mov al, byte [esp + 0x13]
push 0
lea ecx, [esp + 0xd4]
mov byte [esp + 0x428], 0x2e
mov byte [esp + 0xd4], al
call fcn.00401a10
mov edi, 0x47f834
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebp, ecx
lea ecx, [esp + 0xd4]
push ebp
call fcn.00401c40
test al, al
je 0x4209d7
mov edi, dword [esp + 0xd4]
mov ecx, ebp
mov edx, ecx
mov esi, 0x47f834
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
push ebp
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0xd4]
call fcn.00401c20
mov eax, 0xff
push 0x2c
mov byte [esp + 0x428], 0x2f
mov dword [esp + 0xe4], 0x3f800000
mov dword [esp + 0x98], 0
mov byte [esp + 0xb8], 0
mov dword [esp + 0x50], eax
mov dword [esp + 0x4c], eax
mov dword [esp + 0x6c], 0x3f800000
mov dword [esp + 0x74], 0x3f800000
call fcn.0045cff5
mov esi, eax
add esp, 4
mov dword [esp + 0x18], esi
test esi, esi
mov byte [esp + 0x424], 0x30
je 0x420a74
mov al, byte [esp + 0x120]
sub esp, 0x10
mov edi, esp
mov dword [esp + 0x60], esp
push 0
mov ecx, edi
mov byte [edi], al
call fcn.00401a10
mov ecx, dword [0x46f234]
lea edx, [esp + 0x130]
push ecx
push 0
push edx
mov ecx, edi
call fcn.00402510
mov ecx, esi
call fcn.004010e0
mov edi, eax
jmp 0x420a76
xor edi, edi
mov al, byte [esp + 0x10c]
sub esp, 0x10
mov esi, esp
mov dword [esp + 0x28], esp
push 0
mov ecx, esi
mov dword [esp + 0x40], edi
mov byte [esp + 0x438], 0x2f
mov byte [esi], al
call fcn.00401a10
mov ecx, dword [0x46f234]
lea edx, [esp + 0x11c]
push ecx
push 0
push edx
mov ecx, esi
call fcn.00402510
mov ecx, edi
call fcn.00401280
mov eax, dword [esp + 0x34]
mov ecx, edi
push eax
call fcn.004013d0
mov ecx, dword [0x47fb20]
push edi
mov ecx, dword [ecx + 0x4ac]
call fcn.00401000
mov edx, dword [esp + 0x30]
lea eax, [esp + 0xac]
push eax
mov ecx, dword [edx + 0x60]
call fcn.00418620
mov esi, dword [eax]
mov byte [esp + 0x424], 0x31
test esi, esi
je 0x420b26
mov eax, dword [esi + 4]
test eax, eax
jne 0x420b21
mov ecx, dword [esi]
push ecx
call fcn.0045c414
test eax, eax
mov dword [esi + 4], eax
jne 0x420b21
cmp dword [esi], 0
je 0x420b21
push 0x8007000e
call fcn.0045c2f2
mov esi, dword [esi + 4]
jmp 0x420b28
xor esi, esi
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebp, ecx
lea ecx, [esp + 0x78]
push ebp
call fcn.00401c40
test al, al
je 0x420b64
mov edi, dword [esp + 0x78]
mov ecx, ebp
mov edx, ecx
push ebp
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x78]
call fcn.00401c20
mov ecx, dword [esp + 0xac]
mov byte [esp + 0x424], 0x2f
test ecx, ecx
je 0x420b87
call fcn.00402060
mov dword [esp + 0xac], 0
mov eax, dword [esp + 0x30]
lea edx, [esp + 0x11c]
push edx
mov ecx, dword [eax + 0x60]
call fcn.00418620
mov esi, dword [eax]
xor ebx, ebx
cmp esi, ebx
mov byte [esp + 0x424], 0x32
je 0x420bd2
cmp dword [esi + 4], ebx
jne 0x420bcd
mov eax, dword [esi]
push eax
call fcn.0045c414
cmp eax, ebx
mov dword [esi + 4], eax
jne 0x420bcd
cmp dword [esi], ebx
je 0x420bcd
push 0x8007000e
call fcn.0045c2f2
mov esi, dword [esi + 4]
jmp 0x420bd4
xor esi, esi
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebp, ecx
lea ecx, [esp + 0x78]
push ebp
call fcn.00401c40
test al, al
je 0x420c10
mov edi, dword [esp + 0x78]
mov ecx, ebp
mov edx, ecx
push ebp
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x78]
call fcn.00401c20
mov ecx, dword [esp + 0x11c]
mov byte [esp + 0x424], 0x2f
cmp ecx, ebx
je 0x420c2f
call fcn.00402060
mov dword [esp + 0x11c], ebx
push 0x18
call fcn.0045cff5
mov edi, eax
add esp, 4
mov dword [esp + 0x18], edi
cmp edi, ebx
mov byte [esp + 0x424], 0x33
je 0x420c84
mov al, byte [esp + 0x74]
sub esp, 0x10
mov esi, esp
mov dword [esp + 0x60], esp
push ebx
mov ecx, esi
mov byte [esi], al
call fcn.00401a10
mov ecx, dword [0x46f234]
lea edx, [esp + 0x84]
push ecx
push ebx
push edx
mov ecx, esi
call fcn.00402510
mov ecx, edi
call fcn.0044f010
mov esi, eax
jmp 0x420c86
xor esi, esi
mov ecx, esi
mov dword [esp + 0x14], esi
mov byte [esp + 0x424], 0x2f
call fcn.0044f370
test eax, eax
je 0x420b87
lea eax, [esp + 0x38c]
mov ecx, esi
push eax
call fcn.0044f390
mov ecx, dword [0x46f234]
mov byte [esp + 0x424], 0x34
push ecx
push ebx
push eax
lea ecx, [esp + 0x44]
call fcn.00402510
push 1
lea ecx, [esp + 0x390]
mov byte [esp + 0x428], 0x2f
call fcn.00401a10
mov edi, 0x479ad8
or ecx, 0xffffffff
xor eax, eax
mov edx, dword [esp + 0x40]
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push 0x479ad8
push edx
push ebx
lea ecx, [esp + 0x48]
call fcn.004186c0
cmp eax, ebx
je 0x421403
mov edi, str.FILE
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov eax, dword [esp + 0x40]
not ecx
dec ecx
push ecx
push str.FILE
push eax
push ebx
lea ecx, [esp + 0x48]
call fcn.004186c0
cmp eax, ebx
jne 0x420d7b
lea ecx, [esp + 0x3ac]
push ecx
mov ecx, esi
call fcn.0044f390
mov edx, dword [0x46f234]
lea ecx, [esp + 0xf8]
push edx
push ebx
push eax
mov byte [esp + 0x430], 0x35
call fcn.00402510
push 1
lea ecx, [esp + 0x3b0]
mov byte [esp + 0x428], 0x2f
call fcn.00401a10
jmp 0x420b87
mov edi, str.BONE
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov eax, dword [esp + 0x40]
not ecx
dec ecx
push ecx
push str.BONE
push eax
push ebx
lea ecx, [esp + 0x48]
call fcn.004186c0
cmp eax, ebx
jne 0x420dea
lea ecx, [esp + 0x3cc]
push ecx
mov ecx, esi
call fcn.0044f390
mov edx, dword [0x46f234]
lea ecx, [esp + 0xe4]
push edx
push ebx
push eax
mov byte [esp + 0x430], 0x36
call fcn.00402510
push 1
lea ecx, [esp + 0x3d0]
mov byte [esp + 0x428], 0x2f
call fcn.00401a10
jmp 0x420b87
mov edi, str.ANIM_NAME
or ecx, 0xffffffff
xor eax, eax
mov edx, dword [esp + 0x40]
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebp, ecx
mov ecx, edx
cmp edx, ebp
jb 0x420e07
mov ecx, ebp
mov ebx, dword [esp + 0x3c]
mov edi, str.ANIM_NAME
mov esi, ebx
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
je 0x420e1d
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x420e78
cmp edx, ebp
jb 0x420e78
cmp edx, ebp
setne al
test eax, eax
jne 0x420e78
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x3ec]
push eax
call fcn.0044f390
mov ecx, dword [0x46f234]
mov byte [esp + 0x424], 0x37
push ecx
push 0
push eax
lea ecx, [esp + 0xdc]
call fcn.00402510
push 1
lea ecx, [esp + 0x3f0]
mov byte [esp + 0x428], 0x2f
call fcn.00401a10
jmp 0x420b87
mov edi, str.FACE_PATH
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebp, ecx
mov ecx, edx
cmp edx, ebp
jb 0x420e91
mov ecx, ebp
mov edi, str.FACE_PATH
mov esi, ebx
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
je 0x420ea3
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x420f03
cmp edx, ebp
jb 0x420f03
cmp edx, ebp
setne al
test eax, eax
jne 0x420f03
mov ecx, dword [esp + 0x14]
lea edx, [esp + 0x40c]
push edx
call fcn.0044f390
mov eax, dword [eax + 4]
test eax, eax
jne 0x420ed1
mov eax, 0x46f230
push eax
call fcn.0045d66a
add esp, 4
call fcn.0045d004
test eax, eax
push 1
lea ecx, [esp + 0x410]
sete bl
call fcn.00401a10
test bl, bl
sete al
mov byte [esp + 0xb4], al
jmp 0x420b87
mov edi, str.SPEED
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebp, ecx
mov ecx, edx
cmp edx, ebp
jb 0x420f1c
mov ecx, ebp
mov edi, str.SPEED
mov esi, ebx
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
je 0x420f2e
sbb eax, eax
sbb eax, 0xffffffff
xor esi, esi
cmp eax, esi
jne 0x420fd4
cmp edx, ebp
jb 0x420fd4
xor eax, eax
cmp edx, ebp
setne al
cmp eax, esi
jne 0x420fd4
lea ecx, [esp + 0x1dc]
push ecx
mov ecx, dword [esp + 0x18]
call fcn.0044f390
mov eax, dword [eax + 4]
cmp eax, esi
jne 0x420f6c
mov eax, 0x46f230
push eax
call fcn.0045d66a
mov ecx, dword [esp + 0x1e4]
add esp, 4
fstp dword [esp + 0xe0]
cmp ecx, esi
je 0x420fba
mov al, byte [ecx - 1]
dec ecx
test al, al
je 0x420fb1
cmp al, 0xff
je 0x420fb1
dec al
mov byte [ecx], al
mov dword [esp + 0x1e0], esi
mov dword [esp + 0x1e4], esi
mov dword [esp + 0x1e8], esi
jmp 0x420b87
push ecx
call fcn.0045c5a9
add esp, 4
mov dword [esp + 0x1e0], esi
mov dword [esp + 0x1e4], esi
mov dword [esp + 0x1e8], esi
jmp 0x420b87
mov edi, str.PAUSE
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebp, ecx
mov ecx, edx
cmp edx, ebp
jb 0x420fed
mov ecx, ebp
mov edi, str.PAUSE
mov esi, ebx
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
je 0x420fff
sbb eax, eax
sbb eax, 0xffffffff
xor esi, esi
cmp eax, esi
jne 0x4210a5
cmp edx, ebp
jb 0x4210a5
xor eax, eax
cmp edx, ebp
setne al
cmp eax, esi
jne 0x4210a5
mov ecx, dword [esp + 0x14]
lea edx, [esp + 0x1bc]
push edx
call fcn.0044f390
mov eax, dword [eax + 4]
cmp eax, esi
jne 0x42103d
mov eax, 0x46f230
push eax
call fcn.0045d66a
mov ecx, dword [esp + 0x1c4]
add esp, 4
fstp dword [esp + 0x94]
cmp ecx, esi
je 0x42108b
mov al, byte [ecx - 1]
dec ecx
test al, al
je 0x421082
cmp al, 0xff
je 0x421082
dec al
mov byte [ecx], al
mov dword [esp + 0x1c0], esi
mov dword [esp + 0x1c4], esi
mov dword [esp + 0x1c8], esi
jmp 0x420b87
push ecx
call fcn.0045c5a9
add esp, 4
mov dword [esp + 0x1c0], esi
mov dword [esp + 0x1c4], esi
mov dword [esp + 0x1c8], esi
jmp 0x420b87
mov edi, str.START_OPACITY
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebp, ecx
mov ecx, edx
cmp edx, ebp
jb 0x4210be
mov ecx, ebp
mov edi, str.START_OPACITY
mov esi, ebx
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
je 0x4210d0
sbb eax, eax
sbb eax, 0xffffffff
xor esi, esi
cmp eax, esi
jne 0x42117a
cmp edx, ebp
jb 0x42117a
xor eax, eax
cmp edx, ebp
setne al
cmp eax, esi
jne 0x42117a
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x1ec]
push eax
call fcn.0044f390
mov eax, dword [eax + 4]
cmp eax, esi
jne 0x42110e
mov eax, 0x46f230
push eax
call fcn.0045d66a
add esp, 4
call fcn.0045d004
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x1f0]
cmp eax, esi
je 0x421160
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x421157
cmp al, 0xff
je 0x421157
dec al
mov byte [ecx], al
mov dword [esp + 0x1f0], esi
mov dword [esp + 0x1f4], esi
mov dword [esp + 0x1f8], esi
jmp 0x420b87
push ecx
call fcn.0045c5a9
add esp, 4
mov dword [esp + 0x1f0], esi
mov dword [esp + 0x1f4], esi
mov dword [esp + 0x1f8], esi
jmp 0x420b87
mov edi, str.END_OPACITY
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebp, ecx
mov ecx, edx
cmp edx, ebp
jb 0x421193
mov ecx, ebp
mov edi, str.END_OPACITY
mov esi, ebx
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
je 0x4211a5
sbb eax, eax
sbb eax, 0xffffffff
xor esi, esi
cmp eax, esi
jne 0x42124f
cmp edx, ebp
jb 0x42124f
xor eax, eax
cmp edx, ebp
setne al
cmp eax, esi
jne 0x42124f
lea ecx, [esp + 0x19c]
push ecx
mov ecx, dword [esp + 0x18]
call fcn.0044f390
mov eax, dword [eax + 4]
cmp eax, esi
jne 0x4211e3
mov eax, 0x46f230
push eax
call fcn.0045d66a
add esp, 4
call fcn.0045d004
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x1a0]
cmp eax, esi
je 0x421235
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x42122c
cmp al, 0xff
je 0x42122c
dec al
mov byte [ecx], al
mov dword [esp + 0x1a0], esi
mov dword [esp + 0x1a4], esi
mov dword [esp + 0x1a8], esi
jmp 0x420b87
push ecx
call fcn.0045c5a9
add esp, 4
mov dword [esp + 0x1a0], esi
mov dword [esp + 0x1a4], esi
mov dword [esp + 0x1a8], esi
jmp 0x420b87
mov edi, str.START_SCALE
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebp, ecx
mov ecx, edx
cmp edx, ebp
jb 0x421268
mov ecx, ebp
mov edi, str.START_SCALE
mov esi, ebx
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
je 0x42127a
sbb eax, eax
sbb eax, 0xffffffff
xor esi, esi
cmp eax, esi
jne 0x42132a
cmp edx, ebp
jb 0x42132a
xor eax, eax
cmp edx, ebp
setne al
cmp eax, esi
jne 0x42132a
mov ecx, dword [esp + 0x14]
lea edx, [esp + 0x1ac]
push edx
call fcn.0044f390
mov eax, dword [eax + 4]
cmp eax, esi
jne 0x4212b8
mov eax, 0x46f230
push eax
call fcn.0045d66a
add esp, 4
call fcn.0045d004
mov ecx, dword [esp + 0x1b0]
mov dword [esp + 0x68], eax
fild dword [esp + 0x68]
cmp ecx, esi
fstp dword [esp + 0x68]
je 0x421310
mov al, byte [ecx - 1]
dec ecx
test al, al
je 0x421307
cmp al, 0xff
je 0x421307
dec al
mov byte [ecx], al
mov dword [esp + 0x1b0], esi
mov dword [esp + 0x1b4], esi
mov dword [esp + 0x1b8], esi
jmp 0x420b87
push ecx
call fcn.0045c5a9
add esp, 4
mov dword [esp + 0x1b0], esi
mov dword [esp + 0x1b4], esi
mov dword [esp + 0x1b8], esi
jmp 0x420b87
mov edi, str.END_SCALE
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebp, ecx
mov ecx, edx
cmp edx, ebp
jb 0x421343
mov ecx, ebp
mov edi, str.END_SCALE
mov esi, ebx
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
je 0x421355
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x420b87
cmp edx, ebp
jb 0x420b87
cmp edx, ebp
setne al
test eax, eax
jne 0x420b87
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x1cc]
push eax
call fcn.0044f390
mov eax, dword [eax + 4]
xor esi, esi
cmp eax, esi
jne 0x421391
mov eax, 0x46f230
push eax
call fcn.0045d66a
add esp, 4
call fcn.0045d004
mov ecx, dword [esp + 0x1d0]
mov dword [esp + 0x70], eax
fild dword [esp + 0x70]
cmp ecx, esi
fstp dword [esp + 0x70]
je 0x4213e9
mov al, byte [ecx - 1]
dec ecx
test al, al
je 0x4213e0
cmp al, 0xff
je 0x4213e0
dec al
mov byte [ecx], al
mov dword [esp + 0x1d0], esi
mov dword [esp + 0x1d4], esi
mov dword [esp + 0x1d8], esi
jmp 0x420b87
push ecx
call fcn.0045c5a9
add esp, 4
mov dword [esp + 0x1d0], esi
mov dword [esp + 0x1d4], esi
mov dword [esp + 0x1d8], esi
jmp 0x420b87
push 0x74
call fcn.0045cff5
mov esi, eax
add esp, 4
mov dword [esp + 0x18], esi
cmp esi, ebx
mov byte [esp + 0x424], 0x38
je 0x421459
mov dl, byte [esp + 0xf8]
sub esp, 0x10
mov ecx, esp
mov dword [esp + 0x60], esp
mov byte [ecx], dl
mov dword [ecx + 4], ebx
mov dword [ecx + 8], ebx
mov dword [ecx + 0xc], ebx
mov eax, dword [0x46f234]
lea edx, [esp + 0x108]
push eax
push ebx
push edx
call fcn.00402510
mov ecx, esi
call fcn.00402800
mov esi, eax
jmp 0x42145b
xor esi, esi
mov al, byte [esp + 0xe4]
sub esp, 0x10
mov ecx, esp
mov dword [esp + 0x28], esp
mov byte [esp + 0x434], 0x2f
mov byte [ecx], al
mov dword [ecx + 4], ebx
mov dword [ecx + 8], ebx
mov dword [ecx + 0xc], ebx
mov edx, dword [0x46f234]
lea eax, [esp + 0xf4]
push edx
push ebx
push eax
call fcn.00402510
mov ecx, esi
call fcn.00402b70
mov dl, byte [esp + 0xd0]
sub esp, 0x10
mov ecx, esp
mov dword [esp + 0x28], esp
mov byte [ecx], dl
mov dword [ecx + 4], ebx
mov dword [ecx + 8], ebx
mov dword [ecx + 0xc], ebx
mov eax, dword [0x46f234]
lea edx, [esp + 0xe0]
push eax
push ebx
push edx
call fcn.00402510
mov ecx, esi
call fcn.00402cc0
mov edi, dword [esp + 0x2c]
push 1
push ecx
lea eax, [edi + 0x10]
mov ecx, esp
mov dword [esp + 0x20], esp
push eax
call fcn.0042efe0
mov ecx, esi
call fcn.00402a80
mov eax, dword [edi + 0x14]
push ecx
mov ecx, esp
cmp eax, ebx
mov dword [esp + 0x1c], esp
mov dword [ecx], eax
je 0x421503
mov ecx, dword [eax]
push eax
call dword [ecx + 4]
mov ecx, esi
call fcn.00402af0
mov edx, dword [esp + 0xb4]
mov ecx, esi
push edx
call fcn.00402b60
mov eax, dword [esp + 0xe0]
mov ecx, esi
push eax
call fcn.00402a60
mov ecx, dword [esp + 0x94]
push ecx
mov ecx, esi
call fcn.00402a70
mov edx, dword [esp + 0x4c]
mov ecx, esi
push edx
call fcn.00402a20
mov eax, dword [esp + 0x48]
mov ecx, esi
push eax
call fcn.00402a30
mov ecx, dword [esp + 0x68]
push ecx
mov ecx, esi
call fcn.00402a40
mov edx, dword [esp + 0x70]
mov ecx, esi
push edx
call fcn.00402a50
mov eax, dword [0x47fb20]
push esi
mov ecx, dword [eax + 0x4b4]
call fcn.00401000
mov eax, dword [esp + 0xd4]
cmp eax, ebx
je 0x4215a0
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x421597
cmp al, 0xff
je 0x421597
dec al
mov byte [ecx], al
jmp 0x4215a0
push ecx
call fcn.0045c5a9
add esp, 4
mov eax, dword [esp + 0xe8]
mov dword [esp + 0xd4], ebx
cmp eax, ebx
mov dword [esp + 0xd8], ebx
mov dword [esp + 0xdc], ebx
je 0x4215dd
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x4215d4
cmp al, 0xff
je 0x4215d4
dec al
mov byte [ecx], al
jmp 0x4215dd
push ecx
call fcn.0045c5a9
add esp, 4
mov eax, dword [esp + 0xfc]
mov dword [esp + 0xe8], ebx
cmp eax, ebx
mov dword [esp + 0xec], ebx
mov dword [esp + 0xf0], ebx
mov byte [esp + 0x424], 0x26
je 0x421622
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x421619
cmp al, 0xff
je 0x421619
dec al
mov byte [ecx], al
jmp 0x421622
push ecx
call fcn.0045c5a9
add esp, 4
mov dword [esp + 0xfc], ebx
mov dword [esp + 0x100], ebx
mov dword [esp + 0x104], ebx
xor ebp, ebp
jmp 0x420503
mov eax, dword [esp + 0x110]
cmp eax, ebp
je 0x421666
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x42165d
cmp al, 0xff
je 0x42165d
dec al
mov byte [ecx], al
jmp 0x421666
push ecx
call fcn.0045c5a9
add esp, 4
mov ecx, dword [esp + 0x124]
mov dword [esp + 0x110], ebp
cmp ecx, ebp
mov dword [esp + 0x114], ebp
mov dword [esp + 0x118], ebp
mov byte [esp + 0x424], 5
je 0x4216aa
mov al, byte [ecx - 1]
test al, al
je 0x4216a0
cmp al, 0xff
je 0x4216a0
dec al
mov byte [ecx - 1], al
jmp 0x4216aa
dec ecx
push ecx
call fcn.0045c5a9
add esp, 4
mov ebx, dword [esp + 0x30]
mov dword [esp + 0x124], ebp
mov dword [esp + 0x128], ebp
mov dword [esp + 0x12c], ebp
jmp 0x41efde
mov ecx, dword [esp + 0x78]
cmp ecx, ebp
je 0x4216ec
mov al, byte [ecx - 1]
test al, al
je 0x4216e2
cmp al, 0xff
je 0x4216e2
dec al
mov byte [ecx - 1], al
jmp 0x4216ec
dec ecx
push ecx
call fcn.0045c5a9
add esp, 4
mov ecx, dword [esp + 0x58]
mov dword [esp + 0x78], ebp
cmp ecx, ebp
mov dword [esp + 0x7c], ebp
mov dword [esp + 0x80], ebp
je 0x42171f
mov al, byte [ecx - 1]
test al, al
je 0x421715
cmp al, 0xff
je 0x421715
dec al
mov byte [ecx - 1], al
jmp 0x42171f
dec ecx
push ecx
call fcn.0045c5a9
add esp, 4
mov ecx, dword [esp + 0x134]
mov dword [esp + 0x58], ebp
cmp ecx, ebp
mov dword [esp + 0x5c], ebp
mov dword [esp + 0x60], ebp
je 0x421752
mov al, byte [ecx - 1]
test al, al
je 0x421748
cmp al, 0xff
je 0x421748
dec al
mov byte [ecx - 1], al
jmp 0x421752
dec ecx
push ecx
call fcn.0045c5a9
add esp, 4
mov ecx, dword [esp + 0x3c]
mov dword [esp + 0x134], ebp
cmp ecx, ebp
mov dword [esp + 0x138], ebp
mov dword [esp + 0x13c], ebp
je 0x42178b
mov al, byte [ecx - 1]
test al, al
je 0x421781
cmp al, 0xff
je 0x421781
dec al
mov byte [ecx - 1], al
jmp 0x42178b
dec ecx
push ecx
call fcn.0045c5a9
add esp, 4
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x3c], ebp
cmp ecx, ebp
mov dword [esp + 0x40], ebp
mov dword [esp + 0x44], ebp
je 0x4217bb
mov al, byte [ecx - 1]
test al, al
je 0x4217b1
cmp al, 0xff
je 0x4217b1
dec al
mov byte [ecx - 1], al
jmp 0x4217bb
dec ecx
push ecx
call fcn.0045c5a9
add esp, 4
mov ecx, dword [esp + 0x88]
mov dword [esp + 0x20], ebp
cmp ecx, ebp
mov dword [esp + 0x24], ebp
mov dword [esp + 0x28], ebp
je 0x4217ee
mov al, byte [ecx - 1]
test al, al
je 0x4217e4
cmp al, 0xff
je 0x4217e4
dec al
mov byte [ecx - 1], al
jmp 0x4217ee
dec ecx
push ecx
call fcn.0045c5a9
add esp, 4
mov ecx, dword [esp + 0x41c]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
pop ebx
add esp, 0x418
ret