Function at 0x48c0e0
Capabilities:
Encrypt data using speck
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5c1f1e
mov eax, dword fs:[0]
push eax
sub esp, 0x9ac
mov eax, dword [0x626734]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 0x97c], edi
cmp byte [edi + 0x14f90], 0
mov esi, dword [ebp + 8]
mov dword [ebp - 0x8e4], esi
jne 0x48c131
mov dword [edi + 0x14f18], 1
mov dword [ebp - 0x8f0], 0
mov dword [ebp - 0x91c], 0
mov dword [ebp - 0x918], 0
mov dword [ebp - 0x914], 0
mov ecx, dword [edi + 0x180]
mov eax, ecx
shr eax, 8
mov byte [ebp - 0x937], al
mov eax, ecx
shr eax, 0x10
mov byte [ebp - 0x938], cl
mov byte [ebp - 0x936], al
lea eax, [ebp - 0x938]
shr ecx, 0x18
push eax
mov byte [ebp - 0x935], cl
lea ecx, [ebp - 0x91c]
push 0
mov dword [ebp - 4], 0
mov byte [ebp - 0x934], 0
call fcn.0043eb20
mov ecx, esi
mov byte [ebp - 0x88c], 0x17
call fcn.0044ccc0
cmp eax, 1
mov eax, 0
cmove eax, esi
mov dword [ebp - 0x940], eax
call dword [sym.imp.WINMM.dll_timeGetTime]
cmp dword [edi + 0x120], 0
mov ecx, eax
mov dword [ebp - 0x904], ecx
je 0x48c768
mov edx, dword [edi + 0x118]
sub ecx, edx
mov dword [edi + 0x14f58], 0
test edx, edx
je 0x48c1fa
cmp eax, edx
jae 0x48c201
mov ecx, dword [edi + 0x14f80]
inc ecx
mov dword [edi + 0x14ea0], 0
cmp ecx, dword [edi + 0x14f80]
jbe 0x490c3d
mov ecx, esi
mov dword [edi + 0x120], 0
call fcn.0044ccc0
test eax, eax
jne 0x48c4e5
mov eax, 0x60c2d4
mov dword [ebp - 0x908], eax
nop dword [eax + eax]
mov eax, dword [eax - 4]
mov ecx, dword [edi + 0x108]
mov dword [ebp - 0x8f8], eax
sub eax, ecx
cdq
xor eax, edx
sub eax, edx
cmp eax, 3
jg 0x48c287
mov eax, dword [ebp - 0x908]
lea edx, [edi + 0x10c]
mov dword [ebp - 0x8f4], edx
mov eax, dword [eax]
sub eax, dword [edx]
cdq
xor eax, edx
sub eax, edx
cmp eax, 3
jle 0x48c38e
mov eax, dword [ebp - 0x8f4]
jmp 0x48c28d
lea eax, [edi + 0x10c]
mov dword [ebp - 0x8ec], eax
mov dword [ebp - 0x8f4], eax
mov eax, dword [ebp - 0x8f8]
sub eax, dword [edi + 0x110]
cdq
xor eax, edx
sub eax, edx
cmp eax, 3
jg 0x48c38e
mov eax, dword [ebp - 0x8ec]
mov ecx, dword [edi + 0x108]
mov dword [ebp - 0x8f4], eax
mov eax, dword [ebp - 0x908]
mov eax, dword [eax]
sub eax, dword [edi + 0x114]
cdq
xor eax, edx
sub eax, edx
cmp eax, 3
jg 0x48c38e
cmp dword [esi + 0x124], 0
mov eax, dword [ebp - 0x8ec]
mov dword [ebp - 0x8f4], eax
jne 0x48c38e
mov eax, dword [ebp - 0x908]
add eax, 0xffffffbc
push eax
lea eax, [ebp - 0x410]
push str.You_are_entering__s.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0x88b]
push eax
lea eax, [ebp - 0x410]
push 0x400
push eax
call fcn.0044d1c0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x91c]
add esp, 0x1c
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0x88c]
push edx
push 0x65
call dword [eax + 4]
imul ecx, dword [edi + 0x188], 0x980
mov edx, dword [ebp - 0x908]
mov eax, dword [edx - 4]
mov dword [ecx + edi + 0x310], eax
imul ecx, dword [edi + 0x188], 0x980
mov eax, dword [edx]
mov dword [ecx + edi + 0x314], eax
mov eax, dword [ebp - 0x8ec]
mov ecx, dword [edi + 0x108]
mov dword [ebp - 0x8f4], eax
mov eax, dword [ebp - 0x908]
add eax, 0x50
mov dword [ebp - 0x908], eax
cmp eax, 0x60ca54
jl 0x48c240
mov eax, 0x60c2d0
mov dword [ebp - 0x908], eax
mov eax, dword [eax]
mov edx, ecx
mov dword [ebp - 0x8f8], eax
sub eax, edx
mov dword [ebp - 0x8ec], edx
cdq
xor eax, edx
sub eax, edx
cmp eax, 3
jg 0x48c4cb
mov eax, dword [ebp - 0x908]
mov edx, dword [ebp - 0x8f4]
mov eax, dword [eax + 4]
mov dword [ebp - 0x90c], eax
sub eax, dword [edx]
cdq
xor eax, edx
sub eax, edx
cmp eax, 3
jg 0x48c4cb
mov eax, dword [ebp - 0x8f8]
sub eax, dword [edi + 0x110]
cdq
xor eax, edx
sub eax, edx
cmp eax, 3
jg 0x48c428
mov eax, dword [ebp - 0x90c]
sub eax, dword [edi + 0x114]
cdq
xor eax, edx
sub eax, edx
cmp eax, 3
jle 0x48c4cb
cmp dword [esi + 0x124], 0
mov ecx, dword [ebp - 0x8ec]
jne 0x48c4cb
mov eax, dword [ebp - 0x908]
add eax, 0xffffffc0
push eax
lea eax, [ebp - 0x410]
push str.You_are_leaving__s.
push eax
call fcn.0043d370
mov ecx, 0xf
lea esi, [ebp - 0x410]
lea edi, [ebp - 0x88b]
add esp, 0xc
rep movsd dword es:[edi], dword [esi]
lea edx, [ebp - 0x91c]
push edx
push 0
movsw word es:[edi], word [esi]
lea edx, [ebp - 0x88c]
push edx
push 0x65
movsb byte es:[edi], byte [esi]
mov esi, dword [ebp - 0x8e4]
mov ecx, dword [esi + 0x11c]
mov eax, dword [ecx]
call dword [eax + 4]
mov edi, dword [ebp - 0x97c]
mov edx, dword [ebp - 0x908]
imul ecx, dword [edi + 0x188], 0x980
mov eax, dword [edx]
mov dword [ecx + edi + 0x310], eax
imul ecx, dword [edi + 0x188], 0x980
mov eax, dword [edx + 4]
mov dword [ecx + edi + 0x314], eax
mov ecx, dword [edi + 0x108]
mov eax, dword [ebp - 0x908]
add eax, 0x50
mov dword [ebp - 0x908], eax
cmp eax, 0x60ca50
jl 0x48c3b3
cmp dword [edi + 0x14f14], 0
mov ecx, dword [edi + 0x110]
mov edx, dword [edi + 0x114]
mov eax, dword [edi + 0x180]
mov dword [edi + 0x108], ecx
mov dword [edi + 0x10c], edx
mov byte [ebp - 0x92c], 5
mov dword [ebp - 0x92b], eax
mov byte [ebp - 0x927], cl
mov byte [ebp - 0x926], dl
jne 0x48c55e
cmp dword [edi + 0x14f24], 0
jne 0x48c55e
push 0
movd xmm0, edx
lea eax, [ebp - 0x92c]
cvtdq2ps xmm0, xmm0
push 5
push eax
push 7
cvttss2si eax, xmm0
movd xmm0, ecx
mov ecx, esi
cvtdq2ps xmm0, xmm0
push eax
cvttss2si eax, xmm0
push eax
push 0
call fcn.00529cd0
jmp 0x48c57b
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x91c]
push edx
push 0
lea edx, [ebp - 0x92c]
mov eax, dword [ecx]
push edx
push 7
call dword [eax + 4]
push 0
push 0
push esi
mov ecx, edi
call fcn.00490c70
push esi
mov ecx, edi
call fcn.004888e0
mov ecx, dword [esi + 0x118]
push 1
push dword [edi + 0x10c]
push dword [edi + 0x108]
call fcn.00513550
mov ecx, eax
mov dword [ebp - 0x8ec], ecx
test ecx, ecx
je 0x48c6d8
call fcn.0044ccc0
cmp eax, 1
jne 0x48c6bd
mov ecx, dword [ebp - 0x8ec]
mov edx, dword [ecx + 0x108]
lea eax, [ecx + 0x10c]
mov dword [ebp - 0x920], eax
cmp edx, dword [edi + 0x108]
jne 0x48c674
mov eax, dword [eax]
cmp eax, dword [edi + 0x10c]
jne 0x48c67a
cmp dword [ecx + 0x204], 0
mov dword [ebp - 0x8f0], ecx
jne 0x48c668
cmp dword [edi + 0x14f14], 0
jne 0x48c668
cmp dword [ecx + 0x21c], 0
jne 0x48c668
mov eax, dword [ecx + 0x220]
cmp eax, 7
je 0x48c668
cmp eax, 0x1f
je 0x48c668
mov eax, dword [ebp - 0x940]
test eax, eax
je 0x48c63f
push edi
mov ecx, eax
call fcn.004ee140
test eax, eax
jne 0x48c668
call fcn.00565cd7
cdq
mov ecx, 0x3e8
idiv ecx
mov ecx, dword [ebp - 0x8ec]
mov eax, dword [ebp - 0x904]
sub eax, edx
mov dword [ecx + 0x11c], eax
mov dword [ecx + 0x204], edi
jmp 0x48c6bd
mov dword [ebp - 0x8f0], 0
jmp 0x48c6bd
mov dword [ebp - 0x920], eax
sub edx, dword [edi + 0x108]
mov eax, edx
cdq
xor eax, edx
sub eax, edx
cmp eax, 2
jge 0x48c6bd
mov eax, dword [ebp - 0x920]
mov eax, dword [eax]
sub eax, dword [edi + 0x10c]
cdq
xor eax, edx
sub eax, edx
cmp eax, 2
jge 0x48c6bd
cmp dword [edi + 0x14f14], 0
jne 0x48c6bd
cmp dword [ecx + 0x21c], 0
jne 0x48c6bd
push esi
push edi
call fcn.00499030
mov ecx, dword [esi + 0x118]
call fcn.005135f0
mov ecx, eax
mov dword [ebp - 0x8ec], eax
test ecx, ecx
jne 0x48c5b8
cmp dword [edi + 0x14ea0], 0
jne 0x48c73a
mov ecx, dword [ebp - 0x8f0]
test ecx, ecx
je 0x48c73a
cmp dword [edi + 0x14f14], 0
jne 0x48c73a
cmp dword [ecx + 0x21c], 0
jne 0x48c73a
cmp dword [edi + 0x14f48], 0
jne 0x48c73a
imul eax, dword [edi + 0x188], 0x980
mov edx, dword [ebp - 0x904]
mov dword [edi + 0x11c], edx
mov dword [eax + edi + 0x350], edx
imul eax, dword [edi + 0x188], 0x980
mov dword [eax + edi + 0x384], edx
mov dword [edi + 0x14ea0], ecx
push dword [edi + 0x10c]
imul eax, dword [edi + 0x188], 0x980
mov ecx, 0x62b580
push dword [edi + 0x108]
push esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.0052ce10
jmp 0x490c3d
mov eax, dword [edi + 0x11c]
mov edx, ecx
sub edx, eax
test eax, eax
je 0x48c77a
cmp ecx, eax
jae 0x48c77f
mov edx, 0x7d1
imul eax, dword [edi + 0x188], 0x980
mov ecx, 0x3e8
mov dword [ebp - 0x8f8], eax
cmp dword [eax + edi + 0x2e8], 9
jle 0x48c7b6
mov ecx, dword [ebp - 0x8f8]
mov eax, 0x1a
sub eax, dword [ecx + edi + 0xbd0]
lea ecx, [eax + eax*4]
shl ecx, 3
mov eax, dword [edi + 0x14ea0]
test eax, eax
je 0x48c7e6
cmp dword [eax + 0x224], 0
jne 0x48c7e6
mov eax, dword [eax + 0x220]
sub eax, 9
mov dword [ebp - 0x8f8], 0x3e8
cmp eax, 8
cmovbe ecx, dword [ebp - 0x8f8]
movd xmm0, edx
lea eax, [ecx + ecx]
cvtdq2pd xmm0, xmm0
shr edx, 0x1f
addsd xmm0, qword [edx*8 + 0x5ce230]
cvtpd2ps xmm0, xmm0
movss dword [ebp - 0x8f8], xmm0
movss xmm2, dword [ebp - 0x8f8]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x8ec], xmm0
movss xmm0, dword [edi + 0x15c]
mulss xmm0, dword [0x5d33bc]
movss xmm1, dword [ebp - 0x8ec]
addss xmm0, xmm1
comiss xmm2, xmm0
jbe 0x48efef
cmp dword [edi + 0x14ea0], 0
je 0x48efef
mov eax, dword [ebp - 0x940]
test eax, eax
je 0x48c87b
push edi
mov ecx, eax
call fcn.004ee140
test eax, eax
je 0x48c87b
mov eax, dword [edi + 0x14ea0]
cmp byte [eax + 0x1df], 0
je 0x48efe7
mov eax, dword [ebp - 0x904]
mov ecx, 1
movss xmm0, dword [edi + 0x170]
mov dword [edi + 0x11c], eax
xor eax, eax
comiss xmm0, dword [0x5cf054]
push 0
mov dword [ebp - 0x8c8], 0xfffffffd
push dword [edi + 0x10c]
push dword [edi + 0x108]
cmova eax, ecx
mov ecx, dword [esi + 0x118]
mov dword [ebp - 0x920], eax
call fcn.00513550
mov dword [ebp - 0x8e0], eax
test eax, eax
je 0x48efd6
mov dword [ebp - 0x910], 0x9c4
mov ecx, dword [ebp - 0x910]
mov dword [ebp - 0x908], ecx
nop dword [eax]
cmp dword [ebp - 0x920], 0
jne 0x48eea3
cmp eax, dword [edi + 0x14ea0]
jne 0x48ee8a
mov ecx, eax
call fcn.0044ccc0
cmp eax, 1
jne 0x48ee8a
mov ecx, dword [ebp - 0x8e0]
cmp dword [ecx + 0x124], 0
jne 0x48ee8a
mov eax, dword [ecx + 0x108]
cmp eax, dword [edi + 0x108]
jne 0x48ee8a
mov eax, dword [ecx + 0x10c]
cmp eax, dword [edi + 0x10c]
jne 0x48ee8a
mov ecx, dword [ecx + 0x21c]
mov dword [ebp - 0x920], 1
test ecx, ecx
je 0x48c98a
call fcn.00474b60
cmp eax, 9
jle 0x48c98a
mov eax, dword [ebp - 0x8e0]
mov eax, dword [eax + 0x204]
test eax, eax
je 0x48ef65
cmp eax, edi
jne 0x48ef65
imul eax, dword [edi + 0x188], 0x980
or ecx, 0xffffffff
mov dword [ebp - 0x8f4], ecx
mov dword [ebp - 0x944], 0
mov dword [ebp - 0x948], 0
mov dword [ebp - 0x998], 0
mov dword [ebp - 0x99c], 0
mov dword [ebp - 0x9a0], 0
mov dword [ebp - 0x8fc], 0
mov ecx, dword [eax + edi + 0x2e4]
add ecx, 4
mov dword [ebp - 0x8e8], 0
call fcn.0044e330
mov dword [ebp - 0x8dc], eax
test eax, eax
je 0x48cb66
mov ecx, dword [ebp - 0x8f4]
cmp ecx, 0xffffffff
jne 0x48cb53
cmp dword [ebp - 0x8e8], 0
jne 0x48cc35
cmp dword [eax + 0x110], 1
jne 0x48cb09
cmp dword [eax + 0x118], 1
jle 0x48cabf
push 0x120
call fcn.00556676
add esp, 4
mov dword [ebp - 0x9a4], eax
mov byte [ebp - 4], 1
test eax, eax
je 0x48ca6b
push 0x5d1278
push 0
push 1
mov ecx, eax
call fcn.0050b040
mov edx, eax
mov dword [ebp - 0x8f0], eax
jmp 0x48ca73
xor edx, edx
mov dword [ebp - 0x8f0], edx
mov ecx, dword [ebp - 0x8dc]
push edx
mov byte [ebp - 4], 0
mov eax, dword [ecx]
call dword [eax + 0x18]
mov eax, dword [ebp - 0x8dc]
dec dword [eax + 0x118]
mov eax, dword [ebp - 0x8f0]
push eax
mov dword [eax + 0x118], 1
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e4]
add ecx, 4
call fcn.0044e440
mov eax, dword [ebp - 0x8f0]
mov edx, dword [eax + 0x11c]
mov dword [ebp - 0x8fc], edx
mov ecx, dword [edx + 4]
mov dword [ebp - 0x8f4], ecx
mov ecx, dword [edx]
mov dword [ebp - 0x93c], ecx
mov ecx, dword [edx + 0x20]
mov dword [ebp - 0x9a0], ecx
mov ecx, dword [edx + 0x2c]
mov dword [ebp - 0x99c], ecx
mov ecx, dword [edx + 0x28]
mov dword [ebp - 0x998], ecx
mov ecx, dword [edx + 0x24]
mov dword [ebp - 0x948], ecx
mov ecx, dword [edx + 0x30]
mov dword [ebp - 0x944], ecx
cmp dword [eax + 0x110], 0xe
jne 0x48cb26
mov eax, dword [eax + 0x11c]
xor ecx, ecx
cmp dword [eax], 0xd
cmove eax, ecx
mov dword [ebp - 0x8e8], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e4]
add ecx, 4
call fcn.0044e3e0
mov dword [ebp - 0x8dc], eax
test eax, eax
jne 0x48ca00
mov ecx, dword [ebp - 0x8f4]
mov eax, dword [ebp - 0x8e8]
test eax, eax
jne 0x48cc3b
cmp ecx, 0xffffffff
jne 0x48cb7a
mov dword [ebp - 0x8f4], 1
mov dword [ebp - 0x93c], 1
mov ecx, edi
call fcn.00487570
mov ecx, dword [ebp - 0x8e0]
movsx edx, byte [edi + 0x14f07]
add eax, dword [ebp - 0x8f4]
movss xmm1, dword [edi + 0x160]
sub edx, dword [ecx + 0x1bc]
add edx, eax
comiss xmm1, dword [0x5cf054]
mov dword [ebp - 0x8f0], edx
jbe 0x48cbc8
movd xmm0, edx
cvtdq2ps xmm0, xmm0
subss xmm0, xmm1
cvttss2si eax, xmm0
mov dword [ebp - 0x8f0], eax
call fcn.00565cd7
cdq
mov ecx, 0x14
idiv ecx
mov esi, edx
call fcn.00565cd7
cdq
mov ecx, 0x14
idiv ecx
mov eax, dword [ebp - 0x8f0]
add esi, 2
add edx, eax
add eax, 0x28
add esi, edx
cmp eax, ecx
jg 0x48cc10
call fcn.00565cd7
cdq
mov ecx, 0x190
idiv ecx
mov eax, 0x1e
cmp edx, 6
cmove esi, eax
mov eax, dword [ebp - 0x8fc]
test eax, eax
je 0x48cfcc
add eax, 0x3c
mov dword [ebp - 0x8dc], eax
cmp dword [eax], 0xd
jne 0x48cfcf
jmp 0x48cfde
mov eax, dword [ebp - 0x8e8]
cmp byte [eax + 0xc], 0
je 0x48ee8a
movd xmm0, dword [edi + 0x10c]
mov ecx, esi
mov eax, dword [edi + 0x180]
push 0
mov dword [ebp - 0x993], eax
mov eax, dword [ebp - 0x8e0]
cvtdq2ps xmm0, xmm0
push 2
mov dword [ebp - 0x98f], eax
lea eax, [ebp - 0x994]
push eax
push 0x15
mov byte [ebp - 0x994], 0x24
cvttss2si eax, xmm0
mov dword [ebp - 0x98b], 0xfffffffe
mov dword [ebp - 0x987], 0xfffffc18
movd xmm0, dword [edi + 0x108]
cvtdq2ps xmm0, xmm0
push eax
cvttss2si eax, xmm0
push eax
push 0
call fcn.00529cd0
mov eax, dword [ebp - 0x8e0]
cmp dword [eax + 0x204], 0
je 0x48ccde
cmp dword [eax + 0x220], 0x18
jne 0x48ccf0
call fcn.00565cd7
cdq
mov ecx, 0xa
idiv ecx
cmp edx, 3
jne 0x48ccf0
mov eax, dword [ebp - 0x8e0]
mov ecx, dword [ebp - 0x904]
mov dword [eax + 0x11c], ecx
mov dword [eax + 0x204], edi
push dword [ebp - 0x8e8]
call fcn.0052b5e0
add esp, 4
mov dword [ebp - 0x908], eax
test eax, eax
jle 0x48cd3b
mov eax, dword [ebp - 0x8e8]
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x8d0], xmm0
movups xmm0, xmmword [eax + 0x10]
movups xmmword [ebp - 0x8c0], xmm0
movups xmm0, xmmword [eax + 0x20]
movups xmmword [ebp - 0x8b0], xmm0
movups xmm0, xmmword [eax + 0x30]
movups xmmword [ebp - 0x8a0], xmm0
jmp 0x48cd55
push dword [ebp - 0x8e0]
mov ecx, edi
push dword [ebp - 0x8e8]
push esi
call fcn.00490d70
mov eax, dword [ebp - 0x8e8]
dec dword [eax + 8]
cmp dword [eax + 8], 0
jg 0x48ee8a
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e4]
add ecx, 4
call fcn.0044e330
mov ecx, eax
mov dword [ebp - 0x948], ecx
test ecx, ecx
je 0x48ce4d
nop dword [eax + eax]
cmp dword [ecx + 0x110], 0xe
jne 0x48ce24
mov eax, dword [ebp - 0x8e8]
cmp eax, dword [ecx + 0x11c]
jne 0x48ce24
imul eax, dword [edi + 0x188], 0x980
push ecx
mov ecx, dword [eax + edi + 0x2e4]
add ecx, 4
call fcn.0044e520
mov ecx, dword [ebp - 0x948]
push 1
mov eax, dword [ecx]
call dword [eax]
movd xmm0, dword [edi + 0x10c]
mov ecx, esi
mov eax, dword [edi + 0x180]
push 0
cvtdq2ps xmm0, xmm0
push 5
mov dword [ebp - 0x927], eax
lea eax, [ebp - 0x928]
push eax
push 5
mov dword [ebp - 0x8e8], 0
cvttss2si eax, xmm0
mov byte [ebp - 0x928], 0x20
movd xmm0, dword [edi + 0x108]
cvtdq2ps xmm0, xmm0
push eax
cvttss2si eax, xmm0
push eax
push 0
call fcn.00529cd0
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e4]
add ecx, 4
call fcn.0044e3e0
mov ecx, eax
mov dword [ebp - 0x948], eax
test ecx, ecx
jne 0x48cd90
imul eax, dword [edi + 0x188], 0x980
mov byte [ebp - 0x978], 0x21
mov ecx, dword [eax + edi + 0x2e4]
add ecx, 4
call fcn.0044e330
test eax, eax
je 0x48ee8a
mov ecx, dword [eax + 0x110]
cmp ecx, 1
jne 0x48cec0
push edi
push eax
lea eax, [ebp - 0x978]
push eax
call fcn.004a24d0
add esp, 0xc
cmp dword [edi + 0x14f14], 0
je 0x48cf57
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x91c]
push edx
push 0
lea edx, [ebp - 0x978]
mov eax, dword [ecx]
push edx
push 0x1d
call dword [eax + 4]
jmp 0x48cf8d
cmp ecx, 0xe
jne 0x48cfa6
mov ecx, dword [eax + 0x11c]
mov dword [ebp - 0x973], eax
mov dword [ebp - 0x977], 0x40800000
mov eax, dword [ecx]
movzx eax, byte [eax + eax*2 + 0x6215d8]
mov byte [ebp - 0x95e], al
mov eax, dword [ecx]
movzx eax, byte [eax + eax*2 + 0x6215d9]
mov byte [ebp - 0x95d], al
mov eax, dword [ecx]
mov byte [ebp - 0x95f], 0x80
movzx eax, byte [eax + eax*2 + 0x6215da]
mov byte [ebp - 0x95c], al
mov eax, dword [edi + 0x180]
mov dword [ebp - 0x96f], eax
xor eax, eax
mov word [ebp - 0x961], ax
cmp dword [ecx], 0xd
je 0x48cfa6
cmp dword [edi + 0x14f14], eax
je 0x48cf57
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x91c]
push edx
push 0
lea edx, [ebp - 0x978]
mov eax, dword [ecx]
push edx
push 0x1d
call dword [eax + 4]
jmp 0x48cf8d
movd xmm0, dword [edi + 0x10c]
lea eax, [ebp - 0x978]
push 0
cvtdq2ps xmm0, xmm0
push 5
push eax
push 0x1d
mov ecx, esi
cvttss2si eax, xmm0
movd xmm0, dword [edi + 0x108]
cvtdq2ps xmm0, xmm0
push eax
cvttss2si eax, xmm0
push eax
push 0
call fcn.00529cd0
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e4]
add ecx, 4
call fcn.0044e3a0
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e4]
add ecx, 4
call fcn.0044e3e0
test eax, eax
jne 0x48ce75
jmp 0x48ee8a
add eax, 0x3c
mov dword [ebp - 0x8dc], eax
cmp esi, 0x14
jle 0x48ee01
mov ecx, edi
call fcn.00487570
movd xmm0, dword [ebp - 0x93c]
mov ecx, edi
cvtdq2ps xmm0, xmm0
mov esi, dword [ebp - 0x8e4]
push esi
movd xmm1, eax
movsx eax, byte [edi + 0x14f04]
cvtdq2ps xmm1, xmm1
mulss xmm1, dword [0x5d32f8]
addss xmm1, dword [0x5cf058]
mulss xmm1, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm1, xmm0
cvttss2si eax, xmm1
mov dword [ebp - 0x8e8], eax
call fcn.00472e40
mov eax, dword [edi + 0x14f30]
mov dword [ebp - 0x90c], 0
test eax, eax
jle 0x48d079
movd xmm0, dword [ebp - 0x8e8]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
cvtdq2ps xmm0, xmm0
mulss xmm1, dword [0x5d32f0]
addss xmm1, dword [0x5cf058]
mulss xmm1, xmm0
cvttss2si eax, xmm1
mov dword [ebp - 0x8e8], eax
cmp dword [ebp - 0x8fc], 0
je 0x48e2eb
mov eax, dword [ebp - 0x8dc]
cmp dword [eax], 3
jne 0x48d144
call fcn.00565cd7
cdq
mov ecx, 0x14
idiv ecx
cmp edx, 3
jne 0x48d0ca
test byte [edi + 0x238], 1
mov ecx, dword [ebp - 0x8e8]
lea ecx, [ecx + ecx*2]
mov dword [ebp - 0x8e8], ecx
je 0x48d13e
push str.With_a_burst_of_strength__you_do_THREE_TIMES_as_much_damage_.
jmp 0x48d0f8
call fcn.00565cd7
cdq
mov ecx, 5
idiv ecx
cmp edx, 2
jne 0x48d13e
mov eax, dword [ebp - 0x8e8]
add eax, eax
test byte [edi + 0x238], 1
mov dword [ebp - 0x8e8], eax
je 0x48d13e
push str.With_a_burst_of_strength__you_do_TWICE_as_much_damage_.
lea eax, [ebp - 0x410]
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0x88b]
push eax
lea eax, [ebp - 0x410]
push 0x400
push eax
call fcn.0044d1c0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x91c]
add esp, 0x18
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0x88c]
push edx
push 0x65
call dword [eax + 4]
mov eax, dword [ebp - 0x8dc]
cmp dword [eax], 4
jne 0x48d23d
call fcn.00565cd7
cdq
mov ecx, 0xa
idiv ecx
cmp edx, 8
jne 0x48d237
movd xmm0, dword [ebp - 0x8e8]
sub esp, 8
mov ecx, dword [ebp - 0x8e0]
cvtdq2ps xmm0, xmm0
mov dword [esp + 4], 0x40000000
mulss xmm0, dword [0x5d33b8]
movss dword [esp], xmm0
push 7
call fcn.00498ae0
imul ecx, dword [ebp - 0x8e8], 0x32
test byte [edi + 0x238], 1
mov dword [ebp - 0x90c], ecx
je 0x48d237
mov esi, dword [edi + 0x188]
cmp eax, 1
mov ecx, dword [ebp - 0x8e0]
mov eax, str.The__s_gets_stunned_by__ss_Claw_
mov edi, str.The__s_resists_stunning_by__ss_Claw_
cmovne edi, eax
call fcn.00498d10
mov edx, dword [ebp - 0x97c]
imul ecx, esi, 0x980
add edx, 0x2a0
add ecx, edx
push ecx
push eax
lea eax, [ebp - 0x410]
push edi
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0x88b]
push eax
lea eax, [ebp - 0x410]
push 0x400
push eax
call fcn.0044d1c0
mov esi, dword [ebp - 0x8e4]
lea edx, [ebp - 0x91c]
add esp, 0x20
mov ecx, dword [esi + 0x11c]
push edx
push 0
lea edx, [ebp - 0x88c]
mov eax, dword [ecx]
push edx
push 0x65
call dword [eax + 4]
mov edi, dword [ebp - 0x97c]
mov eax, dword [ebp - 0x8dc]
cmp dword [eax], 5
jne 0x48d274
call fcn.00565cd7
cdq
mov ecx, 3
idiv ecx
cmp edx, 1
jne 0x48d26e
push dword [ebp - 0x8e0]
mov ecx, edi
push dword [ebp - 0x8e8]
push dword [ebp - 0x8fc]
push esi
call fcn.00480950
mov eax, dword [ebp - 0x8dc]
mov eax, dword [eax]
sub eax, 6
cmp eax, 0x79
ja 0x48d2bf
call fcn.00565cd7
and eax, reloc.WS2_32.dll_accept
jns 0x48d28f
dec eax
or eax, 0xfffffffe
inc eax
cmp eax, 1
mov eax, dword [ebp - 0x8dc]
jne 0x48d2c5
cmp dword [eax], 0xd
je 0x48d2c5
mov eax, dword [ebp - 0x8e8]
mov ecx, edi
push dword [ebp - 0x8e0]
cdq
sub eax, edx
sar eax, 1
push eax
push dword [ebp - 0x8fc]
push esi
call fcn.00480950
mov eax, dword [ebp - 0x8dc]
mov edx, dword [ebp - 0x8fc]
cmp dword [edx + 0x38], 0
jle 0x48e2eb
mov eax, dword [eax]
add eax, 0xfffffffa
cmp eax, 0x79
ja 0x48e2eb
mov ecx, dword [edx + 0x44]
cmp ecx, dword [edx + 0x40]
mov eax, dword [edx + 0x48]
cmovle ecx, dword [edx + 0x40]
cmp eax, ecx
cmovle eax, ecx
mov ecx, dword [edx + 0x4c]
cmp ecx, eax
cmovle ecx, eax
mov eax, dword [edx + 0x50]
cmp eax, ecx
cmovle eax, ecx
mov ecx, dword [edx + 0x54]
cmp ecx, eax
cmovle ecx, eax
mov eax, dword [edx + 0x58]
cmp eax, ecx
cmovle eax, ecx
mov ecx, dword [edx + 0x5c]
cmp ecx, eax
cmovle ecx, eax
mov eax, dword [edx + 0x60]
cmp eax, ecx
cmovle eax, ecx
mov ecx, dword [edx + 0x64]
cmp ecx, eax
cmovle ecx, eax
mov eax, dword [edx + 0x68]
cmp eax, ecx
cmovle eax, ecx
mov ecx, dword [edx + 0x6c]
cmp ecx, eax
cmovle ecx, eax
mov eax, dword [edx + 0x70]
cmp eax, ecx
cmovle eax, ecx
mov ecx, dword [edx + 0x74]
mov edx, dword [edx + 0x78]
cmp ecx, eax
cmovle ecx, eax
cmp edx, ecx
cmovle edx, ecx
xor eax, eax
cmp edx, 0x41
setg al
inc eax
cmp edx, 0x43
lea ecx, [eax + 1]
cmovle ecx, eax
cmp edx, 0x47
lea eax, [ecx + 1]
cmovle eax, ecx
cmp edx, 0x4f
lea ecx, [eax + 1]
cmovle ecx, eax
cmp edx, 0x5f
lea eax, [ecx + 1]
cmovle eax, ecx
lea eax, [eax + eax*4]
add eax, 3
movd xmm1, eax
imul eax, eax, 0x3e8
cvtdq2ps xmm1, xmm1
movss dword [ebp - 0x8f0], xmm1
movd xmm0, eax
mov eax, dword [ebp - 0x8dc]
cvtdq2ps xmm0, xmm0
cmp dword [eax], 7
movss dword [ebp - 0x8f4], xmm0
jne 0x48d3ea
mov ecx, dword [ebp - 0x8e0]
sub esp, 8
movss dword [esp + 4], xmm1
movss dword [esp], xmm0
push 3
call fcn.00498ae0
movss xmm0, dword [ebp - 0x8f4]
movss xmm1, dword [ebp - 0x8f0]
mov eax, dword [ebp - 0x8dc]
jmp 0x48d3f2
movss dword [ebp - 0x8f4], xmm0
cmp dword [eax], 9
jne 0x48d418
mov ecx, dword [ebp - 0x8e0]
sub esp, 8
movss dword [esp + 4], xmm1
movss dword [esp], xmm0
push 4
call fcn.00498ae0
mov eax, dword [ebp - 0x8dc]
cmp dword [eax], 8
jne 0x48d44e
movss xmm0, dword [ebp - 0x8f0]
sub esp, 8
mov ecx, dword [ebp - 0x8e0]
movss dword [esp + 4], xmm0
movss xmm0, dword [ebp - 0x8f4]
movss dword [esp], xmm0
push 2
call fcn.00498ae0
mov eax, dword [ebp - 0x8dc]
cmp dword [eax], 0xa
jne 0x48d484
movss xmm0, dword [ebp - 0x8f0]
sub esp, 8
mov ecx, dword [ebp - 0x8e0]
movss dword [esp + 4], xmm0
movss xmm0, dword [ebp - 0x8f4]
movss dword [esp], xmm0
push 7
call fcn.00498ae0
mov eax, dword [ebp - 0x8dc]
cmp dword [eax], 0xb
jne 0x48d4ba
movss xmm0, dword [ebp - 0x8f0]
sub esp, 8
mov ecx, dword [ebp - 0x8e0]
movss dword [esp + 4], xmm0
movss xmm0, dword [ebp - 0x8f4]
movss dword [esp], xmm0
push 8
call fcn.00498ae0
mov eax, dword [ebp - 0x8dc]
cmp dword [eax], 0xd
jne 0x48e2eb
mov ecx, edi
call fcn.00474b60
cmp eax, 9
jle 0x48e280
mov edx, dword [ebp - 0x8fc]
mov ecx, dword [ebp - 0x8e0]
mov eax, dword [edx + 0x34]
cmp eax, dword [ecx + 0x1bc]
jl 0x48e20a
cmp dword [ecx + 0x238], 4
jge 0x48e20a
mov ecx, edi
call fcn.00481c10
mov ecx, dword [ebp - 0x8e0]
cmp eax, dword [ecx + 0x220]
jg 0x48d578
mov ecx, edi
call fcn.00481c10
mov ecx, dword [ebp - 0x8e0]
cmp eax, dword [ecx + 0x220]
jne 0x48d53b
mov ecx, edi
call fcn.00481b40
mov ecx, dword [ebp - 0x8e0]
inc eax
cmp eax, dword [ecx + 0x224]
jge 0x48d578
mov ecx, edi
call fcn.00481c10
mov ecx, dword [ebp - 0x8e0]
inc eax
cmp eax, dword [ecx + 0x220]
jne 0x48e204
mov ecx, edi
call fcn.00481b40
mov ecx, dword [ebp - 0x8e0]
cmp eax, 5
jne 0x48e204
cmp dword [ecx + 0x224], 0
jne 0x48e204
xorps xmm0, xmm0
comiss xmm0, dword [ecx + 0x15c]
jb 0x48d633
comiss xmm0, dword [ecx + 0x160]
jb 0x48d633
comiss xmm0, dword [ecx + 0x170]
jb 0x48d633
mov eax, dword [ecx + 0x204]
lea edx, [ecx + 0x204]
mov dword [ebp - 0x8f0], edx
test eax, eax
je 0x48d62b
cmp eax, edi
je 0x48d62b
cmp dword [ecx + 0x238], 4
jge 0x48d5cf
mov dword [ecx + 0x238], 0
lea eax, [ebp - 0x410]
push str.Cannot_tame_a_monster_attacking_another_player.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0x88b]
push eax
lea eax, [ebp - 0x410]
push 0x400
push eax
call fcn.0044d1c0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x91c]
add esp, 0x18
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0x88c]
push edx
push 0x65
call dword [eax + 4]
mov eax, dword [ebp - 0x8fc]
mov ecx, dword [ebp - 0x8e0]
inc dword [eax + 0x38]
jmp 0x48d699
inc dword [ecx + 0x238]
jmp 0x48d699
lea eax, [ebp - 0x410]
push str.Cant_tame_a_monster_that_is_blinded__slowed__or_stunned.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0x88b]
push eax
lea eax, [ebp - 0x410]
push 0x400
push eax
call fcn.0044d1c0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x91c]
add esp, 0x18
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0x88c]
push edx
push 0x65
call dword [eax + 4]
mov eax, dword [ebp - 0x8fc]
mov ecx, dword [ebp - 0x8e0]
inc dword [eax + 0x38]
lea eax, [ecx + 0x204]
mov dword [ebp - 0x8f0], eax
cmp dword [ecx + 0x238], 3
jle 0x48e280
mov eax, dword [edi + 0x14f48]
test eax, eax
je 0x48dae9
lea ecx, [ebp - 0x410]
add eax, 0x184
push ecx
push str.___s____n_
push eax
call fcn.0043dd00
lea eax, [ebp - 0x410]
push eax
lea eax, [ebp - 0x810]
push str.Stabled__s
push eax
call fcn.0043d370
imul eax, dword [edi + 0x188], 0x980
add esp, 0x18
mov ecx, dword [eax + edi + 0x2d8]
add ecx, 4
call fcn.0044e330
mov esi, eax
xor al, al
mov byte [ebp - 0x8fd], al
test esi, esi
je 0x48d88d
cmp dword [esi + 0x110], 0x15
jne 0x48d85e
lea ecx, [esi + 8]
lea eax, [ebp - 0x810]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x48d747
test dl, dl
je 0x48d743
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x48d747
add eax, 2
add ecx, 2
test dl, dl
jne 0x48d727
xor eax, eax
jmp 0x48d74c
sbb eax, eax
or eax, 1
test eax, eax
jne 0x48d85e
mov ecx, dword [esi + 0x11c]
mov edx, dword [edi + 0x14f48]
mov eax, dword [ecx]
cmp eax, dword [edx + 0x220]
jne 0x48d85e
mov eax, dword [ecx + 4]
cmp eax, dword [edx + 0x224]
jne 0x48d85e
mov eax, dword [ecx + 0x14]
mov byte [ebp - 0x8fd], 1
cmp eax, dword [edx + 0x1bc]
jge 0x48d845
movzx eax, byte [edx + 0x1a7]
mov byte [ecx + 0x27], al
mov eax, dword [edi + 0x14f48]
movzx eax, byte [eax + 0x1a4]
mov byte [ecx + 0x24], al
mov eax, dword [edi + 0x14f48]
movzx eax, byte [eax + 0x1a5]
mov byte [ecx + 0x25], al
mov eax, dword [edi + 0x14f48]
movzx eax, byte [eax + 0x1a6]
mov byte [ecx + 0x26], al
mov eax, dword [edi + 0x14f48]
mov eax, dword [eax + 0x1b4]
mov dword [ecx + 0x10], eax
mov eax, dword [edi + 0x14f48]
mov eax, dword [eax + 0x1bc]
mov dword [ecx + 0x14], eax
mov eax, dword [edi + 0x14f48]
mov eax, dword [eax + 0x234]
mov dword [ecx + 0x1c], eax
mov eax, dword [edi + 0x14f48]
mov eax, dword [eax + 0x1b0]
mov dword [ecx + 0xc], eax
mov eax, dword [edi + 0x14f48]
mov eax, dword [eax + 0x1f4]
mov dword [ecx + 0x20], eax
mov eax, dword [edi + 0x14f48]
mov eax, dword [eax + 0x1b0]
mov dword [ecx + 8], eax
mov eax, dword [edi + 0x14f48]
mov eax, dword [eax + 0x1a8]
mov dword [ecx + 0x28], eax
mov eax, dword [edi + 0x14f48]
mov eax, dword [eax + 0x1b8]
mov dword [ecx + 0x18], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2d8]
add ecx, 4
call fcn.0044e3a0
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2d8]
add ecx, 4
call fcn.0044e3e0
mov esi, eax
test esi, esi
jne 0x48d711
cmp byte [ebp - 0x8fd], al
jne 0x48d9ef
lea eax, [ebp - 0x810]
push eax
lea eax, [ebp - 0x410]
push 0x5ce428
push eax
call fcn.0043d370
push 0x120
call fcn.00556676
add esp, 0x10
mov dword [ebp - 0x9a8], eax
mov byte [ebp - 4], 2
test eax, eax
je 0x48d8d6
lea ecx, [ebp - 0x410]
push ecx
push 0
push 0x15
mov ecx, eax
call fcn.0050b040
mov edx, eax
jmp 0x48d8d8
xor edx, edx
mov ecx, dword [edx + 0x11c]
mov dword [edx + 0x108], 0
mov dword [edx + 0x10c], 0x447a0000
mov dword [edx + 0x118], 1
mov eax, dword [edi + 0x14f48]
push edx
mov byte [ebp - 4], 0
movzx eax, byte [eax + 0x1a7]
mov byte [ecx + 0x27], al
mov eax, dword [edi + 0x14f48]
movzx eax, byte [eax + 0x1a6]
mov byte [ecx + 0x26], al
mov eax, dword [edi + 0x14f48]
movzx eax, byte [eax + 0x1a5]
mov byte [ecx + 0x25], al
mov eax, dword [edi + 0x14f48]
movzx eax, byte [eax + 0x1a4]
mov byte [ecx + 0x24], al
mov eax, dword [edi + 0x14f48]
mov eax, dword [eax + 0x1b4]
mov dword [ecx + 0x10], eax
mov eax, dword [edi + 0x14f48]
mov eax, dword [eax + 0x1bc]
mov dword [ecx + 0x14], eax
mov eax, dword [edi + 0x14f48]
mov eax, dword [eax + 0x234]
mov dword [ecx + 0x1c], eax
mov eax, dword [edi + 0x14f48]
mov eax, dword [eax + 0x1b0]
mov dword [ecx + 0xc], eax
mov eax, dword [edi + 0x14f48]
mov eax, dword [eax + 0x1f4]
mov dword [ecx + 0x20], eax
mov eax, dword [edi + 0x14f48]
mov eax, dword [eax + 0x1b0]
mov dword [ecx + 8], eax
mov eax, dword [edi + 0x14f48]
mov eax, dword [eax + 0x1a8]
mov dword [ecx + 0x28], eax
mov eax, dword [edi + 0x14f48]
mov eax, dword [eax + 0x224]
mov dword [ecx + 4], eax
mov eax, dword [edi + 0x14f48]
mov eax, dword [eax + 0x1b8]
mov dword [ecx + 0x18], eax
mov eax, dword [edi + 0x14f48]
mov eax, dword [eax + 0x220]
mov dword [ecx], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2d8]
add ecx, 4
call fcn.0044e440
mov eax, dword [edi + 0x14f48]
mov dword [eax + 0x23c], 0
mov eax, dword [edi + 0x14f48]
mov dword [eax + 0x240], 0
mov eax, dword [edi + 0x14f48]
mov dword [eax + 0x244], 0
mov eax, dword [edi + 0x14f48]
mov dword [eax + 0x248], 0
mov eax, dword [edi + 0x14f48]
mov dword [eax + 0x24c], 0
mov eax, dword [edi + 0x14f48]
mov dword [eax + 0x250], 0
mov eax, dword [edi + 0x14f48]
mov dword [eax + 0x254], 0
mov eax, dword [edi + 0x14f48]
mov dword [eax + 0x258], 0
mov eax, dword [edi + 0x14f48]
mov dword [eax + 0x25c], 0
mov eax, dword [edi + 0x14f48]
mov dword [eax + 0x260], 0
mov eax, dword [edi + 0x14f48]
mov dword [eax + 0x1c0], 0
mov eax, dword [edi + 0x14f48]
mov dword [eax + 0x1ac], 0
mov eax, dword [edi + 0x14f48]
mov dword [eax + 0x220], 0x19
mov eax, dword [edi + 0x14f48]
mov dword [eax + 0x124], 1
mov eax, dword [edi + 0x14f48]
mov dword [eax + 0x21c], 0
mov dword [edi + 0x14f48], 0
mov ecx, edi
call fcn.00481c10
mov esi, dword [ebp - 0x8e0]
inc eax
cmp dword [esi + 0x220], eax
jg 0x48de91
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e0]
add ecx, 4
call fcn.0044e330
mov ecx, dword [ebp - 0x8f0]
mov dword [ebp - 0x8f4], eax
test eax, eax
je 0x48de97
mov ecx, eax
call fcn.0044ccd0
mov ecx, 0x5d13c8
nop dword [eax]
mov dl, byte [ecx]
cmp dl, byte [eax]
jne 0x48db60
test dl, dl
je 0x48db5c
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x48db60
add ecx, 2
add eax, 2
test dl, dl
jne 0x48db40
xor eax, eax
jmp 0x48db65
sbb eax, eax
or eax, 1
test eax, eax
jne 0x48de5c
mov esi, dword [ebp - 0x8f4]
mov ecx, edi
mov esi, dword [esi + 0x11c]
mov dword [ebp - 0x8f4], esi
call fcn.00481c10
mov ecx, dword [ebp - 0x8e0]
cmp dword [ecx + 0x220], eax
jne 0x48dbb1
mov ecx, edi
call fcn.00481b40
mov ecx, dword [ebp - 0x8e0]
inc eax
cmp eax, dword [ecx + 0x224]
jne 0x48dbb1
add dword [esi], 1
adc dword [esi + 4], 0
mov ecx, edi
call fcn.00481c10
mov ecx, edi
mov dword [ebp - 0x8f0], 0x5d13d0
lea esi, [eax + eax*2]
add esi, esi
call fcn.00481b40
mov ecx, dword [ebp - 0x8f0]
add eax, esi
imul eax, eax, 0x64
add eax, str.Whight
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x48dc00
test dl, dl
je 0x48dbfc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x48dc00
add eax, 2
add ecx, 2
test dl, dl
jne 0x48dbe0
xor eax, eax
jmp 0x48dc05
sbb eax, eax
or eax, 1
test eax, eax
jne 0x48dc16
mov eax, dword [ebp - 0x8f4]
add dword [eax], 1
adc dword [eax + 4], 0
mov ecx, edi
call fcn.00481c10
mov ecx, edi
mov dword [ebp - 0x8f0], 0x5d13d8
lea esi, [eax + eax*2]
add esi, esi
call fcn.00481b40
mov ecx, dword [ebp - 0x8f0]
add eax, esi
imul eax, eax, 0x64
add eax, str.Whight
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x48dc63
test dl, dl
je 0x48dc5f
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x48dc63
add eax, 2
add ecx, 2
test dl, dl
jne 0x48dc43
xor eax, eax
jmp 0x48dc68
sbb eax, eax
or eax, 1
test eax, eax
jne 0x48dc79
mov eax, dword [ebp - 0x8f4]
add dword [eax], 1
adc dword [eax + 4], 0
mov ecx, edi
call fcn.00481c10
mov ecx, edi
mov dword [ebp - 0x8f0], 0x5d13e4
lea esi, [eax + eax*2]
add esi, esi
call fcn.00481b40
mov ecx, dword [ebp - 0x8f0]
add eax, esi
imul eax, eax, 0x64
add eax, str.Whight
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x48dcc6
test dl, dl
je 0x48dcc2
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x48dcc6
add eax, 2
add ecx, 2
test dl, dl
jne 0x48dca6
xor eax, eax
jmp 0x48dccb
sbb eax, eax
or eax, 1
test eax, eax
jne 0x48dcdc
mov eax, dword [ebp - 0x8f4]
add dword [eax], 1
adc dword [eax + 4], 0
mov ecx, edi
call fcn.00481c10
mov ecx, edi
mov dword [ebp - 0x8f0], 0x5d13ec
lea esi, [eax + eax*2]
add esi, esi
call fcn.00481b40
mov ecx, dword [ebp - 0x8f0]
add eax, esi
imul eax, eax, 0x64
add eax, str.Whight
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x48dd30
test dl, dl
je 0x48dd2c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x48dd30
add eax, 2
add ecx, 2
test dl, dl
jne 0x48dd10
xor eax, eax
jmp 0x48dd35
sbb eax, eax
or eax, 1
test eax, eax
jne 0x48dd46
mov eax, dword [ebp - 0x8f4]
add dword [eax], 1
adc dword [eax + 4], 0
mov ecx, edi
call fcn.00481b40
cmp eax, 5
jge 0x48dd88
mov ecx, edi
call fcn.00481c10
mov ecx, edi
lea esi, [eax + eax*2]
add esi, esi
call fcn.00481b40
add eax, esi
mov esi, dword [ebp - 0x8f4]
imul eax, eax, 0x64
cmp byte [eax + str.Whight], 0
jne 0x48dd8e
mov dword [esi], 5
mov dword [esi + 4], 0
jmp 0x48dd8e
mov esi, dword [ebp - 0x8f4]
mov ecx, edi
call fcn.00481c10
mov ecx, dword [ebp - 0x8e0]
inc eax
cmp dword [ecx + 0x220], eax
jne 0x48ddab
add dword [esi], 1
adc dword [esi + 4], 0
cmp dword [esi + 4], 0
ja 0x48ddb6
cmp dword [esi], 5
jbe 0x48de1c
add dword [esi + 8], 1
lea eax, [ebp - 0x410]
push str.You_gained_Taming_skill__
adc dword [esi + 0xc], 0
push eax
mov dword [esi], 0
mov dword [esi + 4], 0
call fcn.0043d370
push 0x64
lea eax, [ebp - 0x88b]
push eax
lea eax, [ebp - 0x410]
push 0x400
push eax
call fcn.0044d1c0
mov eax, dword [ebp - 0x8e4]
lea edx, [ebp - 0x91c]
add esp, 0x18
mov ecx, dword [eax + 0x11c]
push edx
push 0
lea edx, [ebp - 0x88c]
mov eax, dword [ecx]
push edx
push 0x65
call dword [eax + 4]
mov ecx, edi
call fcn.00481b40
cmp eax, 5
jge 0x48de5c
mov ecx, edi
call fcn.00481c10
mov ecx, edi
lea esi, [eax + eax*2]
add esi, esi
call fcn.00481b40
add eax, esi
imul eax, eax, 0x64
cmp byte [eax + str.Whight], 0
jne 0x48de5c
mov eax, dword [ebp - 0x8f4]
mov dword [eax], 5
mov dword [eax + 4], 0
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e0]
add ecx, 4
call fcn.0044e3e0
mov dword [ebp - 0x8f4], eax
test eax, eax
jne 0x48db30
mov esi, dword [ebp - 0x8e0]
lea ecx, [esi + 0x204]
jmp 0x48de97
mov ecx, dword [ebp - 0x8f0]
mov dword [edi + 0x14ea0], 0
mov dword [ecx], 0
mov dword [esi + 0x214], 0
mov dword [edi + 0x14f48], esi
mov dword [esi + 0x21c], edi
mov edx, dword [edi + 0x14f48]
mov eax, dword [edx + 0x220]
lea ecx, [eax + eax*2]
mov eax, dword [edx + 0x224]
lea eax, [eax + ecx*2]
imul eax, eax, 0x64
add eax, str.Ghost
push eax
imul eax, dword [edi + 0x188], 0x980
add eax, 0x2a0
add eax, edi
push eax
lea eax, [ebp - 0x410]
push str._ss__s
push eax
call fcn.0043d370
mov eax, dword [edi + 0x14f48]
push 0x1f
add eax, 0x184
push eax
lea eax, [ebp - 0x410]
push 0x400
push eax
call fcn.0044d1c0
mov esi, dword [edi + 0x14f48]
add esp, 0x20
mov edx, dword [esi + 0x218]
test edx, edx
je 0x48df55
cmp dword [edx + 4], 0
jne 0x48ef74
mov eax, dword [esi + 0x220]
add eax, 0xb
lea ecx, [eax + eax*2]
mov eax, dword [esi + 0x224]
lea eax, [eax + ecx*2]
dec dword [edx + eax*4]
mov eax, dword [edi + 0x14f48]
mov dword [eax + 0x218], 0
mov eax, dword [edi + 0x14f48]
cmp dword [eax + 0x220], 0x10
jne 0x48dfed
cmp dword [eax + 0x224], 1
jne 0x48dfed
cmp byte [eax + 0x1dd], 0
jne 0x48dfed
push 0x1dc
call fcn.00556676
add esp, 4
mov dword [ebp - 0x9ac], eax
mov byte [ebp - 4], 3
test eax, eax
je 0x48dfcc
mov ecx, dword [edi + 0x14f48]
push dword [ecx + 0x22c]
push dword [ecx + 0x228]
push dword [ecx + 0x224]
push dword [ecx + 0x220]
mov ecx, eax
call fcn.00496fc0
jmp 0x48dfce
xor eax, eax
mov esi, dword [ebp - 0x8e4]
mov byte [eax + 0x190], 0
push eax
mov byte [ebp - 4], 0
mov ecx, dword [esi + 0x118]
call fcn.00513530
jmp 0x48dff3
mov esi, dword [ebp - 0x8e4]
mov eax, dword [edi + 0x14f48]
cmp dword [eax + 0x220], 0xb
jne 0x48e06f
cmp dword [eax + 0x224], 1
jne 0x48e06f
cmp byte [eax + 0x1dd], 0
jne 0x48e06f
push 0x1dc
call fcn.00556676
add esp, 4
mov dword [ebp - 0x9b0], eax
mov byte [ebp - 4], 4
test eax, eax
je 0x48e056
mov ecx, dword [edi + 0x14f48]
push dword [ecx + 0x22c]
push dword [ecx + 0x228]
push dword [ecx + 0x224]
push dword [ecx + 0x220]
mov ecx, eax
call fcn.00496fc0
jmp 0x48e058
xor eax, eax
mov byte [eax + 0x190], 0
mov ecx, dword [esi + 0x118]
push eax
mov byte [ebp - 4], 0
call fcn.00513530
mov eax, dword [edi + 0x14f48]
cmp dword [eax + 0x220], 0x1b
jne 0x48e107
cmp byte [eax + 0x1dd], 0
jne 0x48e107
push 0x1dc
call fcn.00556676
add esp, 4
mov dword [ebp - 0x9b4], eax
mov byte [ebp - 4], 5
test eax, eax
je 0x48e0d1
mov ecx, dword [edi + 0x14f48]
push dword [ecx + 0x22c]
push dword [ecx + 0x228]
push dword [ecx + 0x224]
push dword [ecx + 0x220]
mov ecx, eax
call fcn.00496fc0
jmp 0x48e0d3
xor eax, eax
mov dword [ebp - 0x8f0], eax
mov byte [ebp - 4], 0
call dword [sym.imp.WINMM.dll_timeGetTime]
mov ecx, dword [ebp - 0x8f0]
add eax, 0xdbba00
push ecx
mov dword [ecx + 0x194], eax
mov byte [ecx + 0x190], 0
mov ecx, dword [esi + 0x118]
call fcn.00513530
mov eax, dword [edi + 0x14f48]
cmp dword [eax + 0x220], 0x1e
jne 0x48e183
cmp dword [eax + 0x224], 1
jle 0x48e183
cmp byte [eax + 0x1dd], 0
jne 0x48e183
push 0x1dc
call fcn.00556676
add esp, 4
mov dword [ebp - 0x9b8], eax
mov byte [ebp - 4], 6
test eax, eax
je 0x48e16a
mov ecx, dword [edi + 0x14f48]
push dword [ecx + 0x22c]
push dword [ecx + 0x228]
push dword [ecx + 0x224]
push dword [ecx + 0x220]
mov ecx, eax
call fcn.00496fc0
jmp 0x48e16c
xor eax, eax
mov byte [eax + 0x190], 0
mov ecx, dword [esi + 0x118]
push eax
mov byte [ebp - 4], 0
call fcn.00513530
mov eax, dword [edi + 0x14f48]
cmp dword [eax + 0x1b4], 4
jge 0x48e19c
mov dword [eax + 0x1b4], 4
mov eax, dword [edi + 0x14f48]
mov dword [eax + 0x234], 1
mov eax, dword [edi + 0x14f48]
mov dword [edi + 0x184], 1
cmp dword [eax + 0x220], 0x15
jne 0x48e1cf
mov dword [eax + 0x1d8], 0
mov eax, dword [edi + 0x14f48]
push esi
mov dword [eax + 0x234], 1
mov ecx, dword [edi + 0x14f48]
call fcn.004974c0
mov eax, dword [edi + 0x14f48]
mov ecx, edi
mov byte [eax + 0x1dd], 1
call fcn.0048b4f0
jmp 0x48e280
mov edx, dword [ebp - 0x8fc]
cmp dword [ecx + 0x238], 3
jle 0x48e21a
mov edx, str.This_monster_is_untamable.
jmp 0x48e230
mov eax, dword [edx + 0x34]
mov edx, str.You_have_insufficient_Gold_Dusts_to_tame_this_monster.
cmp eax, dword [ecx + 0x1bc]
mov eax, str.Your_Taming_skill_is_too_low_to_tame_this_monster.
cmovge edx, eax
push edx
lea eax, [ebp - 0x410]
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0x88b]
push eax
lea eax, [ebp - 0x410]
push 0x400
push eax
call fcn.0044d1c0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x91c]
add esp, 0x18
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0x88c]
push edx
push 0x65
call dword [eax + 4]
mov eax, dword [ebp - 0x8fc]
inc dword [eax + 0x38]
mov eax, dword [ebp - 0x8dc]
cmp dword [eax], 0xd
jne 0x48e2eb
mov ecx, edi
call fcn.00474b60
cmp eax, 0xa
jge 0x48e2eb
lea eax, [ebp - 0x410]
push str.You_arent_a_Beastmaster__dont_try_to_use_this.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0x88b]
push eax
lea eax, [ebp - 0x410]
push 0x400
push eax
call fcn.0044d1c0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x91c]
add esp, 0x18
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0x88c]
push edx
push 0x65
call dword [eax + 4]
mov eax, dword [ebp - 0x8fc]
inc dword [eax + 0x38]
mov al, byte [edi + 0x14f0e]
test al, al
jle 0x48e367
movsx ecx, al
mov eax, 0x66666667
imul ecx, dword [ebp - 0x8e8]
imul ecx
imul ecx, dword [edi + 0x188], 0x980
sar edx, 4
mov esi, edx
shr esi, 0x1f
add esi, edx
mov eax, dword [ecx + edi + 0x2f8]
cdq
and edx, 3
add eax, edx
mov edx, dword [ebp - 0x8e8]
sar eax, 2
cmp esi, eax
cmovle eax, esi
add dword [ecx + edi + 0x2fc], eax
add edx, eax
imul eax, dword [edi + 0x188], 0x980
mov dword [ebp - 0x8e8], edx
mov ecx, dword [eax + edi + 0x2f8]
cmp dword [eax + edi + 0x2fc], ecx
jle 0x48e36d
mov dword [eax + edi + 0x2fc], ecx
jmp 0x48e36d
mov edx, dword [ebp - 0x8e8]
mov esi, dword [ebp - 0x8fc]
test esi, esi
je 0x48e3e3
mov eax, dword [ebp - 0x8dc]
mov ecx, edi
push dword [eax]
call fcn.00481990
imul ecx, dword [edi + 0x188], 0x980
imul eax, dword [ecx + edi + 0x2e8]
cdq
sub eax, edx
mov edx, dword [ebp - 0x8e8]
sar eax, 1
add edx, eax
mov eax, dword [ebp - 0x8dc]
mov dword [ebp - 0x8e8], edx
cmp dword [eax], 0xd
jne 0x48e3e3
cmp edx, 1
jle 0x48e3e3
mov esi, dword [ebp - 0x8e0]
mov ecx, esi
push edi
push 1
mov dword [ebp - 0x8e8], 1
dec dword [esi + 0x1ac]
call fcn.00499620
mov esi, dword [ebp - 0x8fc]
jmp 0x48e3fe
mov ecx, dword [ebp - 0x8e0]
push edi
push edx
sub dword [ecx + 0x1ac], edx
call fcn.00499620
test esi, esi
je 0x48e792
mov eax, dword [ebp - 0x8dc]
mov ecx, 1
mov edx, dword [eax]
cmp edx, 1
mov eax, 0x15
cmovne eax, ecx
mov ecx, dword [esi + 0x34]
sub ecx, eax
mov eax, dword [ebp - 0x8fc]
add ecx, dword [esi + 0x2c]
add ecx, dword [esi + 0x28]
add ecx, dword [esi + 0x24]
add ecx, dword [esi + 0x20]
mov esi, dword [esi + 4]
add esi, ecx
mov ecx, dword [eax + 0x38]
cmp ecx, 0x3f5ad
jge 0x48e441
inc ecx
mov dword [eax + 0x38], ecx
cmp ecx, 0x55f0
jle 0x48e45f
cmp esi, 5
jl 0x48e453
cmp dword [eax], 0x48
jge 0x48e45f
mov dword [eax + 0x38], 0x55f0
mov ecx, 0x55f0
lea eax, [edx - 6]
cmp eax, 0x79
ja 0x48e48b
mov edi, dword [ebp - 0x8fc]
lea eax, [ecx - 1]
lea ecx, [eax - 1]
mov dword [edi + 0x38], ecx
mov edi, dword [ebp - 0x97c]
test ecx, ecx
jns 0x48e48b
mov ecx, dword [ebp - 0x8fc]
mov dword [ecx + 0x38], eax
mov ecx, eax
cmp edx, 6
jge 0x48e633
mov eax, dword [ebp - 0x8fc]
cmp edx, 2
jne 0x48e4a4
cmp dword [eax], 0x65
jg 0x48e4ad
cmp dword [eax], 0x47
jle 0x48e633
cmp esi, 4
jle 0x48e633
xor esi, esi
cmp ecx, 0x55f0
jle 0x48e4e4
lea eax, [ecx - 0x55f0]
cdq
idiv dword [ebp - 0x910]
mov eax, 1
test edx, edx
cmove esi, eax
cmp ecx, 0x1adb0
jne 0x48e4ed
lea esi, [eax + 2]
jmp 0x48e504
jne 0x48e4ed
mov esi, 2
jmp 0x48e504
cmp ecx, 0x3f5ac
jne 0x48e4fc
mov esi, 0xa
jmp 0x48e504
test esi, esi
je 0x48e633
push 0x198
call fcn.00556676
add esp, 4
mov dword [ebp - 0x938], eax
mov byte [ebp - 4], 7
test eax, eax
je 0x48e530
mov ecx, eax
call fcn.00495b10
mov ecx, eax
mov dword [ebp - 0x8f0], eax
jmp 0x48e538
xor ecx, ecx
mov dword [ebp - 0x8f0], ecx
lea eax, [esi + esi*4]
mov dword [ecx + 0x180], 4
mov esi, dword [ebp - 0x8e4]
shl eax, 2
mov dword [ecx + 0x184], eax
mov dword [ecx + 0x188], 0x14
mov dword [ecx + 0x18c], 0x3c
mov dword [ecx + 0x190], 0x80
mov eax, dword [edi + 0x108]
mov dword [ecx + 0x108], eax
mov eax, dword [edi + 0x10c]
mov dword [ecx + 0x10c], eax
mov dword [ecx + 0x194], 0x190
push ecx
mov ecx, dword [esi + 0x118]
mov byte [ebp - 4], 0
call fcn.00513530
mov ecx, dword [ebp - 0x8f0]
mov dword [ebp - 0x81f], ecx
mov byte [ebp - 0x820], 0x53
push 0
movzx eax, byte [ecx + 0x180]
mov byte [ebp - 0x81b], al
mov eax, dword [ecx + 0x184]
mov dword [ebp - 0x815], eax
movzx eax, byte [ecx + 0x108]
mov byte [ebp - 0x817], al
movzx eax, byte [ecx + 0x10c]
mov byte [ebp - 0x816], al
movzx eax, byte [ecx + 0x188]
mov byte [ebp - 0x81a], al
movzx eax, byte [ecx + 0x18c]
mov byte [ebp - 0x819], al
movzx eax, byte [ecx + 0x190]
mov ecx, esi
push 5
mov byte [ebp - 0x818], al
lea eax, [ebp - 0x820]
push eax
push 0xf
push dword [edi + 0x10c]
push dword [edi + 0x108]
push 0
call fcn.00529cd0
mov ecx, dword [ebp - 0x8dc]
cmp dword [ecx], 0xd
je 0x48e78a
cmp dword [ebp - 0x944], 0
jle 0x48e78a
mov eax, dword [ebp - 0x8fc]
mov esi, dword [eax + 0x78]
add esi, dword [eax + 0x74]
add esi, dword [eax + 0x70]
add esi, dword [eax + 0x6c]
add esi, dword [eax + 0x68]
add esi, dword [eax + 0x64]
add esi, dword [eax + 0x60]
add esi, dword [eax + 0x5c]
add esi, dword [eax + 0x58]
add esi, dword [eax + 0x54]
add esi, dword [eax + 0x50]
add esi, dword [eax + 0x4c]
add esi, dword [eax + 0x48]
add esi, dword [eax + 0x44]
add esi, dword [eax + 0x40]
mov eax, 0x60
cmp esi, 0x60
cmovg esi, eax
call fcn.00565cd7
cdq
mov ecx, 0x90
idiv ecx
cmp edx, esi
jge 0x48e784
mov ecx, dword [ebp - 0x944]
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
mov dword [ebp - 0x944], eax
je 0x48e792
movd xmm0, dword [ebp - 0x90c]
sub esp, 8
mov esi, dword [ebp - 0x8e0]
movd xmm1, ecx
mov ecx, esi
cvtdq2ps xmm1, xmm1
mov dword [esp + 4], 0x3f800000
cvtdq2ps xmm0, xmm0
mulss xmm1, dword [0x5d33c0]
addss xmm1, xmm0
movss dword [esp], xmm1
push 7
call fcn.00498ae0
mov ecx, eax
mov eax, dword [ebp - 0x944]
sub dword [esi + 0x1ac], eax
test byte [edi + 0x238], 1
je 0x48e792
cmp ecx, 1
mov eax, str.The__s_gets_shocked_by__d_lightning_damage_and_is_stunned.
mov ecx, dword [ebp - 0x8e0]
mov esi, str.The__s_gets_shocked_by__d_lightning_damage_but_resisted_the_stunning_effect.
cmovne esi, eax
call fcn.00498d10
push dword [ebp - 0x944]
push eax
lea eax, [ebp - 0x410]
push esi
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0x88b]
push eax
lea eax, [ebp - 0x410]
push 0x400
push eax
call fcn.0044d1c0
mov esi, dword [ebp - 0x8e4]
lea edx, [ebp - 0x91c]
add esp, 0x20
mov ecx, dword [esi + 0x11c]
push edx
push 0
lea edx, [ebp - 0x88c]
mov eax, dword [ecx]
push edx
push 0x65
call dword [eax + 4]
jmp 0x48e798
mov ecx, dword [ebp - 0x8dc]
mov esi, dword [ebp - 0x8e4]
jmp 0x48e79e
mov esi, dword [ebp - 0x8e4]
mov ecx, dword [ebp - 0x8dc]
mov eax, dword [ebp - 0x8e0]
cmp dword [eax + 0x1ac], 0
jg 0x48e96f
cmp dword [ebp - 0x8fc], 0
je 0x48e7d0
mov ecx, dword [ecx]
cmp ecx, 5
jle 0x48e7d0
cmp ecx, 0x80
jge 0x48e7d0
mov byte [eax + 0x1f8], 1
mov eax, dword [edi + 0x180]
mov ecx, esi
movd xmm0, dword [edi + 0x10c]
mov dword [ebp - 0x993], eax
mov eax, dword [ebp - 0x8e0]
push 0
mov dword [ebp - 0x98f], eax
mov eax, dword [ebp - 0x8e8]
cvtdq2ps xmm0, xmm0
push 2
mov dword [ebp - 0x98b], eax
lea eax, [ebp - 0x994]
push eax
push 0x15
mov byte [ebp - 0x994], 0x24
cvttss2si eax, xmm0
mov dword [ebp - 0x987], 0xfffffc18
movd xmm0, dword [edi + 0x108]
cvtdq2ps xmm0, xmm0
push eax
cvttss2si eax, xmm0
push eax
push 0
call fcn.00529cd0
mov ecx, dword [ebp - 0x8e0]
movss xmm0, dword [ecx + 0x17c]
comiss xmm0, dword [0x5cf054]
mov dword [ecx + 0x124], 1
mov dword [ecx + 0x208], edi
jbe 0x48e8da
call fcn.00498d10
push eax
lea eax, [ebp - 0x410]
push str.Loot_falls_from_the_sky_onto_the__ss_corpse_
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0x88b]
push eax
lea eax, [ebp - 0x410]
push 0x400
push eax
call fcn.0044d1c0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x91c]
add esp, 0x1c
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0x88c]
push edx
push 0x65
call dword [eax + 4]
mov ecx, dword [ebp - 0x8e0]
movd xmm0, dword [ecx + 0x1c0]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x5d3318]
cvttss2si eax, xmm0
mov dword [ecx + 0x1c0], eax
call fcn.00498a70
mov eax, dword [ebp - 0x8e0]
mov ecx, dword [eax + 0x218]
test ecx, ecx
je 0x48e951
call fcn.0044ccc0
cmp eax, 1
jne 0x48e94b
mov ecx, dword [esi + 0x118]
lea eax, [ebp - 0x970]
push eax
call fcn.00513670
mov edx, dword [ebp - 0x8e0]
push 0xfffffffffffffff6
push 0xfffffffffffffff6
push 1
mov ecx, dword [edx + 0x218]
push edx
mov eax, dword [ecx]
call dword [eax + 0x1c]
movups xmm0, xmmword [ebp - 0x970]
mov eax, dword [ebp - 0x960]
sub esp, 0x14
mov ecx, esp
movups xmmword [ecx], xmm0
mov dword [ecx + 0x10], eax
mov ecx, dword [esi + 0x118]
call fcn.00513850
jmp 0x48ee8a
mov eax, dword [ebp - 0x8e0]
mov ecx, dword [eax + 0x218]
test ecx, ecx
je 0x48ee8a
call fcn.0044ccc0
cmp eax, 2
jne 0x48ee8a
jmp 0x48e8f9
cmp dword [eax + 0x204], 0
je 0x48e999
cmp dword [eax + 0x220], 0x18
jne 0x48e9ab
call fcn.00565cd7
cdq
mov ecx, 0xa
idiv ecx
mov eax, dword [ebp - 0x8e0]
cmp edx, 3
jne 0x48e9ab
mov ecx, dword [ebp - 0x904]
mov dword [eax + 0x11c], ecx
mov dword [eax + 0x204], edi
mov ecx, dword [eax + 0x218]
test ecx, ecx
je 0x48e9c5
call fcn.0044ccc0
cmp eax, 1
je 0x48e9d9
mov eax, dword [ebp - 0x8e0]
mov ecx, dword [eax + 0x218]
test ecx, ecx
je 0x48ea26
call fcn.0044ccc0
cmp eax, 2
jne 0x48ea26
mov ecx, dword [esi + 0x118]
lea eax, [ebp - 0x970]
push eax
call fcn.00513670
mov edx, dword [ebp - 0x8e0]
push 0xfffffffffffffff6
push 0xfffffffffffffff6
push 0
mov ecx, dword [edx + 0x218]
push edx
mov eax, dword [ecx]
call dword [eax + 0x1c]
movups xmm0, xmmword [ebp - 0x970]
mov eax, dword [ebp - 0x960]
sub esp, 0x14
mov ecx, esp
movups xmmword [ecx], xmm0
mov dword [ecx + 0x10], eax
mov ecx, dword [esi + 0x118]
call fcn.00513850
imul ecx, dword [edi + 0x188], 0x980
mov eax, dword [edi + 0x180]
movd xmm0, dword [edi + 0x10c]
mov dword [ebp - 0x993], eax
mov eax, dword [ebp - 0x8e0]
mov dword [ebp - 0x98f], eax
mov eax, dword [ebp - 0x8e8]
mov dword [ebp - 0x98b], eax
push 0
mov byte [ebp - 0x994], 0x24
mov eax, dword [ecx + edi + 0x2fc]
mov dword [ebp - 0x987], eax
mov eax, dword [ecx + edi + 0x2f8]
mov ecx, esi
cvtdq2ps xmm0, xmm0
push 2
mov dword [ebp - 0x983], eax
lea eax, [ebp - 0x994]
push eax
push 0x15
cvttss2si eax, xmm0
movd xmm0, dword [edi + 0x108]
cvtdq2ps xmm0, xmm0
push eax
cvttss2si eax, xmm0
push eax
push 0
call fcn.00529cd0
mov ecx, dword [ebp - 0x8e0]
movd xmm0, dword [edi + 0x10c]
push 0
cvtdq2ps xmm0, xmm0
mov eax, dword [ecx + 0x1ac]
mov dword [ebp - 0x953], eax
mov eax, dword [ecx + 0x1b0]
push 2
mov dword [ebp - 0x94f], eax
lea eax, [ebp - 0x958]
push eax
cvttss2si eax, xmm0
push 0xd
mov dword [ebp - 0x957], ecx
mov ecx, esi
mov byte [ebp - 0x958], 0x27
movd xmm0, dword [edi + 0x108]
cvtdq2ps xmm0, xmm0
push eax
cvttss2si eax, xmm0
push eax
push 0
call fcn.00529cd0
cmp dword [ebp - 0x8fc], 0
je 0x48ebf7
mov eax, dword [ebp - 0x8dc]
cmp dword [eax], 0xd
je 0x48ebf7
cmp dword [ebp - 0x998], 0
jle 0x48ebf7
call fcn.00565cd7
cdq
mov ecx, 0x14
idiv ecx
mov eax, dword [ebp - 0x8e0]
mov ecx, dword [ebp - 0x998]
add edx, ecx
sub edx, dword [eax + 0x1bc]
cmp edx, 0xa
jle 0x48ebf7
movd xmm0, ecx
sub esp, 8
cvtdq2ps xmm0, xmm0
mov ecx, eax
movss dword [esp + 4], xmm0
mulss xmm0, dword [0x5d0a98]
movss dword [esp], xmm0
push 2
call fcn.00498ae0
test byte [edi + 0x238], 1
je 0x48ebf7
mov ecx, dword [ebp - 0x8e0]
cmp eax, 1
mov eax, str.The__s_is_Slowed.
mov esi, str.The__s_resisted_the_slowing_effect.
cmovne esi, eax
call fcn.00498d10
push eax
lea eax, [ebp - 0x410]
push esi
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0x88b]
push eax
lea eax, [ebp - 0x410]
push 0x400
push eax
call fcn.0044d1c0
mov esi, dword [ebp - 0x8e4]
lea edx, [ebp - 0x91c]
add esp, 0x1c
mov ecx, dword [esi + 0x11c]
push edx
push 0
lea edx, [ebp - 0x88c]
mov eax, dword [ecx]
push edx
push 0x65
call dword [eax + 4]
cmp dword [ebp - 0x99c], 0
jle 0x48ec4c
call fcn.00565cd7
cdq
mov ecx, 0x14
idiv ecx
mov eax, dword [ebp - 0x8e0]
mov ecx, dword [ebp - 0x99c]
add edx, ecx
sub edx, dword [eax + 0x1bc]
cmp edx, 0xa
jle 0x48ec52
movd xmm0, ecx
sub esp, 8
cvtdq2ps xmm0, xmm0
mov ecx, eax
movss dword [esp + 4], xmm0
mulss xmm0, dword [0x5d0a98]
movss dword [esp], xmm0
push 0xa
call fcn.00498ae0
mov eax, dword [ebp - 0x8e0]
mov ecx, dword [ebp - 0x9a0]
test ecx, ecx
jle 0x48ed0d
movd xmm0, ecx
sub esp, 8
cvtdq2ps xmm0, xmm0
mov ecx, eax
movss dword [esp + 4], xmm0
mulss xmm0, dword [0x5d0a98]
movss dword [esp], xmm0
push 9
call fcn.00498ae0
mov ecx, dword [ebp - 0x9a0]
mov eax, 0x66666667
imul ecx, ecx
push edi
imul ecx
mov ecx, dword [ebp - 0x8e0]
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
push eax
call fcn.00499620
test byte [edi + 0x238], 1
je 0x48ed0d
mov ecx, dword [ebp - 0x8e0]
call fcn.00498d10
push eax
lea eax, [ebp - 0x410]
push str.The__s_is_more_vulnerable_to_other_dusts.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0x88b]
push eax
lea eax, [ebp - 0x410]
push 0x400
push eax
call fcn.0044d1c0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x91c]
add esp, 0x1c
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0x88c]
push edx
push 0x65
call dword [eax + 4]
cmp dword [ebp - 0x8fc], 0
je 0x48ee8a
mov eax, dword [ebp - 0x8dc]
cmp dword [eax], 0xd
je 0x48ee8a
cmp dword [ebp - 0x948], 0
jle 0x48ee8a
call fcn.00565cd7
cdq
mov ecx, 0x14
idiv ecx
mov eax, dword [ebp - 0x8e0]
mov ecx, dword [ebp - 0x948]
add edx, ecx
sub edx, dword [eax + 0x1bc]
cmp edx, 0xa
jle 0x48ee8a
movd xmm0, ecx
sub esp, 8
cvtdq2ps xmm0, xmm0
mov ecx, eax
movss dword [esp + 4], xmm0
mulss xmm0, dword [0x5d0a98]
movss dword [esp], xmm0
push 3
call fcn.00498ae0
test byte [edi + 0x238], 1
je 0x48ee8a
mov ecx, dword [ebp - 0x8e0]
cmp eax, 1
mov eax, str.The__s_is_Blinded.
mov esi, str.The__s_resisted_the_blinding_effect.
cmovne esi, eax
call fcn.00498d10
push eax
lea eax, [ebp - 0x410]
push esi
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0x88b]
push eax
lea eax, [ebp - 0x410]
push 0x400
push eax
call fcn.0044d1c0
mov esi, dword [ebp - 0x8e4]
lea edx, [ebp - 0x91c]
add esp, 0x1c
mov ecx, dword [esi + 0x11c]
push edx
push 0
lea edx, [ebp - 0x88c]
mov eax, dword [ecx]
push edx
push 0x65
call dword [eax + 4]
jmp 0x48ee8a
imul ecx, dword [edi + 0x188], 0x980
mov eax, dword [edi + 0x180]
movd xmm0, dword [edi + 0x10c]
mov dword [ebp - 0x993], eax
mov eax, dword [ebp - 0x8e0]
mov dword [ebp - 0x98f], eax
mov esi, dword [ebp - 0x8e4]
push 0
mov byte [ebp - 0x994], 0x24
mov dword [ebp - 0x98b], 0xffffffff
mov eax, dword [ecx + edi + 0x2fc]
mov dword [ebp - 0x987], eax
mov eax, dword [ecx + edi + 0x2f8]
mov ecx, esi
cvtdq2ps xmm0, xmm0
push 2
mov dword [ebp - 0x983], eax
lea eax, [ebp - 0x994]
push eax
push 0x15
cvttss2si eax, xmm0
movd xmm0, dword [edi + 0x108]
cvtdq2ps xmm0, xmm0
push eax
cvttss2si eax, xmm0
push eax
push 0
call fcn.00529cd0
mov ecx, dword [esi + 0x118]
call fcn.005135f0
mov dword [ebp - 0x8e0], eax
test eax, eax
jne 0x48c8f0
mov eax, dword [ebp - 0x908]
cmp dword [ebp - 0x8c8], 0xfffffffd
je 0x48ef41
mov ecx, dword [esi + 0x118]
push eax
push dword [edi + 0x10c]
push dword [edi + 0x108]
call fcn.00513550
mov dword [ebp - 0x90c], eax
test eax, eax
je 0x48ef41
mov ecx, eax
call fcn.0044ccc0
cmp eax, 1
jne 0x48ef2c
mov ecx, dword [ebp - 0x90c]
mov eax, dword [edi + 0x108]
sub eax, dword [ecx + 0x108]
cdq
xor eax, edx
sub eax, edx
cmp eax, dword [ebp - 0x908]
jg 0x48ef2c
mov eax, dword [edi + 0x10c]
sub eax, dword [ecx + 0x10c]
cdq
xor eax, edx
sub eax, edx
cmp eax, dword [ebp - 0x908]
jg 0x48ef2c
push ecx
lea eax, [ebp - 0x8d0]
mov ecx, edi
push eax
push esi
call fcn.00490d70
mov ecx, dword [esi + 0x118]
call fcn.005135f0
mov dword [ebp - 0x90c], eax
test eax, eax
jne 0x48eed8
cmp dword [ebp - 0x920], 0
movss xmm1, dword [ebp - 0x8ec]
jne 0x48efef
mov dword [edi + 0x14ea0], 0
jmp 0x48efef
mov dword [edi + 0x14ea0], 0
jmp 0x48eea3
cmp dword [esi + 0x1b4], 4
jge 0x48ef87
mov dword [esi + 0x1b4], 4
mov eax, dword [edi + 0x14f48]
mov dword [eax + 0x234], 1
mov eax, dword [edi + 0x14f48]
mov dword [eax + 0x218], 0
mov eax, dword [edi + 0x14f48]
cmp dword [eax + 0x220], 0x15
jne 0x48efc0
mov dword [eax + 0x1d8], 0
mov ecx, edi
call fcn.0048b4f0
mov dword [edi + 0x14f18], 1
jmp 0x490c3d
mov eax, dword [ebp - 0x910]
mov dword [ebp - 0x908], eax
jmp 0x48eea9
movss xmm1, dword [ebp - 0x8ec]
movss xmm0, dword [edi + 0x15c]
mulss xmm0, dword [0x5d33bc]
addss xmm0, xmm1
movss xmm1, dword [ebp - 0x8f8]
comiss xmm1, xmm0
jbe 0x48f035
mov eax, dword [edi + 0x14ea4]
test eax, eax
je 0x48f035
cmp byte [edi + 0x14f91], 0
je 0x48f035
cmp byte [eax + 0x14f91], 0
je 0x48f035
push eax
push esi
mov ecx, edi
call fcn.00473880
mov edx, dword [ebp - 0x904]
xor ecx, ecx
mov dword [ebp - 0x920], 0
mov dword [ebp - 0x93c], ecx
nop dword [eax]
imul eax, dword [edi + 0x188], 0x980
lea esi, [ecx + 0x334]
add eax, edi
add esi, eax
mov eax, edx
mov dword [ebp - 0x8dc], esi
mov ecx, dword [esi + 0x1c]
sub eax, ecx
test ecx, ecx
je 0x48f079
cmp edx, ecx
jae 0x48f07e
mov eax, 0xbb9
cmp byte [esi + 0x10], 0xff
je 0x48f767
cmp eax, 0xbb8
jbe 0x48f767
cmp dword [edi + 0x14ea0], 0
je 0x48f767
mov eax, dword [ebp - 0x940]
test eax, eax
je 0x48f0c9
push edi
mov ecx, eax
call fcn.004ee140
test eax, eax
je 0x48f0c9
mov eax, dword [edi + 0x14ea0]
cmp byte [eax + 0x1df], 0
je 0x48f761
call fcn.00565cd7
cdq
mov ecx, 0xc8
idiv ecx
mov eax, dword [ebp - 0x904]
sub eax, edx
mov dword [ebp - 0x8f8], 0
mov dword [esi + 0x1c], eax
mov eax, dword [ebp - 0x8e4]
push 0
push dword [edi + 0x10c]
push dword [edi + 0x108]
mov ecx, dword [eax + 0x118]
call fcn.00513550
mov ecx, eax
mov dword [ebp - 0x8e8], ecx
test ecx, ecx
je 0x48f761
nop word [eax + eax]
cmp dword [ebp - 0x8f8], 0
jne 0x48f761
cmp dword [ecx + 0x124], 0
jne 0x48f740
cmp ecx, dword [edi + 0x14ea0]
jne 0x48f740
mov eax, dword [ecx + 0x108]
cmp eax, dword [edi + 0x108]
jne 0x48f740
mov eax, dword [ecx + 0x10c]
cmp eax, dword [edi + 0x10c]
jne 0x48f740
call fcn.0044ccc0
cmp eax, 1
jne 0x48f740
movzx edx, byte [esi + 0x11]
movzx esi, byte [esi + 0x13]
mov dword [ebp - 0x8f8], eax
inc esi
mov eax, dword [ebp - 0x8dc]
lea ecx, [edx*8]
mov byte [ebp - 0x8fd], 0
sub ecx, edx
movd xmm0, esi
movzx eax, byte [eax + 0x10]
add ecx, eax
lea eax, [edx + 1]
imul eax, esi
cvtdq2ps xmm0, xmm0
lea ecx, [ecx + ecx*8]
shl ecx, 4
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov eax, dword [ebp - 0x8dc]
mulss xmm0, dword [eax + 0x20]
mulss xmm1, dword [ecx + 0x60d538]
divss xmm1, dword [0x5cfe68]
addss xmm1, xmm0
cvttss2si eax, xmm1
mov dword [ebp - 0x8ec], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e0]
add ecx, 4
call fcn.0044e330
mov esi, eax
test esi, esi
je 0x48f452
nop dword [eax]
cmp byte [ebp - 0x8fd], 0
jne 0x48f452
mov ecx, esi
call fcn.0044ccd0
mov ecx, str.Drake_Mastery
nop dword [eax]
mov dl, byte [ecx]
cmp dl, byte [eax]
jne 0x48f250
test dl, dl
je 0x48f24c
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x48f250
add ecx, 2
add eax, 2
test dl, dl
jne 0x48f230
xor eax, eax
jmp 0x48f255
sbb eax, eax
or eax, 1
test eax, eax
jne 0x48f42f
mov eax, dword [0x62aadc]
mov esi, dword [esi + 0x11c]
mov byte [ebp - 0x8fd], 1
mov eax, dword [eax + 0xac]
cdq
add eax, dword [esi]
mov ecx, edx
mov dword [ebp - 0x90c], eax
adc ecx, dword [esi + 4]
mov dword [esi], eax
mov eax, dword [esi + 0xc]
mov dword [ebp - 0x910], ecx
mov dword [esi + 4], ecx
test eax, eax
ja 0x48f410
jb 0x48f2a5
cmp dword [esi + 8], 0x64
jae 0x48f410
mov ecx, 0x186a0
mul ecx
mov edx, 0x186a0
mov ecx, eax
mov eax, dword [esi + 8]
mul edx
add ecx, edx
cmp ecx, dword [ebp - 0x910]
ja 0x48f410
jb 0x48f2d4
cmp eax, dword [ebp - 0x90c]
ja 0x48f410
mov dword [ebp - 0x930], 0
mov dword [ebp - 0x92c], 0
mov dword [ebp - 0x928], 0
mov ecx, dword [edi + 0x180]
mov eax, ecx
sar eax, 8
mov byte [ebp - 0x937], al
mov eax, ecx
sar eax, 0x10
mov byte [ebp - 0x938], cl
mov byte [ebp - 0x936], al
lea eax, [ebp - 0x938]
sar ecx, 0x18
push eax
mov byte [ebp - 0x935], cl
lea ecx, [ebp - 0x930]
push 0
mov byte [ebp - 4], 8
mov byte [ebp - 0x934], 0
call fcn.0043eb20
add dword [esi + 8], 1
lea eax, [ebp - 0x410]
push str.You_gained_Drake_Mastery_skill___You_feel_more_in_tune_with_your_drakes.
adc dword [esi + 0xc], 0
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0x88b]
push eax
lea eax, [ebp - 0x410]
push 0x400
push eax
call fcn.0044d1c0
mov eax, dword [ebp - 0x8e4]
lea edx, [ebp - 0x930]
add esp, 0x18
mov ecx, dword [eax + 0x11c]
push edx
push 0
lea edx, [ebp - 0x88c]
mov eax, dword [ecx]
push edx
push 0x65
call dword [eax + 4]
mov eax, dword [ebp - 0x930]
mov byte [ebp - 4], 0
mov dword [ebp - 0x910], eax
test eax, eax
je 0x48f410
mov ecx, dword [ebp - 0x928]
sub ecx, eax
mov eax, 0x66666667
imul ecx
mov ecx, dword [ebp - 0x910]
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
lea edx, [eax + eax*4]
mov eax, ecx
cmp edx, 0x1000
jb 0x48f3e8
mov ecx, dword [eax - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x490c65
push edx
push ecx
call fcn.005566a6
add esp, 8
mov dword [ebp - 0x930], 0
mov dword [ebp - 0x92c], 0
mov dword [ebp - 0x928], 0
mov ecx, edi
call fcn.00485990
push dword [esi + 0xc]
cdq
push dword [esi + 8]
push edx
push eax
call fcn.00557850
shrd eax, edx, 1
add dword [ebp - 0x8ec], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e0]
add ecx, 4
call fcn.0044e3e0
mov esi, eax
test esi, esi
jne 0x48f210
mov esi, dword [ebp - 0x8e8]
mov ecx, dword [ebp - 0x8ec]
push edi
push ecx
sub dword [esi + 0x1ac], ecx
mov ecx, esi
call fcn.00499620
cmp dword [esi + 0x204], 0
je 0x48f491
cmp dword [esi + 0x220], 0x18
jne 0x48f4a3
call fcn.00565cd7
cdq
mov ecx, 0xa
idiv ecx
cmp edx, 3
jne 0x48f4a3
mov eax, dword [ebp - 0x904]
mov dword [esi + 0x11c], eax
mov dword [esi + 0x204], edi
mov eax, dword [ebp - 0x8dc]
movzx edx, byte [eax + 0x10]
mov dword [ebp - 0x90c], edx
cmp edx, 6
jne 0x48f4cb
call fcn.00565cd7
cdq
mov ecx, 6
idiv ecx
mov dword [ebp - 0x90c], edx
mov eax, dword [edi + 0x180]
movd xmm0, dword [edi + 0x10c]
mov dword [ebp - 0x823], eax
mov eax, dword [ebp - 0x8ec]
push 0
mov ecx, dword [ebp - 0x8e4]
mov dword [ebp - 0x819], eax
mov eax, dword [ebp - 0x920]
cvtdq2ps xmm0, xmm0
push 2
mov byte [ebp - 0x81b], al
lea eax, [ebp - 0x824]
push eax
push 0x13
mov byte [ebp - 0x824], 0x3d
cvttss2si eax, xmm0
mov dword [ebp - 0x81f], esi
mov byte [ebp - 0x81a], dl
mov dword [ebp - 0x815], 0
movd xmm0, dword [edi + 0x108]
cvtdq2ps xmm0, xmm0
push eax
cvttss2si eax, xmm0
push eax
push 0
call fcn.00529cd0
movd xmm0, dword [edi + 0x10c]
mov eax, dword [esi + 0x1ac]
push 0
mov ecx, dword [ebp - 0x8e4]
mov dword [ebp - 0x953], eax
mov eax, dword [esi + 0x1b0]
cvtdq2ps xmm0, xmm0
push 2
mov dword [ebp - 0x94f], eax
lea eax, [ebp - 0x958]
push eax
push 0xd
mov byte [ebp - 0x958], 0x27
cvttss2si eax, xmm0
mov dword [ebp - 0x957], esi
movd xmm0, dword [edi + 0x108]
cvtdq2ps xmm0, xmm0
push eax
cvttss2si eax, xmm0
push eax
push 0
call fcn.00529cd0
mov ecx, dword [esi + 0x218]
test ecx, ecx
je 0x48f5b9
call fcn.0044ccc0
cmp eax, 1
je 0x48f5cd
mov ecx, dword [esi + 0x218]
test ecx, ecx
je 0x48f620
call fcn.0044ccc0
cmp eax, 2
jne 0x48f620
lea eax, [ebp - 0x970]
push eax
mov eax, dword [ebp - 0x8e4]
mov ecx, dword [eax + 0x118]
call fcn.00513670
mov ecx, dword [esi + 0x218]
push 0xfffffffffffffff6
push 0xfffffffffffffff6
push 0
mov eax, dword [ecx]
push esi
call dword [eax + 0x1c]
movups xmm0, xmmword [ebp - 0x970]
mov eax, dword [ebp - 0x960]
sub esp, 0x14
mov ecx, esp
movups xmmword [ecx], xmm0
mov dword [ecx + 0x10], eax
mov eax, dword [ebp - 0x8e4]
mov ecx, dword [eax + 0x118]
call fcn.00513850
cmp dword [esi + 0x1ac], 0
jg 0x48f815
mov ecx, esi
mov dword [esi + 0x124], 1
mov dword [esi + 0x208], edi
call fcn.00498a70
movss xmm0, dword [esi + 0x17c]
comiss xmm0, dword [0x5cf054]
jbe 0x48f6cb
mov ecx, esi
call fcn.00498d10
push eax
lea eax, [ebp - 0x410]
push str.Loot_falls_from_the_sky_onto_the__ss_corpse_
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0x88b]
push eax
lea eax, [ebp - 0x410]
push 0x400
push eax
call fcn.0044d1c0
mov eax, dword [ebp - 0x8e4]
lea edx, [ebp - 0x91c]
add esp, 0x1c
mov ecx, dword [eax + 0x11c]
push edx
push 0
lea edx, [ebp - 0x88c]
mov eax, dword [ecx]
push edx
push 0x65
call dword [eax + 4]
movd xmm0, dword [esi + 0x1c0]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x5d3318]
cvttss2si eax, xmm0
mov dword [esi + 0x1c0], eax
mov ecx, dword [esi + 0x218]
test ecx, ecx
je 0x48f7f4
call fcn.0044ccc0
cmp eax, 1
jne 0x48f7f4
lea eax, [ebp - 0x970]
push eax
mov eax, dword [ebp - 0x8e4]
mov ecx, dword [eax + 0x118]
call fcn.00513670
mov ecx, dword [esi + 0x218]
push 0xfffffffffffffff6
push 0xfffffffffffffff6
push 1
mov eax, dword [ecx]
push esi
call dword [eax + 0x1c]
movups xmm0, xmmword [ebp - 0x970]
mov eax, dword [ebp - 0x960]
sub esp, 0x14
mov ecx, esp
movups xmmword [ecx], xmm0
mov dword [ecx + 0x10], eax
mov eax, dword [ebp - 0x8e4]
mov ecx, dword [eax + 0x118]
call fcn.00513850
mov esi, dword [ebp - 0x8dc]
mov eax, dword [ebp - 0x8e4]
mov ecx, dword [eax + 0x118]
call fcn.005135f0
mov ecx, eax
mov dword [ebp - 0x8e8], eax
test ecx, ecx
jne 0x48f120
mov edx, dword [ebp - 0x904]
mov ecx, dword [ebp - 0x93c]
inc dword [ebp - 0x920]
add ecx, 0x34
mov dword [ebp - 0x93c], ecx
cmp ecx, 0x68
jl 0x48f050
mov eax, dword [edi + 0x244]
mov ecx, edx
sub ecx, eax
test eax, eax
je 0x48fe63
cmp edx, eax
jb 0x48fe63
mov esi, dword [ebp - 0x8e4]
cmp ecx, 0x493e0
jbe 0x48fe7b
mov ecx, esi
mov dword [edi + 0x244], edx
call fcn.0044ccc0
imul ecx, dword [edi + 0x188], 0x980
test eax, eax
je 0x48fdef
mov eax, dword [ecx + edi + 0x310]
mov dword [ecx + edi + 0x308], eax
imul ecx, dword [edi + 0x188], 0x980
mov eax, dword [ecx + edi + 0x314]
jmp 0x48fe0c
mov ecx, dword [esi + 0x218]
test ecx, ecx
je 0x48f73a
call fcn.0044ccc0
cmp eax, 2
jne 0x48f73a
jmp 0x48f6e7
mov eax, dword [ebp - 0x90c]
cmp eax, 1
jne 0x48f89b
mov esi, dword [ebp - 0x8dc]
imul edx, dword [edi + 0x188], 0x980
movzx ecx, byte [esi + 0x13]
movzx eax, byte [esi + 0x11]
inc ecx
inc eax
imul eax, ecx
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
shr eax, 1
mulss xmm0, dword [esi + 0x20]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
addss xmm1, xmm0
movd xmm0, dword [edx + edi + 0x2fc]
cvtdq2ps xmm0, xmm0
addss xmm1, xmm0
cvttss2si eax, xmm1
mov dword [edx + edi + 0x2fc], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2f8]
cmp dword [eax + edi + 0x2fc], ecx
jle 0x48f740
mov dword [eax + edi + 0x2fc], ecx
jmp 0x48f740
cmp eax, 2
jne 0x48f9a7
mov edx, dword [ebp - 0x8dc]
movzx ecx, byte [edx + 0x13]
movzx eax, byte [edx + 0x11]
inc ecx
inc eax
imul eax, ecx
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
movd xmm1, eax
mulss xmm0, dword [edx + 0x20]
cvtdq2ps xmm1, xmm1
addss xmm1, xmm0
cvttss2si esi, xmm1
call fcn.00565cd7
cdq
mov ecx, 0x14
idiv ecx
mov eax, dword [ebp - 0x8e8]
sub esi, dword [eax + 0x1bc]
add esi, edx
cmp esi, 0xa
jle 0x48f73a
mov eax, dword [ebp - 0x8dc]
movzx ecx, byte [eax + 0x13]
movzx eax, byte [eax + 0x11]
inc ecx
inc eax
imul ecx, eax
sub esp, 8
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
movss dword [esp + 4], xmm0
mulss xmm0, dword [0x5d33c8]
mov esi, dword [ebp - 0x8e8]
mov ecx, esi
movss dword [esp], xmm0
push 2
call fcn.00498ae0
test byte [edi + 0x238], 1
je 0x48f73a
mov ecx, esi
call fcn.00498d10
mov esi, dword [ebp - 0x8dc]
push eax
push esi
lea eax, [ebp - 0x410]
push str._s_slows_the__s.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0x88b]
push eax
lea eax, [ebp - 0x410]
push 0x400
push eax
call fcn.0044d1c0
mov eax, dword [ebp - 0x8e4]
lea edx, [ebp - 0x91c]
add esp, 0x20
mov ecx, dword [eax + 0x11c]
push edx
push 0
lea edx, [ebp - 0x88c]
mov eax, dword [ecx]
push edx
push 0x65
call dword [eax + 4]
jmp 0x48f740
cmp eax, 4
jne 0x48fad9
mov edx, dword [ebp - 0x8dc]
movzx ecx, byte [edx + 0x13]
movzx eax, byte [edx + 0x11]
inc ecx
inc eax
imul eax, ecx
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
movd xmm1, eax
mulss xmm0, dword [edx + 0x20]
cvtdq2ps xmm1, xmm1
addss xmm1, xmm0
cvttss2si esi, xmm1
call fcn.00565cd7
cdq
mov ecx, 0x14
idiv ecx
mov eax, dword [ebp - 0x8e8]
sub esi, dword [eax + 0x1bc]
add esi, edx
cmp esi, 0xa
jle 0x48f73a
mov eax, dword [ebp - 0x8dc]
sub esp, 8
mov esi, dword [ebp - 0x8e8]
movzx ecx, byte [eax + 0x13]
movzx eax, byte [eax + 0x11]
inc ecx
inc eax
imul ecx, eax
movd xmm0, ecx
mov ecx, esi
cvtdq2ps xmm0, xmm0
movss dword [esp + 4], xmm0
mulss xmm0, dword [0x5d33c8]
movss dword [esp], xmm0
push 4
call fcn.00498ae0
mov eax, dword [ebp - 0x8dc]
push edi
movzx ecx, byte [eax + 0x13]
movzx eax, byte [eax + 0x11]
inc ecx
inc eax
imul ecx, eax
mov eax, 0xcccccccd
mul ecx
mov ecx, esi
shr edx, 4
push edx
call fcn.00499620
test byte [edi + 0x238], 1
je 0x48f73a
mov ecx, esi
call fcn.00498d10
mov esi, dword [ebp - 0x8dc]
push eax
push esi
lea eax, [ebp - 0x410]
push str._s_poisons_the__s.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0x88b]
push eax
lea eax, [ebp - 0x410]
push 0x400
push eax
call fcn.0044d1c0
mov eax, dword [ebp - 0x8e4]
lea edx, [ebp - 0x91c]
add esp, 0x20
mov ecx, dword [eax + 0x11c]
push edx
push 0
lea edx, [ebp - 0x88c]
mov eax, dword [ecx]
push edx
push 0x65
call dword [eax + 4]
jmp 0x48f740
cmp eax, 3
jne 0x48fbe5
mov edx, dword [ebp - 0x8dc]
movzx ecx, byte [edx + 0x13]
movzx eax, byte [edx + 0x11]
inc ecx
inc eax
imul eax, ecx
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
movd xmm1, eax
mulss xmm0, dword [edx + 0x20]
cvtdq2ps xmm1, xmm1
addss xmm1, xmm0
cvttss2si esi, xmm1
call fcn.00565cd7
cdq
mov ecx, 0x14
idiv ecx
mov eax, dword [ebp - 0x8e8]
sub edx, dword [eax + 0x1bc]
add edx, esi
cmp edx, 0xa
jle 0x48f73a
mov eax, dword [ebp - 0x8dc]
sub esp, 8
mov esi, dword [ebp - 0x8e8]
movzx ecx, byte [eax + 0x13]
movzx eax, byte [eax + 0x11]
inc ecx
inc eax
imul ecx, eax
movd xmm0, ecx
mov ecx, esi
cvtdq2ps xmm0, xmm0
movss dword [esp + 4], xmm0
mulss xmm0, dword [0x5d33c8]
movss dword [esp], xmm0
push 3
call fcn.00498ae0
test byte [edi + 0x238], 1
je 0x48f73a
mov ecx, esi
call fcn.00498d10
mov esi, dword [ebp - 0x8dc]
push eax
push esi
lea eax, [ebp - 0x410]
push str._s_blinds_the__s.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0x88b]
push eax
lea eax, [ebp - 0x410]
push 0x400
push eax
call fcn.0044d1c0
mov eax, dword [ebp - 0x8e4]
lea edx, [ebp - 0x91c]
add esp, 0x20
mov ecx, dword [eax + 0x11c]
push edx
push 0
lea edx, [ebp - 0x88c]
mov eax, dword [ecx]
push edx
push 0x65
call dword [eax + 4]
jmp 0x48f740
mov esi, dword [ebp - 0x8dc]
cmp eax, 5
jne 0x48f740
movzx ecx, byte [esi + 0x13]
movzx eax, byte [esi + 0x11]
inc ecx
imul edx, dword [edi + 0x188], 0x980
inc eax
imul eax, ecx
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
shr eax, 1
mulss xmm0, dword [esi + 0x20]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
addss xmm1, xmm0
movd xmm0, dword [edx + edi + 0x2fc]
cvtdq2ps xmm0, xmm0
addss xmm1, xmm0
cvttss2si eax, xmm1
mov dword [edx + edi + 0x2fc], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2f8]
cmp dword [eax + edi + 0x2fc], ecx
jle 0x48fc60
mov dword [eax + edi + 0x2fc], ecx
movzx ecx, byte [esi + 0x13]
movzx eax, byte [esi + 0x11]
inc ecx
inc eax
imul eax, ecx
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
movd xmm1, eax
mulss xmm0, dword [esi + 0x20]
cvtdq2ps xmm1, xmm1
addss xmm1, xmm0
cvttss2si esi, xmm1
call fcn.00565cd7
cdq
mov ecx, 0x14
idiv ecx
mov eax, dword [ebp - 0x8e8]
sub esi, dword [eax + 0x1bc]
add esi, edx
cmp esi, 0xa
jle 0x48fd60
mov eax, dword [ebp - 0x8dc]
sub esp, 8
mov esi, dword [ebp - 0x8e8]
movzx edx, byte [eax + 0x13]
movzx ecx, byte [eax + 0x11]
inc ecx
lea eax, [edx + 1]
imul eax, ecx
movd xmm0, eax
lea eax, [edx + 1]
imul eax, ecx
mov ecx, esi
cvtdq2ps xmm0, xmm0
imul eax, eax, 0x7d0
movss dword [esp + 4], xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [esp], xmm0
push 3
call fcn.00498ae0
test byte [edi + 0x238], 1
je 0x48fd60
mov ecx, esi
call fcn.00498d10
push eax
push dword [ebp - 0x8dc]
lea eax, [ebp - 0x410]
push str._s_blinds_the__s.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0x88b]
push eax
lea eax, [ebp - 0x410]
push 0x400
push eax
call fcn.0044d1c0
mov eax, dword [ebp - 0x8e4]
lea edx, [ebp - 0x91c]
add esp, 0x20
mov ecx, dword [eax + 0x11c]
push edx
push 0
lea edx, [ebp - 0x88c]
mov eax, dword [ecx]
push edx
push 0x65
call dword [eax + 4]
mov edx, dword [ebp - 0x8dc]
movzx ecx, byte [edx + 0x13]
movzx eax, byte [edx + 0x11]
inc ecx
inc eax
imul eax, ecx
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
movd xmm1, eax
mulss xmm0, dword [edx + 0x20]
cvtdq2ps xmm1, xmm1
addss xmm1, xmm0
cvttss2si esi, xmm1
call fcn.00565cd7
cdq
mov ecx, 0x14
idiv ecx
mov eax, dword [ebp - 0x8e8]
sub esi, dword [eax + 0x1bc]
add esi, edx
cmp esi, 0xa
jle 0x48f73a
mov eax, dword [ebp - 0x8dc]
sub esp, 8
movzx edx, byte [eax + 0x13]
movzx ecx, byte [eax + 0x11]
inc ecx
lea eax, [edx + 1]
imul eax, ecx
movd xmm0, eax
lea eax, [edx + 1]
imul eax, ecx
cvtdq2ps xmm0, xmm0
imul eax, eax, 0x7d0
movss dword [esp + 4], xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
jmp 0x48f921
mov eax, dword [edi + 0x108]
mov dword [ecx + edi + 0x308], eax
imul ecx, dword [edi + 0x188], 0x980
mov eax, dword [edi + 0x10c]
mov dword [ecx + edi + 0x30c], eax
imul eax, dword [edi + 0x188], 0x980
inc dword [eax + edi + 0x31c]
inc dword [edi + 0x258]
cmp dword [edi + 0x14f54], 0
jne 0x48fe43
cmp byte [edi + 0x14f90], 0
je 0x48fe43
mov ecx, edi
call fcn.0048b4f0
push esi
mov ecx, edi
call fcn.00482630
push esi
mov ecx, edi
call fcn.00486760
push esi
mov ecx, edi
call fcn.0048b140
inc dword [edi + 0x14f28]
jmp 0x48fe75
call dword [sym.imp.WINMM.dll_timeGetTime]
mov esi, dword [ebp - 0x8e4]
mov dword [edi + 0x244], eax
mov edx, dword [ebp - 0x904]
cmp dword [edi + 0x14f3c], 0xffffffff
jle 0x48fee2
mov eax, edx
sub eax, dword [edi + 0x14f40]
cmp eax, 0x2710
jbe 0x48fee2
mov eax, dword [edi + 0x180]
mov ecx, esi
push 0
push 5
mov dword [ebp - 0x92b], eax
lea eax, [ebp - 0x92c]
push eax
push 8
push dword [edi + 0x10c]
mov dword [edi + 0x14f3c], 0xffffffff
push dword [edi + 0x108]
mov byte [ebp - 0x92c], 0x39
push 0
mov word [ebp - 0x926], 0
mov byte [ebp - 0x927], 0
call fcn.00529cd0
mov edx, dword [ebp - 0x904]
mov ecx, edx
mov eax, dword [edi + 0x248]
sub ecx, eax
test eax, eax
je 0x48ff06
cmp edx, eax
jb 0x48ff06
cmp ecx, 0x1388
jbe 0x4900f2
imul ecx, dword [edi + 0x188], 0x980
cmp dword [edi + 0x14ea0], 0
movd xmm1, dword [ecx + edi + 0x2f8]
cvtdq2ps xmm1, xmm1
je 0x48ff49
movsx eax, byte [edi + 0x14f08]
mulss xmm1, dword [0x5d32fc]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x5d3300]
minss xmm1, xmm0
jmp 0x48ff51
divss xmm1, dword [0x5d338c]
addss xmm1, dword [0x5d3308]
mov dword [edi + 0x248], edx
movd xmm0, dword [ecx + edi + 0x2fc]
cvtdq2ps xmm0, xmm0
addss xmm1, xmm0
cvttss2si eax, xmm1
mov dword [ecx + edi + 0x2fc], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2f8]
cmp dword [eax + edi + 0x2fc], ecx
jle 0x48ff9b
mov dword [eax + edi + 0x2fc], ecx
imul ecx, dword [edi + 0x188], 0x980
lea edx, [ebp - 0x91c]
mov byte [ebp - 0x958], 0x26
push edx
push 0
lea edx, [ebp - 0x958]
push edx
push 0xd
mov eax, dword [ecx + edi + 0x2fc]
mov dword [ebp - 0x953], eax
mov eax, dword [ecx + edi + 0x2f8]
mov ecx, dword [esi + 0x11c]
mov dword [ebp - 0x94f], eax
mov eax, dword [edi + 0x180]
mov dword [ebp - 0x957], eax
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, dword [edi + 0x14f48]
test eax, eax
je 0x4900e0
cmp dword [eax + 0x214], 0
jne 0x4900e0
cmp dword [eax + 0x204], 0
jne 0x4900e0
mov ecx, edi
call fcn.00474b60
cmp eax, 9
jle 0x4900e0
mov ecx, dword [edi + 0x14f48]
movd xmm0, dword [ecx + 0x1b0]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [0x5d3340]
cvtpd2ps xmm1, xmm0
movd xmm0, dword [ecx + 0x1ac]
cvtdq2ps xmm0, xmm0
addss xmm1, xmm0
cvttss2si eax, xmm1
mov dword [ecx + 0x1ac], eax
mov eax, dword [edi + 0x14f48]
mov ecx, dword [eax + 0x1b0]
cmp dword [eax + 0x1ac], ecx
jle 0x490078
mov dword [eax + 0x1ac], ecx
mov ecx, dword [edi + 0x14f48]
mov dword [ebp - 0x92f], ecx
mov byte [ebp - 0x930], 0x27
push 0
mov eax, dword [ecx + 0x1ac]
mov dword [ebp - 0x92b], eax
mov eax, dword [ecx + 0x1b0]
mov dword [ebp - 0x927], eax
lea eax, [ebp - 0x930]
movd xmm0, dword [ecx + 0x10c]
cvtdq2ps xmm0, xmm0
push 2
push eax
push 0xd
cvttss2si eax, xmm0
movd xmm0, dword [ecx + 0x108]
mov ecx, esi
cvtdq2ps xmm0, xmm0
push eax
cvttss2si eax, xmm0
push eax
push 0
call fcn.00529cd0
nop dword [eax]
push esi
mov ecx, edi
call fcn.00489fa0
test eax, eax
jne 0x4900e0
mov edx, dword [ebp - 0x904]
mov eax, dword [edi + 0x24c]
mov ecx, edx
sub ecx, eax
test eax, eax
je 0x490110
cmp edx, eax
jb 0x490110
cmp ecx, 0x2710
jbe 0x4902f5
mov dword [edi + 0x24c], edx
xor eax, eax
xorps xmm0, xmm0
mov dword [ebp - 0x8ec], eax
movss xmm1, dword [edi + eax*4 + 0x154]
comiss xmm1, xmm0
jbe 0x490219
cmp dword [edi + eax*4 + 0x128], edx
jae 0x49014c
mov dword [edi + eax*4 + 0x154], 0
jmp 0x490219
cmp eax, 4
jne 0x490219
imul ecx, dword [edi + 0x188], 0x980
mulss xmm1, dword [0x5cf5bc]
push 0
push 2
movd xmm0, dword [ecx + edi + 0x2fc]
cvtdq2ps xmm0, xmm0
subss xmm0, xmm1
cvttss2si eax, xmm0
mov dword [ecx + edi + 0x2fc], eax
imul ecx, dword [edi + 0x188], 0x980
mov byte [ebp - 0x958], 0x27
mov dword [ebp - 0x957], edi
mov eax, dword [ecx + edi + 0x2fc]
mov dword [ebp - 0x953], eax
mov eax, dword [ecx + edi + 0x2f8]
mov ecx, esi
mov dword [ebp - 0x94f], eax
lea eax, [ebp - 0x958]
push eax
push 0xd
push dword [edi + 0x10c]
push dword [edi + 0x108]
push 0
call fcn.00529cd0
imul eax, dword [edi + 0x188], 0x980
xorps xmm0, xmm0
mov edx, dword [ebp - 0x904]
cmp dword [eax + edi + 0x2fc], 0
jg 0x490213
mov dword [eax + edi + 0x2fc], 0
mov eax, dword [ebp - 0x8ec]
mov dword [edi + 0x124], 1
inc eax
jmp 0x49011b
mov eax, dword [ebp - 0x8ec]
inc eax
mov dword [ebp - 0x8ec], eax
cmp eax, 0xb
jl 0x490121
mov ecx, dword [esi + 0x110]
call fcn.0044e330
mov dword [ebp - 0x910], eax
cmp eax, edi
je 0x490272
lea ecx, [edi + 0x18c]
push ecx
lea ecx, [eax + 0x18c]
push ecx
call fcn.0044d580
add esp, 8
test eax, eax
je 0x490272
mov eax, dword [ebp - 0x910]
mov dword [edi + 0x14f18], 1
mov dword [eax + 0x14f18], 1
mov ecx, dword [esi + 0x110]
call fcn.0044e3e0
mov ecx, dword [esi + 0x110]
push edi
call fcn.0044e2e0
cmp dword [edi + 0x14f10], 1
jne 0x4902ef
mov byte [ebp - 0x92c], 0x4a
call dword [sym.imp.WINMM.dll_timeGetTime]
mov ecx, dword [0x62aadc]
mov edx, eax
mov eax, 0x10624dd3
sub edx, dword [ecx + 0x58]
mov ecx, dword [esi + 0x11c]
mul edx
mov eax, 0x88888889
shr edx, 6
mul edx
mov ax, word [0x62ab18]
shr edx, 5
mov word [ebp - 0x927], dx
lea edx, [ebp - 0x91c]
push edx
push 0
mov word [ebp - 0x92b], ax
lea edx, [ebp - 0x92c]
mov eax, dword [ecx]
push edx
push 7
call dword [eax + 4]
mov edx, dword [ebp - 0x904]
cmp dword [edi + 0x25c], 0
je 0x490383
mov ecx, dword [edi + 0x250]
mov eax, edx
sub eax, ecx
mov dword [ebp - 0x8f8], eax
test ecx, ecx
je 0x49031a
cmp edx, ecx
jae 0x490324
mov dword [ebp - 0x8f8], 0x1389
imul eax, dword [edi + 0x188], 0x980
mov esi, dword [eax + edi + 0xbd0]
xor eax, eax
cmp esi, 3
setle al
add eax, 4
cmp esi, 4
lea ecx, [eax - 1]
cmovle ecx, eax
cmp esi, 5
lea edx, [ecx - 1]
cmovle edx, ecx
cmp esi, 6
mov esi, dword [ebp - 0x8e4]
lea eax, [edx - 1]
cmovle eax, edx
imul eax, eax, 0x3e8
cmp dword [ebp - 0x8f8], eax
jbe 0x490389
push esi
mov ecx, edi
mov dword [edi + 0x25c], 0
call fcn.00474f50
jmp 0x490389
mov esi, dword [ebp - 0x8e4]
mov edx, dword [ebp - 0x904]
mov ecx, edx
mov eax, dword [edi + 0x254]
sub ecx, eax
test eax, eax
je 0x4903ad
cmp edx, eax
jb 0x4903ad
cmp ecx, 0xea60
jbe 0x490c3d
mov dword [edi + 0x254], edx
lea eax, [ebp - 0x910]
push eax
mov dword [edi + 0x14f38], 0
mov dword [edi + 0x14f34], 0
mov dword [edi + 0x14f30], 0
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [0x62aadc]
add eax, 0x2a0
add eax, edi
push eax
call fcn.004bbfd0
test eax, eax
je 0x490423
mov ecx, dword [ebp - 0x910]
mov eax, dword [ecx + 0x15c]
mov dword [edi + 0x14f30], eax
mov eax, dword [ecx + 0x160]
mov dword [edi + 0x14f34], eax
mov eax, dword [ecx + 0x164]
mov dword [edi + 0x14f38], eax
xorps xmm0, xmm0
movq qword [edi + 0x14f04], xmm0
mov dword [edi + 0x14f0c], 0
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2d8]
add ecx, 4
call fcn.0044e330
mov dword [ebp - 0x8ec], eax
test eax, eax
je 0x490554
nop
cmp dword [eax + 0x110], 2
jne 0x49052d
mov eax, dword [eax + 0x11c]
lea ecx, [ebp - 0x824]
mov dword [ebp - 0x8f8], eax
call fcn.005132b0
mov eax, dword [ebp - 0x8f8]
cmp byte [eax + 8], 0
je 0x49052d
lea ecx, [ebp - 0x824]
push ecx
lea ecx, [eax + 0xa]
call fcn.00513310
test eax, eax
js 0x49052d
mov ecx, dword [ebp - 0x8ec]
call fcn.0044ccd0
push eax
lea eax, [ebp - 0x410]
push str._s_disintegrates.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0x88b]
push eax
lea eax, [ebp - 0x410]
push 0x400
push eax
call fcn.0044d1c0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x91c]
add esp, 0x1c
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0x88c]
push edx
push 0x65
call dword [eax + 4]
imul eax, dword [edi + 0x188], 0x980
push dword [ebp - 0x8ec]
mov ecx, dword [eax + edi + 0x2d8]
add ecx, 4
call fcn.0044e520
mov ecx, dword [ebp - 0x8ec]
push 1
mov eax, dword [ecx]
call dword [eax]
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2d8]
add ecx, 4
call fcn.0044e3e0
mov dword [ebp - 0x8ec], eax
test eax, eax
jne 0x490460
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e330
mov dword [ebp - 0x8ec], eax
test eax, eax
je 0x490674
nop dword [eax + eax]
cmp dword [eax + 0x110], 2
jne 0x49064d
mov eax, dword [eax + 0x11c]
lea ecx, [ebp - 0x824]
mov dword [ebp - 0x8f8], eax
call fcn.005132b0
mov eax, dword [ebp - 0x8f8]
cmp byte [eax + 8], 0
je 0x49064d
lea ecx, [ebp - 0x824]
push ecx
lea ecx, [eax + 0xa]
call fcn.00513310
test eax, eax
js 0x49064d
mov ecx, dword [ebp - 0x8ec]
call fcn.0044ccd0
push eax
lea eax, [ebp - 0x410]
push str._s_disintegrates.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0x88b]
push eax
lea eax, [ebp - 0x410]
push 0x400
push eax
call fcn.0044d1c0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x91c]
add esp, 0x1c
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0x88c]
push edx
push 0x65
call dword [eax + 4]
imul eax, dword [edi + 0x188], 0x980
push dword [ebp - 0x8ec]
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e520
mov ecx, dword [ebp - 0x8ec]
push 1
mov eax, dword [ecx]
call dword [eax]
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e3e0
mov dword [ebp - 0x8ec], eax
test eax, eax
jne 0x490580
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e4]
add ecx, 4
call fcn.0044e330
mov dword [ebp - 0x8ec], eax
test eax, eax
je 0x4907f4
nop dword [eax + eax]
cmp dword [eax + 0x110], 2
jne 0x4907cd
mov eax, dword [eax + 0x11c]
lea ecx, [ebp - 0x824]
mov dword [ebp - 0x8f8], eax
call fcn.005132b0
mov edx, dword [ebp - 0x8f8]
cmp byte [edx + 8], 0
je 0x4907cd
lea eax, [ebp - 0x824]
push eax
lea ecx, [edx + 0xa]
call fcn.00513310
test eax, eax
js 0x49076f
mov ecx, dword [ebp - 0x8ec]
call fcn.0044ccd0
push eax
lea eax, [ebp - 0x410]
push str._s_disintegrates.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0x88b]
push eax
lea eax, [ebp - 0x410]
push 0x400
push eax
call fcn.0044d1c0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x91c]
add esp, 0x1c
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0x88c]
push edx
push 0x65
call dword [eax + 4]
imul eax, dword [edi + 0x188], 0x980
push dword [ebp - 0x8ec]
mov ecx, dword [eax + edi + 0x2e4]
add ecx, 4
call fcn.0044e520
mov ecx, dword [ebp - 0x8ec]
push 1
mov eax, dword [ecx]
call dword [eax]
jmp 0x4907cd
mov edx, dword [ebp - 0x8f8]
cmp byte [edx + 8], 0
je 0x4907cd
movd xmm0, dword [edx + 4]
xor ecx, ecx
movss xmm1, dword [edx + 0x40]
mov edx, dword [edx]
cvtdq2ps xmm0, xmm0
subss xmm0, xmm1
cvttss2si eax, xmm0
test eax, eax
cmovns ecx, eax
cmp edx, 7
jl 0x4907a9
cmp edx, 9
jg 0x4907a9
cvttss2si ecx, xmm1
jmp 0x4907ba
cmp edx, 0xb
jne 0x4907ba
xor eax, eax
comiss xmm1, dword [0x5cf054]
cmova ecx, eax
movsx eax, byte [edi + edx + 0x14f04]
cmp ecx, eax
jle 0x4907cd
mov byte [edi + edx + 0x14f04], cl
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e4]
add ecx, 4
call fcn.0044e3e0
mov dword [ebp - 0x8ec], eax
test eax, eax
jne 0x4906a0
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e0]
add ecx, 4
call fcn.0044e330
mov dword [ebp - 0x940], eax
test eax, eax
je 0x490a9b
nop dword [eax + eax]
mov ecx, eax
call fcn.0044ccd0
mov ecx, str.Dodging
nop dword [eax]
mov dl, byte [ecx]
cmp dl, byte [eax]
jne 0x490850
test dl, dl
je 0x49084c
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x490850
add ecx, 2
add eax, 2
test dl, dl
jne 0x490830
xor eax, eax
jmp 0x490855
sbb eax, eax
or eax, 1
test eax, eax
jne 0x49094a
mov eax, dword [ebp - 0x940]
mov eax, dword [eax + 0x11c]
mov dword [ebp - 0x8f8], eax
mov ecx, dword [eax + 8]
mov eax, dword [eax + 0xc]
push eax
push ecx
push eax
push ecx
mov dword [ebp - 0x90c], ecx
mov dword [ebp - 0x93c], eax
call fcn.00557850
mov ecx, eax
mov esi, 0x64
mov eax, edx
mul esi
mov esi, eax
mov eax, ecx
mov ecx, 0x64
mul ecx
mov ecx, eax
add esi, edx
mov eax, dword [ebp - 0x8f8]
cmp esi, dword [eax + 4]
ja 0x49094a
jb 0x4908bd
cmp ecx, dword [eax]
ja 0x49094a
mov ecx, dword [ebp - 0x90c]
mov edx, dword [ebp - 0x93c]
add ecx, 1
mov dword [eax + 8], ecx
adc edx, 0
mov dword [eax + 0xc], edx
lea eax, [ebp - 0x410]
push str.You_gained_Dodging_skill__
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0x88b]
push eax
lea eax, [ebp - 0x410]
push 0x400
push eax
call fcn.0044d1c0
mov eax, dword [ebp - 0x8e4]
lea edx, [ebp - 0x91c]
add esp, 0x18
mov ecx, dword [eax + 0x11c]
push edx
push 0
lea edx, [ebp - 0x88c]
mov eax, dword [ecx]
push edx
push 0x65
call dword [eax + 4]
imul eax, dword [edi + 0x188], 0x980
movss xmm0, dword [eax + edi + 0x300]
addss xmm0, dword [0x5d3304]
movss dword [eax + edi + 0x300], xmm0
mov esi, dword [ebp - 0x940]
mov ecx, esi
call fcn.0044ccd0
mov ecx, str.Pet_Energy
nop dword [eax]
mov dl, byte [ecx]
cmp dl, byte [eax]
jne 0x490980
test dl, dl
je 0x49097c
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x490980
add ecx, 2
add eax, 2
test dl, dl
jne 0x490960
xor eax, eax
jmp 0x490985
sbb eax, eax
or eax, 1
test eax, eax
jne 0x490a74
mov eax, dword [esi + 0x11c]
mov dword [ebp - 0x8f8], eax
mov ecx, dword [eax + 8]
mov eax, dword [eax + 0xc]
push eax
push ecx
push eax
push ecx
mov dword [ebp - 0x90c], ecx
mov dword [ebp - 0x93c], eax
call fcn.00557850
mov ecx, eax
mov esi, 0x64
mov eax, edx
mul esi
mov esi, eax
mov eax, ecx
mov ecx, 0x64
mul ecx
mov ecx, eax
add esi, edx
mov eax, dword [ebp - 0x8f8]
cmp esi, dword [eax + 4]
ja 0x490a74
jb 0x4909e7
cmp ecx, dword [eax]
ja 0x490a74
mov ecx, dword [ebp - 0x90c]
mov edx, dword [ebp - 0x93c]
add ecx, 1
mov dword [eax + 8], ecx
adc edx, 0
mov dword [eax + 0xc], edx
lea eax, [ebp - 0x410]
push str.You_gained_Pet_Energy__
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0x88b]
push eax
lea eax, [ebp - 0x410]
push 0x400
push eax
call fcn.0044d1c0
mov eax, dword [ebp - 0x8e4]
lea edx, [ebp - 0x91c]
add esp, 0x18
mov ecx, dword [eax + 0x11c]
push edx
push 0
lea edx, [ebp - 0x88c]
mov eax, dword [ecx]
push edx
push 0x65
call dword [eax + 4]
imul eax, dword [edi + 0x188], 0x980
movss xmm0, dword [eax + edi + 0x300]
addss xmm0, dword [0x5d3304]
movss dword [eax + edi + 0x300], xmm0
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e0]
add ecx, 4
call fcn.0044e3e0
mov dword [ebp - 0x940], eax
test eax, eax
jne 0x490820
imul esi, dword [edi + 0x188], 0x980
mov ecx, edi
call fcn.00487570
lea eax, [eax + eax*2]
lea eax, [eax*2 + 0x14]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm0, dword [esi + edi + 0x300]
cvttss2si eax, xmm0
mov dword [esi + edi + 0x2f8], eax
imul eax, dword [edi + 0x188], 0x980
mov edx, dword [eax + edi + 0xbd0]
lea ecx, [eax + edi]
mov eax, dword [ecx + 0x2f8]
cmp edx, 6
jge 0x490af5
imul eax, edx
jmp 0x490af8
lea eax, [eax + eax*4]
mov dword [ecx + 0x2f8], eax
imul eax, dword [edi + 0x188], 0x980
cvttss2si ecx, dword [eax + edi + 0x304]
cvttss2si eax, dword [eax + edi + 0x300]
cmp ecx, eax
je 0x490c3d
lea eax, [ebp - 0x8d8]
mov byte [ebp - 0x8d8], 9
push eax
mov ecx, edi
call fcn.00474d90
mov esi, dword [ebp - 0x8e4]
lea edx, [ebp - 0x91c]
push edx
push 0
lea edx, [ebp - 0x8d8]
mov ecx, dword [esi + 0x11c]
push edx
push 0x49
mov eax, dword [ecx]
call dword [eax + 4]
imul eax, dword [edi + 0x188], 0x980
cvttss2si eax, dword [eax + edi + 0x300]
push eax
lea eax, [ebp - 0x410]
push str.You_gained_a_Level____You_are_now_Level__ld.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0x88b]
push eax
lea eax, [ebp - 0x410]
push 0x400
push eax
call fcn.0044d1c0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x91c]
add esp, 0x1c
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0x88c]
push edx
push 0x65
call dword [eax + 4]
mov eax, dword [edi + 0x180]
mov ecx, esi
mov dword [ebp - 0x823], eax
movzx eax, byte [edi + 0x108]
push 0
mov byte [ebp - 0x81b], al
movzx eax, byte [edi + 0x10c]
push 5
mov byte [ebp - 0x81a], al
lea eax, [ebp - 0x824]
push eax
push 0x11
push dword [edi + 0x10c]
mov byte [ebp - 0x824], 0x38
push dword [edi + 0x108]
mov dword [ebp - 0x81f], 0xffffffff
push 0
mov word [ebp - 0x819], 0xff28
mov dword [ebp - 0x817], 0x50028
call fcn.00529cd0
imul ecx, dword [edi + 0x188], 0x980
mov eax, dword [ecx + edi + 0x300]
mov dword [ecx + edi + 0x304], eax
lea ecx, [ebp - 0x91c]
call fcn.00472a40
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.005566b4
mov esp, ebp
pop ebp
ret 4
call fcn.0058d637
int3