Function at 0x10032ed0
Capabilities:
Check for time delay via gettickcount

Disassembly:
push ebp
mov ebp, esp
and esp, 0xffffffc0
push 0xffffffffffffffff
push 0x1009af55
mov eax, dword fs:[0]
push eax
sub esp, 0xa4
push ebx
push ebp
push esi
push edi
mov eax, dword [0x100b8070]
xor eax, esp
push eax
lea eax, [esp + 0xb8]
mov dword fs:[0], eax
mov ebp, ecx
mov eax, dword [ebp + 0x14]
mov ecx, dword [eax + 0x597c4]
cmp ecx, 2
je 0x10032f20
xor eax, eax
mov dword [ebp + 0x70], eax
mov dword [ebp + 0x74], eax
jmp 0x1003402f
mov ebx, dword [eax + 0x5975c]
push eax
call fcn.1001ad10
push ebp
call fcn.10003bc0
mov eax, dword [ebp + 0x14]
mov eax, dword [eax + 0x59798]
xor esi, esi
cmp eax, esi
ja 0x10032f77
mov ecx, dword [0x100bb2cc]
mov edx, dword [ecx]
mov eax, dword [edx + 0x28]
call eax
mov dword [ebx + 0xec], esi
mov eax, dword [ebp + 0x14]
add eax, 0x597d0
lea ebx, [esp + 0x24]
mov dword [esp + 0x24], 2
call fcn.1001d970
mov dword [eax], esi
mov dword [ebp + 0x38], esi
jmp 0x1003402a
mov eax, ebp
call fcn.100015c0
cmp dword [ebx + 0x94], esi
jne 0x1003402a
cmp dword [ebx + 0x98], esi
jne 0x1003402a
mov eax, dword [ebp + 0x14]
add eax, 0x59790
cmp dword [eax + 8], esi
mov dword [esp + 0x20], eax
jne 0x10032fb2
push ebx
call fcn.10021900
jmp 0x1003402a
call fcn.10004a40
mov esi, eax
mov dword [esp + 0x1c], esi
call fcn.1006f5f0
fld dword [esi + 0xc]
fstp dword [esp + 0x60]
lea eax, [esp + 0x48]
fld dword [esi + 8]
lea ecx, [esp + 0x5c]
fstp dword [esp + 0x5c]
fld dword [esi + 0x10]
fstp dword [esp + 0x64]
fld dword [esi + 0x14]
fstp dword [esp + 0x68]
fld dword [ebx + 0x34]
fstp dword [esp + 0x4c]
fld dword [ebx + 0x30]
fstp dword [esp + 0x48]
fld dword [ebx + 0x38]
fstp dword [esp + 0x50]
fld dword [ebx + 0x3c]
fstp dword [esp + 0x54]
call fcn.10003a50
fst qword [esp + 0x2c]
fcomp qword [0x100a9868]
fnstsw ax
test ah, 5
jp 0x100330ae
fld dword [esp + 0x5c]
sub esp, 0x10
fsub dword [esp + 0x58]
fstp qword [esp + 8]
fld dword [esp + 0x70]
fsub dword [esp + 0x5c]
fstp qword [esp]
call fcn.1006ddc0
fstp dword [esp + 0x28]
add esp, 4
fld dword [0x100a982c]
fstp dword [esp + 8]
fld dword [esp + 0x60]
fstp dword [esp + 4]
fld dword [esp + 0x24]
fstp dword [esp]
call fcn.100218b0
add esp, 0xc
test eax, eax
jne 0x1003307a
push ebx
call fcn.10021900
fld dword [esp + 0x18]
push ecx
fstp dword [esp]
call fcn.10021920
mov edi, esi
call fcn.10055280
test eax, eax
jne 0x100330ae
mov eax, edi
call fcn.10003b20
cmp eax, 0x64
jne 0x1003402a
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, edi
call fcn.1001b910
mov eax, dword [esp + 0x20]
call fcn.10004a60
jmp 0x1003402a
call fcn.1007e120
test eax, eax
je 0x100330e0
mov eax, esi
call fcn.10003ac0
test eax, eax
jne 0x100330e0
mov al, 0
mov ecx, dword [0x100bb500]
mov byte [ecx], al
mov edx, dword [ebp + 0x14]
push edx
mov eax, esi
call fcn.1001b910
mov eax, dword [esp + 0x20]
call fcn.10004a60
call fcn.1007ec20
test eax, eax
je 0x100330f7
mov al, 0
mov ecx, dword [0x100bb500]
mov byte [ecx], al
add dword [ebp + 0x6c], 1
cmp dword [ebp + 0x6c], 1
jle 0x10033109
call fcn.10024010
mov dword [ebp + 0x6c], 0
cmp dword [ebp + 0x38], 0
mov edi, 0x211
jne 0x10033130
fld dword [ebx + 0x34]
fstp dword [ebp + 0x28]
fld dword [ebx + 0x30]
fstp dword [ebp + 0x24]
fld dword [ebx + 0x38]
fstp dword [ebp + 0x2c]
mov dword [ebp + 0x34], edi
mov dword [ebp + 0x38], 1
mov ecx, dword [esi + 0x48]
mov eax, dword [esi + 0x44]
push ecx
push eax
mov eax, ebx
call fcn.10003b80
test eax, eax
je 0x100331dc
fld qword [0x100a9950]
fld qword [esp + 0x2c]
fcom st(1)
fnstsw ax
fstp st(1)
test ah, 0x41
jne 0x1003319a
fld dword [esp + 0x60]
mov dword [ebp + 0x34], edi
fld dword [esp + 0x4c]
mov dword [ebp + 0x38], 1
fsubr st(1)
fld qword [0x100a9948]
fmul st(1), st(0)
fxch st(1)
fdiv st(3)
fsubp st(2)
fxch st(1)
fstp dword [ebp + 0x28]
fld dword [esp + 0x5c]
fld dword [esp + 0x48]
fsubr st(1)
fmulp st(2)
fxch st(1)
fdivrp st(2)
fsubrp st(1)
fstp dword [ebp + 0x24]
jmp 0x1003319c
fstp st(0)
mov edx, dword [ebp + 0x34]
lea eax, [ebp + 0x24]
mov ecx, 2
mov esi, ebx
call fcn.10056b10
cmp eax, 2
jne 0x100331ce
mov eax, dword [ebp + 0x14]
push eax
mov eax, dword [esp + 0x20]
call fcn.1001b910
mov eax, dword [esp + 0x20]
call fcn.10004a60
jmp 0x10033263
cmp eax, 1
jne 0x1003326a
jmp 0x10033263
fld dword [esi + 0xc]
fstp dword [esp + 0x74]
mov edx, dword [esp + 0x74]
fld dword [esi + 8]
mov dword [esp + 0x60], edx
mov edx, dword [esp + 0x80]
fstp dword [esp + 0x70]
fld dword [esi + 0x10]
mov ecx, dword [esp + 0x70]
fstp dword [esp + 0x78]
mov eax, dword [esp + 0x78]
fld dword [esi + 0x14]
mov dword [esp + 0x5c], ecx
fstp dword [esp + 0x7c]
mov ecx, dword [esp + 0x7c]
fld dword [ebx + 0x34]
mov dword [esp + 0x64], eax
fstp dword [esp + 0x4c]
mov dword [esp + 0x68], ecx
fld dword [ebx + 0x30]
lea eax, [esp + 0x48]
fstp dword [esp + 0x48]
lea ecx, [esp + 0x5c]
fld dword [ebx + 0x38]
mov dword [esp + 0x6c], edx
fstp dword [esp + 0x50]
fld dword [ebx + 0x3c]
fstp dword [esp + 0x54]
call fcn.10003a50
fcomp qword [0x100a98b0]
fnstsw ax
test ah, 5
jp 0x10033fbf
push ebx
call fcn.10021900
mov dword [ebp + 0x38], 0
fld dword [esp + 0x5c]
sub esp, 0x10
fsub dword [esp + 0x58]
fst qword [esp + 0x4c]
fld dword [esp + 0x70]
fsub dword [esp + 0x5c]
fst qword [esp + 0x44]
fxch st(1)
fstp qword [esp + 8]
fstp qword [esp]
call fcn.1006ddc0
fstp dword [esp + 0x28]
add esp, 4
fld dword [0x100a982c]
fstp dword [esp + 8]
fld dword [esp + 0x60]
fstp dword [esp + 4]
fld dword [esp + 0x24]
fstp dword [esp]
call fcn.100218b0
add esp, 0xc
test eax, eax
jne 0x100332cc
fld dword [esp + 0x18]
push ecx
fstp dword [esp]
call fcn.10021920
push 0x19
call fcn.100579d0
test eax, eax
je 0x100332f1
mov eax, dword [ebx]
mov edx, dword [eax + 0x54]
push 0x19
mov ecx, ebx
call edx
test eax, eax
jle 0x100332f1
mov eax, dword [ebx]
mov edx, dword [eax + 0x64]
push 0x19
mov ecx, ebx
call edx
push 0x1a
call fcn.100579d0
test eax, eax
je 0x10033316
mov eax, dword [ebx]
mov edx, dword [eax + 0x54]
push 0x1a
mov ecx, ebx
call edx
test eax, eax
jle 0x10033316
mov eax, dword [ebx]
mov edx, dword [eax + 0x64]
push 0x1a
mov ecx, ebx
call edx
mov eax, dword [ebx]
mov edx, dword [eax + 8]
mov ecx, ebx
call edx
lea eax, [esp + 0x18]
push eax
mov ecx, str.CatForm
call fcn.10003700
lea edx, [esp + 0x18]
lea ecx, [ebp + 4]
push edx
mov dword [esp + 0xc4], 0
call fcn.100048e0
mov eax, dword [eax]
push ecx
sub eax, 0x10
mov dword [esp + 0x2c], esp
mov esi, esp
call fcn.10001820
add eax, 0x10
mov ecx, ebp
mov dword [esi], eax
call fcn.10001420
mov edi, eax
lea eax, [esp + 0x18]
mov dword [esp + 0xc0], 0xffffffff
call fcn.10001660
test edi, edi
je 0x100333b8
mov eax, edi
call fcn.1006e760
mov esi, 0x300
mov eax, ebx
call fcn.10056f10
test eax, eax
jne 0x100333b8
mov esi, dword [edi]
call fcn.1007e040
test eax, eax
je 0x100333b8
mov edi, dword [edi]
mov eax, dword [ebx]
mov edx, dword [eax + 0x10]
push 7
push edi
mov ecx, ebx
call edx
push 0x5dc
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, ebx
call fcn.10003b60
cmp eax, 0x1e
jae 0x10033464
lea eax, [esp + 0x18]
push eax
mov ecx, str.Survival_Instincts
call fcn.10003700
lea ecx, [esp + 0x18]
push ecx
lea ecx, [ebp + 4]
mov dword [esp + 0xc4], 1
call fcn.100048e0
mov eax, dword [eax]
push ecx
sub eax, 0x10
mov dword [esp + 0x2c], esp
mov esi, esp
call fcn.10001820
add eax, 0x10
mov ecx, ebp
mov dword [esi], eax
call fcn.10001420
mov edi, eax
lea eax, [esp + 0x18]
mov dword [esp + 0xc0], 0xffffffff
call fcn.10001660
test edi, edi
je 0x10033464
mov eax, edi
call fcn.1006e760
mov esi, dword [edi]
call fcn.1007e040
test eax, eax
je 0x10033464
mov eax, edi
call fcn.10023fd0
test eax, eax
jne 0x10033464
cmp dword [edi + 0x10], eax
jne 0x10033464
mov eax, dword [edi]
push 9
push eax
mov edx, dword [ebx]
mov edx, dword [edx + 0x10]
mov ecx, ebx
call edx
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp + 0x3c], eax
jmp 0x1003402a
mov eax, dword [ebp + 0x14]
cmp dword [eax + 0x440], 0
je 0x100335f1
lea ecx, [esp + 0x24]
push ecx
mov ecx, str.Rejuvenation
call fcn.10003700
lea edx, [esp + 0x24]
push edx
lea ecx, [ebp + 4]
mov dword [esp + 0xc4], 2
call fcn.100048e0
mov eax, dword [eax]
push ecx
sub eax, 0x10
mov dword [esp + 0x2c], esp
mov esi, esp
call fcn.10001820
add eax, 0x10
mov ecx, ebp
mov dword [esi], eax
call fcn.10001420
mov esi, eax
lea eax, [esp + 0x24]
mov dword [esp + 0x18], esi
mov dword [esp + 0xc0], 0xffffffff
call fcn.10001660
test esi, esi
je 0x100335f1
mov eax, esi
call fcn.1006e760
mov esi, dword [esi]
mov eax, ebx
call fcn.10056f10
test eax, eax
jne 0x100335f1
mov eax, dword [esp + 0x18]
mov esi, dword [eax]
call fcn.1007e040
test eax, eax
je 0x100335f1
mov eax, ebx
call fcn.10003b60
cmp eax, 0x28
jae 0x100335f1
mov edi, ebx
call fcn.100574b0
mov ecx, dword [esp + 0x18]
mov eax, dword [ecx]
mov edx, dword [ebx]
push 7
push eax
mov eax, dword [edx + 0x10]
mov ecx, ebx
call eax
push 0x5dc
call dword [sym.imp.KERNEL32.dll_Sleep]
lea ecx, [esp + 0x24]
push ecx
mov ecx, str.Regrowth
call fcn.10003700
lea edx, [esp + 0x24]
push edx
lea ecx, [ebp + 4]
mov dword [esp + 0xc4], 3
call fcn.100048e0
mov eax, dword [eax]
push ecx
sub eax, 0x10
mov dword [esp + 0x2c], esp
mov esi, esp
call fcn.10001820
add eax, 0x10
mov ecx, ebp
mov dword [esi], eax
call fcn.10001420
mov esi, eax
lea eax, [esp + 0x24]
mov dword [esp + 0x18], esi
mov dword [esp + 0xc0], 0xffffffff
call fcn.10001660
test esi, esi
je 0x100335f1
mov eax, esi
call fcn.1006e760
mov esi, dword [esi]
mov eax, ebx
call fcn.10056f10
test eax, eax
jne 0x100335f1
mov eax, dword [esp + 0x18]
mov esi, dword [eax]
call fcn.1007e040
test eax, eax
je 0x100335f1
mov eax, ebx
call fcn.10003b60
cmp eax, 0x32
jae 0x100335f1
call fcn.100574b0
mov eax, dword [esp + 0x18]
mov ecx, dword [eax]
mov edx, dword [ebx]
mov edx, dword [edx + 0x10]
push 7
push ecx
mov ecx, ebx
call edx
push 0x5dc
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x1003402a
lea eax, [esp + 0x24]
push eax
mov ecx, str.HealingTouch
call fcn.10003700
lea ecx, [esp + 0x24]
push ecx
lea ecx, [ebp + 4]
mov dword [esp + 0xc4], 4
call fcn.100048e0
mov eax, dword [eax]
push ecx
sub eax, 0x10
mov dword [esp + 0x2c], esp
mov esi, esp
call fcn.10001820
add eax, 0x10
mov ecx, ebp
mov dword [esi], eax
call fcn.10001420
mov esi, eax
lea eax, [esp + 0x24]
mov dword [esp + 0x18], esi
mov dword [esp + 0xc0], 0xffffffff
call fcn.10001660
test esi, esi
je 0x100336b7
mov eax, esi
call fcn.1006e760
cmp dword [esi + 0x10], 0
jne 0x100336b7
mov eax, esi
call fcn.10023fd0
test eax, eax
jne 0x100336b7
mov edx, esi
mov esi, dword [edx]
call fcn.1007e040
test eax, eax
je 0x100336b7
mov eax, ebx
call fcn.1002ec10
cmp eax, 0x14
jbe 0x100336b7
mov eax, ebx
call fcn.10003b60
cmp eax, 0x3c
jae 0x100336b7
mov edi, ebx
call fcn.100574b0
mov ecx, dword [esp + 0x18]
mov edx, dword [ecx]
mov eax, dword [ebx]
mov eax, dword [eax + 0x10]
push 7
push edx
mov ecx, ebx
call eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp + 0x3c], eax
jmp 0x1003402a
mov eax, dword [ebp + 0x14]
cmp dword [eax + 0x438], 0
jne 0x100336d0
cmp dword [eax + 0x430], 0
je 0x1003402a
cmp dword [eax + 0x414], 0
je 0x10033796
lea ecx, [esp + 0x24]
push ecx
mov ecx, str.FaerieFire1
call fcn.10003700
lea edx, [esp + 0x24]
push edx
lea ecx, [ebp + 4]
mov dword [esp + 0xc4], 5
call fcn.100048e0
mov eax, dword [eax]
push ecx
sub eax, 0x10
mov dword [esp + 0x2c], esp
mov esi, esp
call fcn.10001820
add eax, 0x10
mov ecx, ebp
mov dword [esi], eax
call fcn.10001420
mov edi, eax
lea eax, [esp + 0x24]
mov dword [esp + 0xc0], 0xffffffff
call fcn.10001660
test edi, edi
je 0x10033796
mov eax, edi
call fcn.1006e760
mov esi, dword [edi]
mov eax, dword [esp + 0x1c]
call fcn.1006f6d0
test eax, eax
jne 0x10033796
mov esi, dword [edi]
call fcn.1007e040
test eax, eax
je 0x10033796
mov eax, edi
call fcn.10023fd0
test eax, eax
jne 0x10033796
cmp dword [edi + 0x10], eax
jne 0x10033796
mov eax, dword [esp + 0x1c]
call fcn.10003b20
cmp eax, 0x64
jne 0x10033796
mov ecx, dword [edi]
mov eax, dword [ebx]
mov edx, dword [eax + 0x10]
push 7
push ecx
mov ecx, ebx
call edx
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp + 0x3c], eax
jmp 0x1003402a
lea eax, [esp + 0x24]
push eax
mov ecx, str.Barkskin
call fcn.10003700
lea ecx, [esp + 0x24]
push ecx
lea edi, [ebp + 4]
mov ecx, edi
mov dword [esp + 0xc4], 6
call fcn.100048e0
mov eax, dword [eax]
push ecx
sub eax, 0x10
mov dword [esp + 0x2c], esp
mov esi, esp
call fcn.10001820
add eax, 0x10
mov ecx, ebp
mov dword [esi], eax
call fcn.10001420
mov esi, eax
lea eax, [esp + 0x24]
mov dword [esp + 0x18], esi
mov dword [esp + 0xc0], 0xffffffff
call fcn.10001660
test esi, esi
je 0x10033846
cmp dword [esi + 0x10], 0
jne 0x10033846
mov eax, esi
call fcn.10023fd0
test eax, eax
jne 0x10033846
mov edx, esi
mov esi, dword [edx]
call fcn.1007e040
test eax, eax
je 0x10033846
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [ebp + 0x3c]
cmp eax, 0x3e8
jbe 0x10033846
mov ecx, dword [esp + 0x18]
mov edx, dword [ecx]
mov eax, dword [ebx]
mov eax, dword [eax + 0x14]
push edx
mov ecx, ebx
call eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp + 0x3c], eax
jmp 0x1003402a
fld qword [0x100a9940]
fld qword [esp + 0x2c]
fcom st(1)
fnstsw ax
fstp st(1)
test ah, 0x41
jne 0x100338cf
fld dword [esp + 0x60]
lea eax, [ebp + 0x24]
fld qword [esp + 0x34]
mov edx, 0x211
fld qword [0x100a9840]
mov ecx, 2
fmul st(1), st(0)
mov esi, ebx
fxch st(1)
mov dword [ebp + 0x34], edx
mov dword [ebp + 0x38], 1
fdiv st(3)
fsubp st(2)
fxch st(1)
fstp dword [ebp + 0x28]
fld qword [esp + 0x3c]
fmulp st(1)
fdivrp st(1)
fsubr dword [esp + 0x5c]
fstp dword [eax]
call fcn.10056b10
cmp eax, 2
jne 0x100338bf
mov ecx, dword [ebp + 0x14]
mov eax, dword [esp + 0x1c]
push ecx
call fcn.1001b910
mov eax, dword [esp + 0x20]
call fcn.10004a60
jmp 0x100338c4
cmp eax, 1
jne 0x100338cb
mov dword [ebp + 0x38], 0
fld qword [esp + 0x2c]
fcomp qword [0x100a98b0]
fnstsw ax
test ah, 5
jp 0x1003402a
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [ebp + 0x3c]
cmp eax, 0x3e8
jb 0x1003402a
mov edx, dword [ebx]
mov eax, dword [edx + 8]
mov ecx, ebx
call eax
mov edx, dword [ebx]
mov eax, dword [edx + 0x7c]
mov ecx, ebx
call eax
cmp eax, 0x23
jae 0x100339ac
lea ecx, [esp + 0x24]
push ecx
mov ecx, str.TigersFury
call fcn.10003700
lea edx, [esp + 0x24]
push edx
mov ecx, edi
mov dword [esp + 0xc4], 7
call fcn.100048e0
mov eax, dword [eax]
push ecx
sub eax, 0x10
mov dword [esp + 0x2c], esp
mov esi, esp
call fcn.10001820
add eax, 0x10
mov ecx, ebp
mov dword [esi], eax
call fcn.10001420
mov esi, eax
lea eax, [esp + 0x24]
mov dword [esp + 0x18], esi
mov dword [esp + 0xc0], 0xffffffff
call fcn.10001660
test esi, esi
je 0x100339ac
cmp dword [esi + 0x10], 0
jne 0x100339ac
mov eax, esi
call fcn.10023fd0
test eax, eax
jne 0x100339ac
mov eax, esi
mov esi, dword [eax]
call fcn.1007e040
test eax, eax
je 0x100339ac
mov eax, dword [esp + 0x18]
mov ecx, dword [eax]
mov edx, dword [ebx]
mov edx, dword [edx + 0x14]
push ecx
mov ecx, ebx
call edx
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp + 0x3c], eax
jmp 0x1003402a
push 7
mov eax, ebp
call fcn.10004680
cmp eax, 1
jle 0x10033a32
fldz
lea eax, [esp + 0x24]
push eax
fstp dword [esp + 0x1c]
lea ecx, [esp + 0x1c]
push ecx
lea edx, [esp + 0x30]
push edx
xor esi, esi
push 0xf27e
mov dword [esp + 0x38], esi
mov dword [esp + 0x34], esi
call fcn.1007de20
add esp, 0x10
cmp dword [esp + 0x24], esi
jne 0x10033a32
mov eax, dword [ebx]
mov edx, dword [eax + 0x7c]
mov ecx, ebx
call edx
cmp eax, 0x2d
jbe 0x10033a32
mov esi, 0xf27e
call fcn.1007e040
test eax, eax
je 0x10033a32
mov ecx, dword [0x100bb2cc]
mov eax, dword [ecx]
mov edx, dword [eax + 0x64]
push esi
call edx
test eax, eax
jne 0x10033a32
mov eax, dword [ebx]
mov edx, dword [eax + 0x14]
push esi
mov ecx, ebx
call edx
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp + 0x3c], eax
jmp 0x1003402a
mov eax, dword [ebp + 0x14]
cmp dword [eax + 0x42c], 0
je 0x10033b1f
lea ecx, [esp + 0x24]
push ecx
mov ecx, str.Maim
call fcn.10003700
lea edx, [esp + 0x24]
push edx
mov ecx, edi
mov dword [esp + 0xc4], 8
call fcn.100048e0
mov eax, dword [eax]
push ecx
sub eax, 0x10
mov dword [esp + 0x2c], esp
mov esi, esp
call fcn.10001820
add eax, 0x10
mov ecx, ebp
mov dword [esi], eax
call fcn.10001420
mov esi, eax
lea eax, [esp + 0x24]
mov dword [esp + 0x18], esi
mov dword [esp + 0xc0], 0xffffffff
call fcn.10001660
test esi, esi
je 0x10033b1f
mov eax, esi
call fcn.1006e760
mov esi, dword [esi]
call fcn.1007e040
test eax, eax
je 0x10033b1f
mov esi, dword [esp + 0x18]
mov eax, esi
call fcn.10023fd0
test eax, eax
jne 0x10033b1f
cmp dword [esi + 0x10], eax
jne 0x10033b1f
mov eax, dword [ebx]
mov edx, dword [eax + 0x7c]
mov ecx, ebx
call edx
cmp eax, 0x23
jbe 0x10033b1f
mov esi, dword [sym.imp.KERNEL32.dll_GetTickCount]
call esi
sub eax, dword [ebp + 0x3c]
cmp eax, 0x3e8
jb 0x10033b1f
mov ecx, ebx
call fcn.10060430
cmp eax, 5
jl 0x10033b1f
mov eax, dword [esp + 0x1c]
call fcn.10003b20
cmp eax, 0x2d
jbe 0x10033b1f
mov ecx, dword [esp + 0x18]
mov edx, dword [ecx]
mov eax, dword [ebx]
mov eax, dword [eax + 0x10]
push 7
push edx
mov ecx, ebx
call eax
call esi
mov dword [ebp + 0x3c], eax
jmp 0x1003402a
lea ecx, [esp + 0x24]
push ecx
mov ecx, 0x100a6d48
call fcn.10003700
lea edx, [esp + 0x24]
push edx
mov ecx, edi
mov dword [esp + 0xc4], 9
call fcn.100048e0
mov eax, dword [eax]
push ecx
sub eax, 0x10
mov dword [esp + 0x2c], esp
mov esi, esp
call fcn.10001820
add eax, 0x10
mov ecx, ebp
mov dword [esi], eax
call fcn.10001420
mov esi, eax
lea eax, [esp + 0x24]
mov dword [esp + 0x18], esi
mov dword [esp + 0xc0], 0xffffffff
call fcn.10001660
test esi, esi
je 0x10033bdf
mov eax, esi
call fcn.1006e760
mov esi, dword [esi]
call fcn.1007e040
test eax, eax
je 0x10033bdf
mov eax, dword [esp + 0x18]
call fcn.10023fd0
test eax, eax
jne 0x10033bdf
mov eax, dword [esp + 0x18]
cmp dword [eax + 0x10], 0
jne 0x10033bdf
mov edx, dword [ebx]
mov eax, dword [edx + 0x7c]
mov ecx, ebx
call eax
cmp eax, 0x1e
jbe 0x10033bdf
mov ecx, ebx
call fcn.10060430
cmp eax, 3
jne 0x10033bdf
mov eax, dword [esp + 0x1c]
call fcn.10003b20
cmp eax, 0x32
jbe 0x10033bdf
mov eax, dword [esp + 0x18]
mov ecx, dword [eax]
push 7
push ecx
jmp 0x1003344d
mov eax, dword [ebx]
mov edx, dword [eax + 0x7c]
mov ecx, ebx
call edx
cmp eax, 0x1e
jbe 0x10033c9a
lea eax, [esp + 0x24]
push eax
mov ecx, str.Savage_Roar
call fcn.10003700
lea ecx, [esp + 0x24]
push ecx
mov ecx, edi
mov dword [esp + 0xc4], 0xa
call fcn.100048e0
mov eax, dword [eax]
push ecx
sub eax, 0x10
mov dword [esp + 0x2c], esp
mov esi, esp
call fcn.10001820
add eax, 0x10
mov ecx, ebp
mov dword [esi], eax
call fcn.10001420
mov esi, eax
lea eax, [esp + 0x24]
mov dword [esp + 0x18], esi
mov dword [esp + 0xc0], 0xffffffff
call fcn.10001660
test esi, esi
je 0x10033c9a
cmp dword [esi + 0x10], 0
jne 0x10033c9a
mov eax, esi
call fcn.10023fd0
test eax, eax
jne 0x10033c9a
mov edx, esi
mov esi, dword [edx]
call fcn.1007e040
test eax, eax
je 0x10033c9a
mov ecx, ebx
call fcn.10060430
cmp eax, 1
jl 0x10033c9a
mov ecx, dword [esp + 0x18]
mov edx, dword [ecx]
mov eax, dword [ebx]
mov eax, dword [eax + 0x14]
push edx
mov ecx, ebx
call eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp + 0x3c], eax
jmp 0x1003402a
lea ecx, [esp + 0x24]
push ecx
mov ecx, str.FerociousBite
call fcn.10003700
lea edx, [esp + 0x24]
push edx
mov ecx, edi
mov dword [esp + 0xc4], 0xb
call fcn.100048e0
mov eax, dword [eax]
push ecx
sub eax, 0x10
mov dword [esp + 0x2c], esp
mov esi, esp
call fcn.10001820
add eax, 0x10
mov ecx, ebp
mov dword [esi], eax
call fcn.10001420
mov esi, eax
lea eax, [esp + 0x24]
mov dword [esp + 0x18], esi
mov dword [esp + 0xc0], 0xffffffff
call fcn.10001660
test esi, esi
je 0x10033d66
mov eax, esi
call fcn.1006e760
mov esi, dword [esi]
call fcn.1007e040
test eax, eax
je 0x10033d66
mov esi, dword [esp + 0x18]
mov eax, esi
call fcn.10023fd0
test eax, eax
jne 0x10033d66
mov eax, dword [ebx]
mov edx, dword [eax + 0x7c]
mov ecx, ebx
call edx
cmp eax, 0x23
jbe 0x10033d66
cmp dword [esi + 0x10], 0
jne 0x10033d66
mov eax, dword [esp + 0x1c]
call fcn.10003b20
cmp eax, 0x23
jb 0x10033d4a
mov ecx, ebx
call fcn.10060430
cmp eax, 4
jl 0x10033d66
mov ecx, dword [esi]
mov eax, dword [ebx]
mov edx, dword [eax + 0x10]
push 7
push ecx
mov ecx, ebx
call edx
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp + 0x3c], eax
jmp 0x1003402a
mov ecx, dword [ebp + 0x14]
xor eax, eax
cmp dword [ecx + 0x424], eax
je 0x10033dfc
fldz
lea edx, [esp + 0x24]
push edx
fstp dword [esp + 0x2c]
mov dword [esp + 0x1c], eax
mov dword [esp + 0x28], eax
lea eax, [esp + 0x2c]
push eax
lea ecx, [esp + 0x20]
push ecx
push 0x8454
call fcn.1007de20
add esp, 0x10
cmp dword [esp + 0x24], 0
jne 0x10033dfc
mov edx, dword [ebx]
mov eax, dword [edx + 0x7c]
mov ecx, ebx
call eax
cmp eax, 0x23
jbe 0x10033dfc
mov esi, 0x8454
call fcn.1007e040
test eax, eax
je 0x10033dfc
mov ecx, dword [0x100bb2cc]
mov edx, dword [ecx]
mov eax, dword [edx + 0x64]
push esi
call eax
test eax, eax
jne 0x10033dfc
mov ecx, ebx
call fcn.10060430
cmp eax, 5
jge 0x10033dfc
mov edx, dword [ebx]
mov eax, dword [edx + 0x10]
push 7
push esi
mov ecx, ebx
call eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp + 0x3c], eax
jmp 0x1003402a
lea ecx, [esp + 0x24]
push ecx
mov ecx, str.Rake
call fcn.10003700
lea edx, [esp + 0x24]
push edx
mov ecx, edi
mov dword [esp + 0xc4], 0xc
call fcn.100048e0
mov eax, dword [eax]
push ecx
sub eax, 0x10
mov dword [esp + 0x2c], esp
mov esi, esp
call fcn.10001820
add eax, 0x10
mov ecx, ebp
mov dword [esi], eax
call fcn.10001420
mov esi, eax
lea eax, [esp + 0x24]
mov dword [esp + 0x18], esi
mov dword [esp + 0xc0], 0xffffffff
call fcn.10001660
test esi, esi
je 0x10033ea8
mov eax, esi
call fcn.1006e760
mov esi, dword [esi]
mov eax, dword [esp + 0x1c]
call fcn.1006f6d0
test eax, eax
jne 0x10033ea8
mov eax, dword [esp + 0x18]
mov esi, dword [eax]
call fcn.1007e040
test eax, eax
je 0x10033ea8
mov edx, dword [ebx]
mov eax, dword [edx + 0x7c]
mov ecx, ebx
call eax
cmp eax, 0x23
jbe 0x10033ea8
mov esi, dword [esp + 0x18]
mov eax, esi
call fcn.10023fd0
test eax, eax
jne 0x10033ea8
cmp dword [esi + 0x10], eax
je 0x10033fb6
mov eax, dword [ebp + 0x14]
cmp dword [eax + 0x424], 0
jne 0x10033f43
lea ecx, [esp + 0x24]
push ecx
mov ecx, str.Claw
call fcn.10003700
lea edx, [esp + 0x24]
push edx
mov ecx, edi
mov dword [esp + 0xc4], 0xd
call fcn.100048e0
mov eax, dword [eax]
push ecx
sub eax, 0x10
mov dword [esp + 0x2c], esp
mov esi, esp
call fcn.10001820
add eax, 0x10
mov ecx, ebp
mov dword [esi], eax
call fcn.10001420
mov esi, eax
lea eax, [esp + 0x24]
mov dword [esp + 0x18], esi
mov dword [esp + 0xc0], 0xffffffff
call fcn.10001660
test esi, esi
je 0x10033f43
mov eax, esi
call fcn.1006e760
mov esi, dword [esi]
call fcn.1007e040
test eax, eax
je 0x10033f43
mov esi, dword [esp + 0x18]
mov eax, esi
call fcn.10023fd0
test eax, eax
jne 0x10033f43
cmp dword [esi + 0x10], eax
je 0x10033d4a
lea eax, [esp + 0x20]
push eax
mov ecx, str.Attack
call fcn.10003700
lea ecx, [esp + 0x20]
push ecx
mov ecx, edi
mov dword [esp + 0xc4], 0xe
call fcn.100048e0
mov eax, dword [eax]
push ecx
sub eax, 0x10
mov dword [esp + 0x2c], esp
mov esi, esp
call fcn.10001820
add eax, 0x10
mov ecx, ebp
mov dword [esi], eax
call fcn.10001420
mov esi, eax
lea eax, [esp + 0x20]
mov dword [esp + 0xc0], 0xffffffff
call fcn.10001660
test esi, esi
je 0x1003402a
mov eax, esi
call fcn.1006e760
mov eax, esi
call fcn.10023fd0
test eax, eax
jne 0x1003402a
mov eax, dword [esi]
push 7
jmp 0x1003344c
fld dword [esp + 0x74]
lea eax, [ebp + 0x24]
fld dword [esp + 0x4c]
mov edx, edi
fsubr st(1)
mov ecx, 1
fld qword [esp + 0x2c]
mov esi, ebx
mov dword [ebp + 0x34], edx
fdiv st(1), st(0)
mov dword [ebp + 0x38], 1
fxch st(2)
fsubrp st(1)
fstp dword [ebp + 0x28]
fld dword [esp + 0x70]
fld dword [esp + 0x48]
fsubr st(1)
fdivrp st(2)
fsubrp st(1)
fstp dword [eax]
call fcn.10056b10
cmp eax, 2
jne 0x1003401e
mov eax, dword [ebp + 0x14]
push eax
mov eax, dword [esp + 0x20]
call fcn.1001b910
mov eax, dword [esp + 0x20]
call fcn.10004a60
jmp 0x10034023
cmp eax, 1
jne 0x1003402a
mov dword [ebp + 0x38], 0
mov eax, 1
mov ecx, dword [esp + 0xb8]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret 4