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

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5cb087
mov eax, dword fs:[0]
push eax
push ebx
mov eax, 0x10c8
call fcn.0055fcd0
mov eax, dword [0x6327e8]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 0x106c], edi
mov esi, dword [ebx + 8]
mov dword [ebp - 0x1028], esi
mov dword [ebp - 0x105c], 0
mov dword [ebp - 0x1058], 0
mov dword [ebp - 0x1054], 0
mov ecx, dword [edi + 0x180]
mov eax, ecx
sar eax, 8
mov byte [ebp - 0x1017], al
mov eax, ecx
sar eax, 0x10
mov byte [ebp - 0x1018], cl
sar ecx, 0x18
mov byte [ebp - 0x1016], al
lea eax, [ebp - 0x1018]
mov byte [ebp - 0x1015], cl
lea ecx, [ebp - 0x105c]
push eax
mov dword [ebp - 4], 0
mov byte [ebp - 0x1014], 0
call fcn.00493760
lea eax, [edi + 0x260]
mov byte [ebp - 0xfc8], 0x17
mov dword [ebp - 0x102c], eax
mov ecx, 0x5dbaf0
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x475ff7
test dl, dl
je 0x475ff3
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x475ff7
add eax, 2
add ecx, 2
test dl, dl
jne 0x475fd7
xor eax, eax
jmp 0x475ffc
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4773f5
xorps xmm0, xmm0
mov byte [ebp - 0x1045], al
imul eax, dword [edi + 0x188], 0x980
xor esi, esi
mov dword [ebp - 0x1024], esi
mov dword [ebp - 0x104c], esi
mov dword [ebp - 0x102c], esi
mov dword [ebp - 0x1030], esi
movss dword [ebp - 0x1034], xmm0
movss dword [ebp - 0x107c], xmm0
movss dword [ebp - 0x1044], xmm0
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
mov dword [ebp - 0x1040], esi
movups xmmword [ebp - 0xea8], xmm0
movups xmmword [ebp - 0xe98], xmm0
movups xmmword [ebp - 0xe88], xmm0
movups xmmword [ebp - 0xe78], xmm0
movups xmmword [ebp - 0xf00], xmm0
movups xmmword [ebp - 0xef0], xmm0
movups xmmword [ebp - 0xee0], xmm0
movups xmmword [ebp - 0xed0], xmm0
movups xmmword [ebp - 0xec0], xmm0
movups xmmword [ebp - 0xe68], xmm0
movups xmmword [ebp - 0xe58], xmm0
movups xmmword [ebp - 0xe48], xmm0
movups xmmword [ebp - 0xe38], xmm0
movups xmmword [ebp - 0xe28], xmm0
call fcn.0044e540
mov edx, eax
mov dword [ebp - 0x1038], edx
test edx, edx
je 0x4763bf
mov eax, dword [edx + 0x110]
cmp eax, 8
jne 0x476167
mov eax, dword [edx + 0x11c]
mov ecx, dword [eax]
test ecx, ecx
js 0x476383
cmp ecx, 0x10
jg 0x476383
lea eax, [ecx - 5]
cmp eax, 8
ja 0x476133
cmp byte [ebp - 0x1045], 0
jne 0x476347
cmp dword [edx + 0x118], 1
jne 0x476347
inc dword [ebp + ecx*4 - 0xea8]
inc dword [ebp - 0x1040]
mov byte [ebp - 0x1045], 1
jmp 0x4762e0
mov eax, dword [ebp - 0x1040]
mov edx, dword [edx + 0x118]
add eax, edx
add dword [ebp + ecx*4 - 0xea8], edx
mov dword [ebp - 0x1040], eax
cmp ecx, 0xe
jne 0x4762e0
add eax, edx
lea eax, [eax + edx*2]
mov dword [ebp - 0x1040], eax
jmp 0x4762e0
cmp eax, 4
jne 0x4762e0
mov ecx, dword [edx + 0x118]
mov eax, 0x40
cmp ecx, 0x40
cmovg ecx, eax
add esi, ecx
mov dword [ebp - 0x1020], ecx
mov dword [ebp - 0x1024], esi
mov esi, dword [edx + 0x11c]
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
mov dword [ebp - 0x1074], esi
mov eax, dword [esi]
imul eax, ecx
movaps xmm0, xmm1
mulss xmm0, dword [esi + 0x10]
add dword [ebp - 0x104c], eax
addss xmm0, dword [ebp - 0x1044]
mov eax, dword [esi + 4]
imul eax, ecx
movss dword [ebp - 0x1044], xmm0
movaps xmm0, xmm1
mulss xmm0, dword [esi + 0xc]
add dword [ebp - 0x102c], eax
mulss xmm1, dword [edx + 0x10c]
mov eax, dword [esi + 8]
addss xmm0, dword [ebp - 0x1034]
imul eax, ecx
addss xmm1, dword [ebp - 0x107c]
movss dword [ebp - 0x1034], xmm0
add dword [ebp - 0x1030], eax
xor esi, esi
movss dword [ebp - 0x107c], xmm1
nop
mov edx, dword [ebp + esi*4 - 0xf00]
mov eax, esi
shl eax, 6
mov dword [ebp - 0x1010], eax
test edx, edx
jle 0x47628a
mov ecx, dword [ebp - 0x1038]
call fcn.0044ce00
mov ecx, eax
mov eax, dword [ebp - 0x1010]
lea eax, [ebp + eax - 0xe18]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x476260
test dl, dl
je 0x47625c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x476260
add eax, 2
add ecx, 2
test dl, dl
jne 0x476240
xor eax, eax
jmp 0x476265
sbb eax, eax
or eax, 1
mov ecx, dword [ebp - 0x1020]
test eax, eax
jne 0x47628c
mov eax, dword [ebp - 0x1074]
mov dword [ebp + esi*4 - 0xf00], ecx
cvttss2si eax, dword [eax + 0x10]
mov dword [ebp + eax*4 - 0xe6c], ecx
jmp 0x47628c
je 0x476298
inc esi
cmp esi, 0x14
jl 0x476210
jmp 0x4762da
mov dword [ebp + esi*4 - 0xf00], ecx
mov ecx, dword [ebp - 0x1038]
call fcn.0044ce00
push eax
mov eax, dword [ebp - 0x1010]
lea ecx, [ebp - 0xe18]
add eax, ecx
push eax
call fcn.0043d380
mov eax, dword [ebp - 0x1074]
add esp, 8
mov ecx, dword [ebp - 0x1020]
cvttss2si eax, dword [eax + 0x10]
mov dword [ebp + eax*4 - 0xe6c], ecx
mov esi, dword [ebp - 0x1024]
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e5f0
mov edx, eax
mov dword [ebp - 0x1038], eax
test edx, edx
jne 0x4760d0
mov ecx, dword [ebp - 0x1024]
movss xmm2, dword [ebp - 0x1044]
cmp ecx, 0x40
jle 0x4763c9
lea eax, [ecx - 0x40]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x5db144]
addss xmm0, dword [0x5d9058]
mulss xmm0, xmm2
addss xmm2, xmm0
jmp 0x4763c9
lea eax, [ebp - 0x418]
push str.You_can_only_have_one_shard_in_your_workbench_when_you_craft.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov eax, dword [ebp - 0x1028]
mov ecx, dword [eax + 0x11c]
jmp 0x48128a
lea eax, [ebp - 0x418]
push str.Ingredient_type_out_of_bounds___Please_report_this_bug.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov eax, dword [ebp - 0x1028]
mov ecx, dword [eax + 0x11c]
jmp 0x48128a
movss xmm2, dword [ebp - 0x1044]
xor ecx, ecx
movd xmm0, dword [ebp - 0x1040]
movaps xmm1, xmm2
divss xmm1, dword [0x5d9e68]
mov edi, dword [ebp - 0x104c]
xor edx, edx
xor esi, esi
mov dword [ebp - 0x1050], 0xffffffff
mov dword [ebp - 0x1010], edx
mov dword [ebp - 0x1038], esi
cvtdq2ps xmm0, xmm0
mulss xmm1, xmm0
movss xmm0, dword [ebp - 0x107c]
addss xmm1, xmm2
movss dword [ebp - 0x1044], xmm1
movss xmm1, dword [ebp - 0x1034]
nop
mov eax, dword [ebp - 0x1030]
mov dword [ebp - 0x1030], eax
mov eax, dword [ebp - 0x102c]
mov dword [ebp - 0x102c], eax
mov dword [ebp - 0x1024], ecx
mov ecx, dword [ebp + esi*4 - 0xf00]
mov eax, ecx
mov esi, dword [ebp + esi*4 - 0xefc]
cmp edx, ecx
mov dword [ebp - 0x104c], edi
mov edi, esi
cmovge eax, edx
cmp eax, esi
mov dword [ebp - 0x1014], eax
cmovge edi, eax
mov eax, dword [ebp - 0x1038]
mov edx, dword [ebp + eax*4 - 0xef8]
cmp edi, edx
cmovge edx, edi
cmp dword [ebp - 0x1010], ecx
mov ecx, dword [ebp - 0x1038]
mov dword [ebp - 0x1020], edx
mov edx, dword [ebp + eax*4 - 0xef4]
cmovge eax, dword [ebp - 0x1050]
inc ecx
cmp dword [ebp - 0x1014], esi
mov esi, dword [ebp - 0x1038]
cmovge ecx, eax
mov dword [ebp - 0x1064], edx
cmp edi, dword [ebp + esi*4 - 0xef8]
lea eax, [esi + 2]
mov edi, dword [ebp - 0x104c]
cmovge eax, ecx
mov dword [ebp - 0x1010], eax
mov eax, edx
mov edx, dword [ebp - 0x1020]
cmp edx, eax
jge 0x476508
mov edx, dword [ebp - 0x102c]
lea ecx, [esi + 3]
mov dword [ebp - 0x102c], edx
mov edx, dword [ebp - 0x1030]
mov dword [ebp - 0x1010], ecx
mov ecx, dword [ebp - 0x1024]
mov dword [ebp - 0x1030], edx
mov edx, dword [ebp - 0x1020]
cmp edx, eax
mov dword [ebp - 0x1024], ecx
cmovge eax, edx
lea ecx, [esi + 4]
mov edx, dword [ebp + esi*4 - 0xef0]
cmp eax, edx
cmovge ecx, dword [ebp - 0x1010]
add esi, 5
cmp eax, edx
mov dword [ebp - 0x1050], ecx
mov ecx, dword [ebp - 0x1024]
cmovge edx, eax
mov dword [ebp - 0x1038], esi
mov dword [ebp - 0x1010], edx
cmp esi, 0x14
jl 0x476420
mov eax, dword [ebp - 0x1050]
test eax, eax
jns 0x47658d
lea eax, [ebp - 0x418]
push str.Use_ingots_to_make_blades.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov eax, dword [ebp - 0x1028]
mov ecx, dword [eax + 0x11c]
jmp 0x48128a
xor edx, edx
mov dword [ebp + eax*4 - 0xf00], 0
xor esi, esi
mov dword [ebp - 0x101c], 0xffffffff
mov dword [ebp - 0x1010], edx
mov dword [ebp - 0x1038], esi
mov eax, dword [ebp - 0x1030]
mov dword [ebp - 0x1030], eax
mov eax, dword [ebp - 0x102c]
mov dword [ebp - 0x102c], eax
mov dword [ebp - 0x1024], ecx
mov ecx, dword [ebp + esi*4 - 0xf00]
mov eax, ecx
mov esi, dword [ebp + esi*4 - 0xefc]
cmp edx, ecx
mov dword [ebp - 0x104c], edi
mov edi, esi
cmovge eax, edx
cmp eax, esi
mov dword [ebp - 0x1014], eax
cmovge edi, eax
mov eax, dword [ebp - 0x1038]
mov edx, dword [ebp + eax*4 - 0xef8]
cmp edi, edx
cmovge edx, edi
cmp dword [ebp - 0x1010], ecx
mov ecx, dword [ebp - 0x1038]
mov dword [ebp - 0x1020], edx
mov edx, dword [ebp + eax*4 - 0xef4]
cmovge eax, dword [ebp - 0x101c]
inc ecx
cmp dword [ebp - 0x1014], esi
mov esi, dword [ebp - 0x1038]
cmovge ecx, eax
mov dword [ebp - 0x1064], edx
cmp edi, dword [ebp + esi*4 - 0xef8]
lea eax, [esi + 2]
mov edi, dword [ebp - 0x104c]
cmovge eax, ecx
mov dword [ebp - 0x1010], eax
mov eax, edx
mov edx, dword [ebp - 0x1020]
cmp edx, eax
jge 0x4766a0
mov edx, dword [ebp - 0x102c]
lea ecx, [esi + 3]
mov dword [ebp - 0x102c], edx
mov edx, dword [ebp - 0x1030]
mov dword [ebp - 0x1010], ecx
mov ecx, dword [ebp - 0x1024]
mov dword [ebp - 0x1030], edx
mov edx, dword [ebp - 0x1020]
cmp edx, eax
mov dword [ebp - 0x1024], ecx
mov dword [ebp - 0x104c], edi
cmovge eax, edx
lea ecx, [esi + 4]
mov edx, dword [ebp + esi*4 - 0xef0]
cmp eax, edx
cmovge ecx, dword [ebp - 0x1010]
add esi, 5
cmp eax, edx
mov dword [ebp - 0x101c], ecx
mov ecx, dword [ebp - 0x1024]
cmovge edx, eax
mov dword [ebp - 0x1038], esi
mov dword [ebp - 0x1010], edx
cmp esi, 0x14
jl 0x4765b2
mov edi, dword [ebp - 0x106c]
xor esi, esi
movss dword [ebp - 0x1034], xmm1
movss dword [ebp - 0x107c], xmm0
mov dword [ebp - 0x1040], esi
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e0]
add ecx, 8
call fcn.0044e540
mov esi, eax
test esi, esi
je 0x4773b9
mov ecx, esi
call fcn.0044ce00
mov ecx, eax
lea eax, [edi + 0x260]
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x476750
test dl, dl
je 0x47674c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x476750
add eax, 2
add ecx, 2
test dl, dl
jne 0x476730
xor eax, eax
jmp 0x476755
sbb eax, eax
or eax, 1
test eax, eax
jne 0x476765
mov eax, dword [esi + 0x11c]
mov dword [ebp - 0x1040], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e0]
add ecx, 8
call fcn.0044e5f0
mov esi, eax
test esi, esi
jne 0x476720
mov esi, dword [ebp - 0x1040]
test esi, esi
je 0x4773b9
call fcn.0056eac9
mov ecx, edi
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x5dd3a4]
divss xmm0, dword [0x5d95d0]
addss xmm0, dword [0x5dd374]
movss dword [ebp - 0x1014], xmm0
call fcn.00481c00
push dword [esi + 0xc]
cdq
push dword [esi + 8]
push edx
push eax
call fcn.00560560
mov ecx, eax
call fcn.0055f7d0
mov esi, dword [ebp - 0x1028]
mov ecx, 0x637628
cvtsd2ss xmm0, xmm0
push esi
push 1
mulss xmm0, dword [ebp - 0x1014]
movss dword [ebp - 0x103c], xmm0
call fcn.005358c0
test eax, eax
je 0x47683a
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.00536390
test eax, eax
je 0x47683a
movss xmm0, dword [ebp - 0x103c]
mulss xmm0, dword [0x5dd38c]
movss dword [ebp - 0x103c], xmm0
push esi
push 0
mov ecx, 0x637628
call fcn.005358c0
test eax, eax
je 0x476880
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.00536390
test eax, eax
je 0x476880
movss xmm0, dword [ebp - 0x103c]
mulss xmm0, dword [0x5dd38c]
movss dword [ebp - 0x103c], xmm0
push esi
push 2
mov ecx, 0x637628
call fcn.005358c0
test eax, eax
je 0x4768c8
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.00536390
movss xmm1, dword [ebp - 0x103c]
test eax, eax
je 0x4768d0
mulss xmm1, dword [0x5dd38c]
movss dword [ebp - 0x103c], xmm1
jmp 0x4768d0
movss xmm1, dword [ebp - 0x103c]
mov eax, dword [edi + 0x14f60]
test eax, eax
jle 0x4768fd
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x5dd364]
addss xmm0, dword [0x5d9058]
mulss xmm0, xmm1
movss dword [ebp - 0x103c], xmm0
movss xmm0, dword [ebp - 0x1044]
lea eax, [ebp - 0x418]
cvtps2pd xmm0, xmm0
sub esp, 8
movsd qword [esp], xmm0
push str.Task_difficulty_is__4.2f.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x20
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
movss xmm0, dword [ebp - 0x103c]
lea eax, [ebp - 0x418]
cvtps2pd xmm0, xmm0
sub esp, 8
movsd qword [esp], xmm0
push str.Your_work_value_was__4.2f.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x20
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
imul ecx, dword [edi + 0x188], 0x980
movss xmm0, dword [ebp - 0x103c]
mov ecx, dword [ecx + edi + 0x2dc]
add ecx, 8
comiss xmm0, dword [ebp - 0x1044]
jb 0x476fcc
mov byte [ebp - 0x1045], 0
call fcn.0044e540
mov esi, eax
test esi, esi
je 0x476ac6
nop dword [eax]
mov eax, dword [esi + 0x110]
cmp eax, 4
jne 0x476a24
mov eax, dword [esi + 0x118]
cmp eax, 0x40
jle 0x476a7f
add eax, 0xffffffc0
mov dword [esi + 0x118], eax
jmp 0x476aa3
cmp eax, 8
jne 0x476aa3
mov edx, dword [esi + 0x118]
mov cl, byte [ebp - 0x1045]
cmp edx, 1
jle 0x476a64
mov eax, dword [esi + 0x11c]
mov eax, dword [eax]
sub eax, 5
cmp eax, 8
ja 0x476a64
test cl, cl
jne 0x476a64
lea eax, [edx - 1]
mov byte [ebp - 0x1045], 1
mov dword [esi + 0x118], eax
jmp 0x476aa3
mov eax, dword [esi + 0x11c]
mov eax, dword [eax]
sub eax, 5
cmp eax, 8
ja 0x476a7f
test cl, cl
jne 0x476aa3
mov byte [ebp - 0x1045], 1
imul eax, dword [edi + 0x188], 0x980
push esi
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e730
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e5f0
mov esi, eax
test esi, esi
jne 0x476a00
mov eax, dword [ebp - 0x1050]
lea esi, [ebp - 0xe18]
shl eax, 6
lea ecx, [ebp - 0x418]
add eax, esi
mov esi, dword [ebp - 0x101c]
cmp esi, 0xffffffff
jle 0x476b43
push ecx
push 0x5d8428
push eax
call fcn.0043dd20
lea ecx, [ebp - 0x418]
add esp, 0xc
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x476b00
sub ecx, edx
lea eax, [ebp - 0x418]
add eax, ecx
push str.__WXZQPNS
push eax
call fcn.0043d380
lea ecx, [ebp - 0x418]
add esp, 8
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x476b28
sub ecx, edx
shl esi, 6
lea eax, [ebp - 0xe18]
add eax, esi
lea ecx, [ebp + ecx - 0x418]
push ecx
push 0x5d8428
push eax
call fcn.0043dd20
lea ecx, [ebp - 0x418]
add esp, 0xc
lea edx, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x476b60
sub ecx, edx
lea eax, [ebp - 0x418]
add eax, ecx
push 0x5dbe94
push eax
call fcn.0043d380
mov esi, dword [ebp - 0x1024]
add esp, 8
xor ecx, ecx
nop word [eax + eax]
lea eax, [ecx + ecx*8]
cmp dword [eax*8 + 0x618a78], esi
jg 0x476ba8
mov eax, 6
inc ecx
cmp ecx, eax
jl 0x476b90
jmp 0x476bab
lea eax, [ecx - 1]
xor edx, edx
lea ecx, [ebp - 0x418]
test eax, eax
cmovns edx, eax
mov eax, 5
cmp edx, eax
cmovg edx, eax
lea eax, [ecx + 1]
mov dword [ebp - 0x1014], eax
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x476bd0
sub ecx, dword [ebp - 0x1014]
lea edi, [edx + edx*8]
lea eax, [edi*8 + str.Dirk]
push eax
lea eax, [ebp - 0x418]
add eax, ecx
push eax
call fcn.0043d380
push 0x120
call fcn.0055f3ea
add esp, 0xc
mov dword [ebp - 0x1014], eax
mov byte [ebp - 4], 1
test eax, eax
je 0x476c2d
lea ecx, [ebp - 0x418]
push ecx
push 0
push 1
mov ecx, eax
call fcn.00512b90
mov edx, eax
mov dword [ebp - 0x1038], eax
jmp 0x476c35
xor edx, edx
mov dword [ebp - 0x1038], edx
movd xmm0, dword [edi*8 + 0x618a7c]
mov eax, dword [edx + 0x11c]
cvtdq2ps xmm0, xmm0
mov dword [ebp - 0x1024], eax
mov edi, dword [ebp - 0xe98]
mov dword [ebp - 0x1020], edi
mov byte [ebp - 4], 0
movd xmm1, esi
mulss xmm0, dword [ebp - 0x1034]
cvtdq2ps xmm1, xmm1
divss xmm0, xmm1
mulss xmm1, dword [0x5db148]
cvttss2si ecx, xmm0
movss xmm0, dword [ebp - 0x107c]
mov dword [eax], ecx
mulss xmm0, dword [0x5dd3a0]
mov eax, dword [ebp - 0x104c]
mov ecx, dword [ebp - 0x1024]
movss dword [edx + 0x10c], xmm0
cdq
idiv esi
cvtps2pd xmm0, xmm1
mov dword [ecx + 0x10], eax
mov eax, dword [ebp - 0x102c]
cdq
idiv esi
addsd xmm0, qword [0x5d9060]
mov dword [ecx + 0x14], eax
mov eax, dword [ebp - 0x1030]
cdq
idiv esi
mov edx, dword [ebp - 0xea4]
mov dword [ecx + 0x18], eax
mov esi, dword [ebp - 0xea0]
cvtpd2ps xmm0, xmm0
lea eax, [edx + 1]
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x1024]
movss dword [ecx + 8], xmm0
mov dword [ecx + 0x20], esi
mov ecx, dword [ebp - 0xea8]
mov dword [eax + 0x2c], ecx
mov dword [eax + 0x28], edi
mov edi, dword [ebp - 0xe9c]
mov dword [eax + 0x24], edi
mov edi, dword [ebp - 0x1024]
mov eax, dword [ebp - 0xe6c]
mov dword [edi + 0x30], eax
mov eax, dword [ebp - 0xe70]
mov dword [edi + 0x34], eax
mov eax, dword [ebp - 0xe68]
mov dword [edi + 0x40], eax
mov eax, dword [ebp - 0xe64]
mov dword [edi + 0x44], eax
mov eax, dword [ebp - 0xe60]
mov dword [edi + 0x48], eax
mov eax, dword [ebp - 0xe5c]
mov dword [edi + 0x4c], eax
mov eax, dword [ebp - 0xe58]
mov dword [edi + 0x50], eax
mov eax, dword [ebp - 0xe54]
mov dword [edi + 0x54], eax
mov eax, dword [ebp - 0xe50]
mov dword [edi + 0x58], eax
mov eax, dword [ebp - 0xe4c]
mov dword [edi + 0x5c], eax
mov eax, dword [ebp - 0xe48]
mov dword [edi + 0x60], eax
mov eax, dword [ebp - 0xe44]
mov dword [edi + 0x64], eax
mov eax, dword [ebp - 0xe40]
mov dword [edi + 0x68], eax
mov eax, dword [ebp - 0xe3c]
mov dword [edi + 0x6c], eax
mov eax, dword [ebp - 0xe38]
mov dword [edi + 0x70], eax
mov eax, dword [ebp - 0xe34]
mov dword [edi + 0x74], eax
mov eax, dword [ebp - 0xe30]
mov dword [edi + 0x78], eax
mov eax, ecx
xor edi, edi
test ecx, ecx
mov ecx, edi
cmovle eax, edi
setg cl
dec ecx
mov edi, 1
cmp edx, eax
cmovle edx, eax
cmovg ecx, edi
cmp esi, edx
mov eax, 2
cmovle esi, edx
cmovg ecx, eax
mov edx, dword [ebp - 0xe9c]
mov eax, 3
cmp edx, esi
cmovle edx, esi
cmovg ecx, eax
cmp dword [ebp - 0xe98], edx
jg case.0x476e01.4
mov dword [ebp - 0x1020], edx
cmp ecx, 0xffffffff
jle 0x476e84
cmp ecx, 4
ja case.0x476e01.1
mov dword [ebp - 0x1020], edx
jmp dword [ecx*4 + 0x4812d4]
mov ecx, dword [ebp - 0x1024]
mov eax, 0x11
mov dword [ecx + 0x1c], 0x11
jmp 0x476e69
mov ecx, dword [ebp - 0x1024]
mov eax, 0x15
mov dword [ecx + 0x1c], 0x15
jmp 0x476e69
mov ecx, dword [ebp - 0x1024]
mov eax, 9
mov dword [ecx + 0x1c], 9
jmp 0x476e69
mov ecx, dword [ebp - 0x1024]
mov eax, 0xd
mov dword [ecx + 0x1c], 0xd
jmp 0x476e63
mov ecx, dword [ebp - 0x1024]
mov eax, edi
mov dword [ecx + 0x1c], edi
mov edx, dword [ebp - 0x1020]
cmp edx, 1
jle 0x476e72
inc eax
mov dword [ecx + 0x1c], eax
cmp edx, 4
jle 0x476e7b
inc eax
mov dword [ecx + 0x1c], eax
cmp edx, 9
jle 0x476e84
inc eax
mov dword [ecx + 0x1c], eax
mov edi, dword [ebp - 0x106c]
mov eax, 5
nop
cmp dword [ebp + eax*4 - 0xea8], 0
jg 0x476ea5
inc eax
or ecx, 0xffffffff
cmp eax, 0xd
jle 0x476e90
jmp 0x476ea8
lea ecx, [eax - 5]
cmp ecx, 0xffffffff
jle 0x476ecc
mov esi, dword [ebp - 0x1024]
lea eax, [ecx + 0x19]
mov dword [esi + 0x1c], eax
mov eax, 0x66666667
imul dword [esi]
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
add dword [esi], eax
lea eax, [ebp - 0x418]
push str.You_have_created_a
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov esi, dword [ebp - 0x1028]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov ecx, dword [esi + 0x11c]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
mov ecx, dword [ebp - 0x1038]
call fcn.0044ce00
push eax
lea eax, [ebp - 0x418]
push 0x5dbeac
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x1c
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
movss xmm0, dword [ebp - 0x103c]
lea eax, [edi + 0x260]
push eax
sub esp, 8
mov ecx, edi
movss dword [esp + 4], xmm0
movss xmm0, dword [ebp - 0x1044]
movss dword [esp], xmm0
push dword [ebp - 0x1038]
push esi
call fcn.00488fc0
imul ecx, dword [edi + 0x188], 0x980
push dword [ebp - 0x1038]
mov ecx, dword [ecx + edi + 0x2d8]
call fcn.005137e0
jmp 0x47711a
call fcn.0044e540
mov esi, eax
test esi, esi
je 0x47711a
movss xmm0, dword [ebp - 0x103c]
divss xmm0, dword [ebp - 0x1044]
movss dword [ebp - 0x1014], xmm0
call fcn.0056eac9
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x5d9e68]
divss xmm0, dword [0x5d95d0]
addss xmm0, dword [0x5d9054]
cvttss2si eax, xmm0
mov dword [ebp - 0x1064], eax
call fcn.0056eac9
movd xmm0, eax
cvtdq2ps xmm0, xmm0
divss xmm0, dword [0x5d95d0]
addss xmm0, dword [0x5d9054]
comiss xmm0, dword [ebp - 0x1014]
jbe 0x4770f7
mov eax, dword [esi + 0x110]
cmp eax, 4
je 0x477084
cmp eax, 8
jne 0x4770f7
mov eax, dword [esi + 0x11c]
mov eax, dword [eax]
cmp eax, 5
jl 0x477084
add eax, 0xfffffffb
cmp eax, 0xa
ja 0x4770f7
cmp dword [ebp - 0x1064], 2
jne 0x4770f7
mov ecx, dword [edi + 0x188]
mov edx, ecx
imul eax, ecx, 0x980
cmp dword [eax + edi + 0x2f0], 9
jle 0x4770c3
cmp dword [esi + 0x110], 8
jne 0x4770c3
mov eax, dword [esi + 0x11c]
mov eax, dword [eax]
cmp eax, 5
jl 0x4770c3
cmp eax, 0xe
jge 0x4770c3
inc dword [esi + 0x118]
mov edx, dword [edi + 0x188]
mov eax, dword [esi + 0x118]
cmp eax, 1
jle 0x4770d7
dec eax
mov dword [esi + 0x118], eax
jmp 0x4770f7
imul eax, edx, 0x980
push esi
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e730
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e5f0
mov esi, eax
test esi, esi
jne 0x476ff3
mov esi, dword [ebp - 0x1040]
mov ecx, dword [esi + 0xc]
mov eax, dword [esi + 8]
test ecx, ecx
ja 0x4812a6
jb 0x47713b
cmp eax, 0x7530
jae 0x4812a6
movss xmm1, dword [ebp - 0x103c]
movaps xmm0, xmm1
movss xmm2, dword [ebp - 0x1044]
divss xmm0, dword [0x5d95c8]
comiss xmm2, xmm0
jbe 0x4812a6
mov eax, dword [0x636bc0]
mov edx, dword [esi + 4]
mov ecx, dword [esi]
movd xmm0, dword [eax + 0x98]
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
movss dword [ebp - 0x1014], xmm0
call fcn.0055f7d0
movss xmm1, dword [ebp - 0x1014]
cvtsd2ss xmm0, xmm0
addss xmm1, xmm0
xorps xmm0, xmm0
movlpd qword [ebp - 0x1018], xmm0
movss xmm0, dword [0x5dd45c]
comiss xmm1, xmm0
jb 0x4771d8
subss xmm1, xmm0
comiss xmm0, xmm1
jbe 0x4771d8
mov eax, dword [ebp - 0x1018]
add eax, 0
mov dword [ebp - 0x1010], eax
mov eax, dword [ebp - 0x1014]
adc eax, 0x80000000
mov dword [ebp - 0x1074], eax
jmp 0x4771f0
mov eax, dword [ebp - 0x1014]
mov dword [ebp - 0x1074], eax
mov eax, dword [ebp - 0x1018]
mov dword [ebp - 0x1010], eax
movaps xmm0, xmm1
call fcn.0055f550
mov edi, eax
mov eax, edx
add edi, dword [ebp - 0x1010]
mov dword [esi], edi
adc eax, dword [ebp - 0x1074]
mov dword [esi + 4], eax
mov ecx, dword [esi + 0xc]
push ecx
mov dword [ebp - 0x101c], eax
mov eax, dword [esi + 8]
push eax
push ecx
push eax
call fcn.00560560
mov esi, eax
mov ecx, edx
shld ecx, esi, 4
shl esi, 4
sub esi, eax
sbb ecx, edx
shld ecx, esi, 1
add esi, esi
cmp ecx, dword [ebp - 0x101c]
ja 0x4812a6
jb 0x47724d
cmp esi, edi
ja 0x4812a6
mov ecx, 0x88888889
mov eax, edi
mul ecx
mov esi, edx
mov dword [ebp - 0x1018], eax
mov eax, edi
mov edx, 0x88888888
mul edx
mov edi, eax
mov dword [ebp - 0x1064], edx
mov eax, dword [ebp - 0x101c]
mul ecx
mov dword [ebp - 0x1014], edx
mov ecx, eax
mov eax, dword [ebp - 0x101c]
mov edx, 0x88888888
mul edx
add ecx, esi
mov dword [ebp - 0x1074], edx
mov edx, dword [ebp - 0x1014]
adc edx, 0
mov dword [ebp - 0x1010], eax
mov esi, eax
add edi, ecx
mov ecx, dword [ebp - 0x1064]
adc ecx, 0
mov dword [ebp - 0x1018], edi
xor eax, eax
add edx, ecx
mov ecx, dword [ebp - 0x1074]
adc eax, eax
add esi, edx
adc ecx, eax
shrd esi, ecx, 4
shr ecx, 4
mov edx, ecx
mov ecx, esi
call fcn.0055f7d0
xorps xmm1, xmm1
ucomisd xmm1, xmm0
ja 0x4772e5
sqrtsd xmm0, xmm0
jmp 0x4772ea
call fcn.0059b9c0
movaps xmm1, xmm0
xorps xmm0, xmm0
addsd xmm1, qword [0x5d9060]
movlpd qword [ebp - 0x1018], xmm0
movsd xmm0, qword [0x5dd448]
comisd xmm1, xmm0
jb 0x47732f
subsd xmm1, xmm0
comisd xmm0, xmm1
jbe 0x47732f
mov esi, dword [ebp - 0x1018]
mov edi, dword [ebp - 0x1014]
add esi, 0
adc edi, 0x80000000
jmp 0x47733b
mov edi, dword [ebp - 0x1014]
mov esi, dword [ebp - 0x1018]
movaps xmm0, xmm1
call fcn.0055f720
add eax, esi
mov esi, dword [ebp - 0x1040]
push str.You_gained_a_skill_level__
adc edx, edi
mov dword [esi + 8], eax
lea eax, [ebp - 0x418]
push eax
mov dword [esi + 0xc], edx
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov ecx, dword [ebp - 0x106c]
imul eax, dword [ecx + 0x188], 0x980
movss xmm0, dword [eax + ecx + 0x300]
addss xmm0, dword [0x5dd360]
movss dword [eax + ecx + 0x300], xmm0
mov eax, dword [ebp - 0x1028]
mov ecx, dword [eax + 0x11c]
jmp 0x48128a
lea eax, [ebp - 0x418]
push str.BUG:_Cannot_find_skill_for_level.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov eax, dword [ebp - 0x1028]
mov ecx, dword [eax + 0x11c]
jmp 0x48128a
mov ecx, 0x5dbb10
lea eax, [edi + 0x260]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x477420
test dl, dl
je 0x47741c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x477420
add eax, 2
add ecx, 2
test dl, dl
jne 0x477400
xor eax, eax
jmp 0x477425
sbb eax, eax
or eax, 1
test eax, eax
je 0x47eb8a
mov ecx, 0x5dbb5c
lea eax, [edi + 0x260]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x477458
test dl, dl
je 0x477454
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x477458
add eax, 2
add ecx, 2
test dl, dl
jne 0x477438
xor eax, eax
jmp 0x47745d
sbb eax, eax
or eax, 1
test eax, eax
je 0x47eb8a
mov ecx, 0x5dbb24
lea eax, [edi + 0x260]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x477490
test dl, dl
je 0x47748c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x477490
add eax, 2
add ecx, 2
test dl, dl
jne 0x477470
xor eax, eax
jmp 0x477495
sbb eax, eax
or eax, 1
test eax, eax
je 0x47eb8a
mov ecx, 0x5dbb44
lea eax, [edi + 0x260]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4774c8
test dl, dl
je 0x4774c4
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4774c8
add eax, 2
add ecx, 2
test dl, dl
jne 0x4774a8
xor eax, eax
jmp 0x4774cd
sbb eax, eax
or eax, 1
test eax, eax
je 0x47eb8a
mov ecx, 0x5dbb6c
lea eax, [edi + 0x260]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x477500
test dl, dl
je 0x4774fc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x477500
add eax, 2
add ecx, 2
test dl, dl
jne 0x4774e0
xor eax, eax
jmp 0x477505
sbb eax, eax
or eax, 1
test eax, eax
je 0x47eb8a
mov ecx, 0x5dbb34
lea eax, [edi + 0x260]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x477538
test dl, dl
je 0x477534
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x477538
add eax, 2
add ecx, 2
test dl, dl
jne 0x477518
xor eax, eax
jmp 0x47753d
sbb eax, eax
or eax, 1
test eax, eax
je 0x47eb8a
mov ecx, 0x5dbae4
lea eax, [edi + 0x260]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x477570
test dl, dl
je 0x47756c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x477570
add eax, 2
add ecx, 2
test dl, dl
jne 0x477550
xor eax, eax
jmp 0x477575
sbb eax, eax
or eax, 1
test eax, eax
jne 0x478115
mov dword [ebp - 0x10ac], 0x3f800000
xorps xmm0, xmm0
mov dword [ebp - 0x10a8], 0x3f800000
mov dword [ebp - 0x10b0], 0x3f800000
mov dword [ebp - 0x1010], eax
mov dword [ebp - 0x1074], eax
imul eax, dword [edi + 0x188], 0x980
movss dword [ebp - 0x1020], xmm0
movss dword [ebp - 0x101c], xmm0
movss dword [ebp - 0x1034], xmm0
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e540
mov ecx, eax
test ecx, ecx
je 0x477708
xor esi, esi
nop word [eax + eax]
mov eax, dword [ecx + 0x110]
cmp eax, 0xb
jne 0x477642
mov eax, dword [ecx + 0x11c]
mov ecx, dword [ecx + 0x118]
add esi, ecx
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
movaps xmm0, xmm1
mulss xmm1, dword [eax + 4]
mulss xmm0, dword [eax + 8]
addss xmm1, dword [ebp - 0x101c]
addss xmm0, dword [ebp - 0x1020]
movss dword [ebp - 0x101c], xmm1
movss dword [ebp - 0x1020], xmm0
jmp 0x4776d9
cmp eax, 0xa
jne 0x4776d9
mov eax, dword [ecx + 0x11c]
xor ecx, ecx
mov eax, dword [eax]
test eax, eax
cmovns ecx, eax
lea eax, [ecx*8]
sub eax, ecx
add eax, eax
mov dword [ebp - 0x1014], eax
cmp eax, 0x163
jle 0x47769d
lea ecx, [eax - 0x164]
mov eax, 0x6c16c16d
mul ecx
sub ecx, edx
shr ecx, 1
add ecx, edx
shr ecx, 8
imul eax, ecx, 0x168
mov ecx, 0xfffffe98
sub ecx, eax
mov eax, dword [ebp - 0x1014]
add eax, ecx
lea ecx, [ebp - 0x10ac]
movd xmm0, eax
push ecx
lea ecx, [ebp - 0x10a8]
push ecx
lea ecx, [ebp - 0x10b0]
push ecx
sub esp, 0xc
cvtdq2ps xmm0, xmm0
mov dword [esp + 8], 0x3f800000
mov dword [esp + 4], 0x3f800000
movss dword [esp], xmm0
call fcn.0044d4c0
add esp, 0x18
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e5f0
mov ecx, eax
test ecx, ecx
jne 0x4775f0
mov dword [ebp - 0x1010], esi
mov esi, dword [ebp - 0x1028]
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e540
test eax, eax
je 0x477783
xor esi, esi
cmp dword [eax + 0x110], 0xc
jne 0x47775a
mov ecx, dword [eax + 0x11c]
mov eax, dword [eax + 0x118]
add esi, eax
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [ecx + 4]
addss xmm0, dword [ebp - 0x1034]
movss dword [ebp - 0x1034], xmm0
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e5f0
test eax, eax
jne 0x477727
mov dword [ebp - 0x1074], esi
mov esi, dword [ebp - 0x1028]
cmp dword [ebp - 0x1010], 0
movss xmm0, dword [ebp - 0x1034]
addss xmm0, dword [0x5d9058]
mulss xmm0, dword [ebp - 0x101c]
movss dword [ebp - 0x1034], xmm0
jg 0x4777b6
push str.Use_explosive_material_to_make_a_bomb.
jmp 0x48125e
imul eax, dword [edi + 0x188], 0x980
mov dword [ebp - 0x1044], 0
mov ecx, dword [eax + edi + 0x2e0]
add ecx, 8
call fcn.0044e540
mov dword [ebp - 0x1014], eax
test eax, eax
je 0x47810b
mov esi, eax
nop dword [eax]
mov ecx, esi
call fcn.0044ce00
lea ecx, [edi + 0x260]
nop dword [eax]
mov dl, byte [ecx]
cmp dl, byte [eax]
jne 0x477820
test dl, dl
je 0x47781c
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x477820
add ecx, 2
add eax, 2
test dl, dl
jne 0x477800
xor eax, eax
jmp 0x477825
sbb eax, eax
or eax, 1
test eax, eax
jne 0x477835
mov eax, dword [esi + 0x11c]
mov dword [ebp - 0x1044], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e0]
add ecx, 8
call fcn.0044e5f0
mov esi, eax
test esi, esi
jne 0x4777f0
mov esi, dword [ebp - 0x1028]
cmp dword [ebp - 0x1044], eax
je 0x47810b
mov ecx, edi
call fcn.00481c00
mov ecx, dword [ebp - 0x1044]
cdq
push dword [ecx + 0xc]
push dword [ecx + 8]
push edx
push eax
call fcn.00560560
mov ecx, eax
call fcn.0055f7d0
cvtsd2ss xmm0, xmm0
sub esp, 8
mov dword [esp + 4], 0x3fa66666
movss dword [ebp - 0x1014], xmm0
mov dword [esp], 0x3f333333
call fcn.004937b0
fmul dword [ebp - 0x1014]
add esp, 8
mov ecx, 0x637628
push esi
push 3
fstp dword [ebp - 0x1010]
call fcn.005358c0
test eax, eax
je 0x4778fa
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.00536390
test eax, eax
je 0x4778fa
movss xmm0, dword [ebp - 0x1010]
mulss xmm0, dword [0x5dd38c]
jmp 0x477902
movss xmm0, dword [ebp - 0x1010]
push esi
push 4
mov ecx, 0x637628
movss dword [ebp - 0x1030], xmm0
call fcn.005358c0
test eax, eax
je 0x477950
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.00536390
test eax, eax
je 0x477950
movss xmm0, dword [ebp - 0x1030]
mulss xmm0, dword [0x5dd38c]
movss dword [ebp - 0x1030], xmm0
push esi
push 5
mov ecx, 0x637628
call fcn.005358c0
test eax, eax
je 0x477998
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.00536390
movss xmm1, dword [ebp - 0x1030]
test eax, eax
je 0x4779a0
mulss xmm1, dword [0x5dd38c]
movss dword [ebp - 0x1030], xmm1
jmp 0x4779a0
movss xmm1, dword [ebp - 0x1030]
mov eax, dword [edi + 0x14f60]
test eax, eax
jle 0x4779cd
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x5dd364]
addss xmm0, dword [0x5d9058]
mulss xmm0, xmm1
movss dword [ebp - 0x1030], xmm0
movss xmm0, dword [ebp - 0x1034]
lea eax, [ebp - 0x418]
cvtps2pd xmm0, xmm0
sub esp, 8
movsd qword [esp], xmm0
push str.Task_difficulty_is__4.2f.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x20
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
movss xmm0, dword [ebp - 0x1030]
lea eax, [ebp - 0x418]
cvtps2pd xmm0, xmm0
sub esp, 8
movsd qword [esp], xmm0
push str.Your_work_value_was__4.2f.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x20
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
imul ecx, dword [edi + 0x188], 0x980
movss xmm0, dword [ebp - 0x1030]
mov ecx, dword [ecx + edi + 0x2dc]
add ecx, 8
comiss xmm0, dword [ebp - 0x1034]
jb 0x477feb
call fcn.0044e540
mov dword [ebp - 0x1014], eax
test eax, eax
je 0x477b2e
mov esi, eax
nop word [eax + eax]
mov eax, dword [esi + 0x110]
cmp eax, 0xb
je 0x477ae5
cmp eax, 0xc
je 0x477ae5
cmp eax, 0xa
jne 0x477b09
imul eax, dword [edi + 0x188], 0x980
push esi
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e730
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e5f0
mov esi, eax
test esi, esi
jne 0x477ad0
mov esi, dword [ebp - 0x1028]
movss xmm0, dword [ebp - 0x1020]
xor edi, edi
divss xmm0, dword [0x5d95c4]
cvttss2si ecx, xmm0
mov eax, 0x66666667
inc edi
imul ecx
sar edx, 2
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
test ecx, ecx
jg 0x477b44
mov eax, 0xe
cmp edi, eax
cmovg edi, eax
lea eax, [edi + edi*4]
lea eax, [eax*4 + str.Tiny]
push eax
lea eax, [ebp - 0x418]
push str._s_Bomb
push eax
call fcn.0043d380
push 0x120
call fcn.0055f3ea
add esp, 0x10
mov dword [ebp - 0x1014], eax
mov byte [ebp - 4], 3
test eax, eax
je 0x477bb7
lea ecx, [ebp - 0x418]
push ecx
push 0
push 0xd
mov ecx, eax
call fcn.00512b90
mov edx, eax
mov dword [ebp - 0x101c], eax
jmp 0x477bbf
xor edx, edx
mov dword [ebp - 0x101c], edx
movss xmm0, dword [ebp - 0x1034]
movss xmm1, dword [ebp - 0x1030]
addss xmm0, xmm0
mov ecx, dword [edx + 0x11c]
mov eax, dword [ebp - 0x1074]
movss xmm2, dword [ebp - 0x1020]
mov edi, dword [ebp - 0x106c]
divss xmm1, xmm0
lea eax, [eax + eax*2]
mov byte [ebp - 4], 0
movss dword [ecx], xmm2
xorps xmm0, xmm0
comiss xmm0, xmm1
mov dword [ecx + 0xc], eax
movss dword [ecx + 4], xmm1
jbe 0x477c16
mov dword [ecx + 4], 0
xorps xmm1, xmm1
comiss xmm1, dword [0x5d9058]
jbe 0x477c26
mov dword [ecx + 4], 0x3f800000
cmp eax, 1
jge 0x477c32
mov dword [ecx + 4], 0x3f800000
movss xmm1, dword [0x5da1b8]
addss xmm2, xmm2
push str.You_have_created_a
movss dword [edx + 0x10c], xmm2
movss xmm0, dword [ebp - 0x10b0]
mulss xmm0, xmm1
cvttss2si eax, xmm0
mov dword [ecx + 0x14], eax
movss xmm0, dword [ebp - 0x10a8]
mulss xmm0, xmm1
cvttss2si eax, xmm0
mov dword [ecx + 0x18], eax
movss xmm0, dword [ebp - 0x10ac]
mulss xmm0, xmm1
cvttss2si eax, xmm0
mov dword [ecx + 0x1c], eax
lea eax, [ebp - 0x418]
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
mov ecx, dword [ebp - 0x101c]
call fcn.0044ce00
push eax
lea eax, [ebp - 0x418]
push 0x5dbeac
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x1c
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
imul ecx, dword [edi + 0x188], 0x980
push dword [ebp - 0x101c]
mov ecx, dword [ecx + edi + 0x2d8]
call fcn.005137e0
mov eax, dword [0x636bc0]
mov esi, dword [ebp - 0x1044]
movd xmm0, dword [eax + 0x9c]
mov edx, dword [esi + 4]
mov ecx, dword [esi]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [ebp - 0x1034]
movss dword [ebp - 0x1014], xmm0
call fcn.0055f7d0
movss xmm1, dword [ebp - 0x1014]
cvtsd2ss xmm0, xmm0
addss xmm1, xmm0
xorps xmm0, xmm0
movlpd qword [ebp - 0x1018], xmm0
movss xmm0, dword [0x5dd45c]
comiss xmm1, xmm0
jb 0x477dc4
subss xmm1, xmm0
comiss xmm0, xmm1
jbe 0x477dc4
mov eax, dword [ebp - 0x1018]
add eax, 0
mov dword [ebp - 0x1010], eax
mov eax, dword [ebp - 0x1014]
adc eax, 0x80000000
mov dword [ebp - 0x1074], eax
jmp 0x477ddc
mov eax, dword [ebp - 0x1014]
mov dword [ebp - 0x1074], eax
mov eax, dword [ebp - 0x1018]
mov dword [ebp - 0x1010], eax
movaps xmm0, xmm1
call fcn.0055f550
add eax, dword [ebp - 0x1010]
mov edi, edx
mov dword [esi], eax
adc edi, dword [ebp - 0x1074]
mov dword [ebp - 0x101c], eax
mov dword [esi + 4], edi
mov eax, dword [esi + 0xc]
mov ecx, dword [esi + 8]
push eax
push ecx
push eax
push ecx
mov dword [ebp - 0x1020], edi
call fcn.00560560
mov ecx, eax
mov esi, 0x64
mov eax, edx
mul esi
mov esi, eax
mov eax, ecx
mov ecx, 0x64
mul ecx
add esi, edx
cmp esi, edi
ja 0x4812a6
mov ecx, dword [ebp - 0x101c]
jb 0x477e42
cmp eax, ecx
ja 0x4812a6
mov eax, ecx
mov edx, 0xe147ae15
mul edx
mov edi, 0x47ae147a
mov dword [ebp - 0x1018], eax
mov esi, edx
mov eax, ecx
mov ecx, 0xe147ae15
mul edi
mov edi, eax
mov dword [ebp - 0x1064], edx
mov eax, dword [ebp - 0x1020]
mul ecx
mov ecx, eax
mov dword [ebp - 0x1014], edx
mov eax, dword [ebp - 0x1020]
mov edx, 0x47ae147a
mul edx
add ecx, esi
mov esi, dword [ebp - 0x101c]
mov dword [ebp - 0x1074], edx
mov edx, dword [ebp - 0x1014]
adc edx, 0
mov dword [ebp - 0x1010], eax
add edi, ecx
mov ecx, dword [ebp - 0x1064]
mov dword [ebp - 0x1018], edi
adc ecx, 0
xor eax, eax
add edx, ecx
mov ecx, dword [ebp - 0x1010]
adc eax, eax
add ecx, edx
mov edx, dword [ebp - 0x1074]
adc edx, eax
mov eax, dword [ebp - 0x1020]
sub esi, ecx
sbb eax, edx
shrd esi, eax, 1
shr eax, 1
add ecx, esi
adc eax, edx
shrd ecx, eax, 6
shr eax, 6
mov edx, eax
call fcn.0055f7d0
xorps xmm1, xmm1
ucomisd xmm1, xmm0
ja 0x477efb
sqrtsd xmm0, xmm0
jmp 0x477f00
call fcn.0059b9c0
movaps xmm1, xmm0
xorps xmm0, xmm0
addsd xmm1, qword [0x5d9060]
movlpd qword [ebp - 0x1018], xmm0
movsd xmm0, qword [0x5dd448]
comisd xmm1, xmm0
jb 0x477f45
subsd xmm1, xmm0
comisd xmm0, xmm1
jbe 0x477f45
mov esi, dword [ebp - 0x1018]
mov edi, dword [ebp - 0x1014]
add esi, 0
adc edi, 0x80000000
jmp 0x477f51
mov edi, dword [ebp - 0x1014]
mov esi, dword [ebp - 0x1018]
movaps xmm0, xmm1
call fcn.0055f720
mov ecx, dword [ebp - 0x1044]
add eax, esi
push str.You_gained_a_skill_level__
adc edx, edi
mov dword [ecx + 8], eax
lea eax, [ebp - 0x418]
push eax
mov dword [ecx + 0xc], edx
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov eax, dword [ebp - 0x1028]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov ecx, dword [eax + 0x11c]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
mov ecx, dword [ebp - 0x106c]
imul eax, dword [ecx + 0x188], 0x980
movss xmm0, dword [eax + ecx + 0x300]
addss xmm0, dword [0x5dd368]
movss dword [eax + ecx + 0x300], xmm0
jmp 0x4812a6
mov dword [ebp - 0x1044], 0
call fcn.0044e540
mov dword [ebp - 0x1014], eax
test eax, eax
je 0x47807b
mov esi, eax
nop word [eax + eax]
mov eax, dword [esi + 0x110]
cmp eax, 0xb
je 0x478020
cmp eax, 0xc
jne 0x478056
imul eax, dword [edi + 0x188], 0x980
push esi
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e730
mov eax, dword [ebp - 0x1044]
mov ecx, esi
add eax, dword [esi + 0x118]
mov dword [ebp - 0x1044], eax
mov eax, dword [esi]
push 1
mov eax, dword [eax]
call eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e5f0
mov esi, eax
test esi, esi
jne 0x478010
mov esi, dword [ebp - 0x1028]
mov byte [ebp - 0x10d8], 0x47
mov ecx, esi
mov eax, dword [edi + 0x180]
mov dword [ebp - 0x10d7], eax
mov eax, 0x66666667
imul dword [ebp - 0x1044]
mov dword [ebp - 0x10d1], 0
sar edx, 2
mov eax, edx
mov dword [ebp - 0x10cd], 0
shr eax, 0x1f
add edx, 5
add eax, edx
push 0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x10c9], xmm0
mov al, byte [edi + 0x108]
mov byte [ebp - 0x10d3], al
mov al, byte [edi + 0x10c]
mov byte [ebp - 0x10d2], al
cvttss2si eax, xmm0
push eax
lea eax, [ebp - 0x10d8]
push eax
push 0x13
push dword [edi + 0x10c]
push dword [edi + 0x108]
push 0
call fcn.00531c80
jmp 0x4812a6
push str.BUG:_Cannot_find_skill_for_level.
jmp 0x48125e
mov ecx, 0x5dbafc
lea eax, [edi + 0x260]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x478140
test dl, dl
je 0x47813c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x478140
add eax, 2
add ecx, 2
test dl, dl
jne 0x478120
xor eax, eax
jmp 0x478145
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47a284
mov dword [ebp - 0x107c], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e540
test eax, eax
je 0x47a27a
xor esi, esi
cmp dword [eax + 0x110], 1
jne 0x4781a4
add esi, dword [eax + 0x118]
mov dword [ebp - 0x107c], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e5b0
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e5f0
test eax, eax
jne 0x478176
cmp esi, 1
mov esi, dword [ebp - 0x1028]
jl 0x47a27a
mov eax, dword [ebp - 0x107c]
cmp dword [eax + 0x118], 1
mov esi, dword [eax + 0x11c]
mov dword [ebp - 0x102c], esi
jle 0x47827b
push 0x120
call fcn.0055f3ea
add esp, 4
mov dword [ebp - 0x1014], eax
mov byte [ebp - 4], 4
test eax, eax
je 0x478224
push str.UNNAMED
push 0
push 0
mov ecx, eax
call fcn.00512b90
mov edx, eax
mov dword [ebp - 0x1010], eax
jmp 0x47822c
xor edx, edx
mov dword [ebp - 0x1010], edx
mov ecx, dword [ebp - 0x107c]
push edx
mov byte [ebp - 4], 0
mov eax, dword [ecx]
mov eax, dword [eax + 0x18]
call eax
mov ecx, dword [ebp - 0x107c]
mov edx, dword [ebp - 0x1010]
push edx
mov eax, dword [ecx + 0x118]
dec eax
mov dword [edx + 0x118], eax
mov dword [ecx + 0x118], 1
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e650
lea eax, [ebp - 0x1064]
mov ecx, edi
push eax
lea eax, [ebp - 0x1014]
push eax
push esi
call fcn.00481c20
mov ecx, esi
call fcn.00482f90
mov ecx, esi
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x1074], xmm0
call fcn.00482f90
cmp dword [esi + 0x1c], 0x19
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x1064], xmm0
movd xmm0, dword [esi]
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x1020], xmm0
jl 0x4782ea
mulss xmm0, dword [0x5d95c4]
divss xmm0, dword [0x5dd424]
movss dword [ebp - 0x1020], xmm0
cmp dword [esi + 0x3c], 2
jne 0x478300
subss xmm0, dword [0x5dd42c]
movss dword [ebp - 0x1020], xmm0
mov eax, dword [ebp - 0x1014]
add eax, 2
movss xmm0, dword [ebp - 0x1074]
addss xmm0, dword [0x5d9058]
mov dword [ebp - 0x1044], 0
movd xmm1, eax
mov eax, 0x66666667
imul dword [esi + 0x20]
cvtdq2ps xmm1, xmm1
sar edx, 1
mov eax, edx
mulss xmm1, xmm0
shr eax, 0x1f
inc edx
add eax, edx
movd xmm0, eax
mov eax, 0x66666667
imul dword [esi + 0x28]
cvtdq2ps xmm0, xmm0
sar edx, 1
mov eax, edx
mulss xmm1, xmm0
shr eax, 0x1f
inc edx
add eax, edx
movd xmm0, eax
mov eax, 0x66666667
imul dword [esi + 0x24]
cvtdq2ps xmm0, xmm0
mov eax, 0x66666667
sar edx, 1
mov ecx, edx
mulss xmm1, xmm0
inc edx
shr ecx, 0x1f
add ecx, edx
imul dword [esi + 0x2c]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
sar edx, 1
mov eax, edx
inc edx
shr eax, 0x1f
add eax, edx
mulss xmm1, xmm0
movd xmm0, eax
mov eax, dword [esi + 0x34]
cvtdq2ps xmm0, xmm0
inc eax
mulss xmm1, xmm0
movd xmm0, eax
imul eax, dword [edi + 0x188], 0x980
cvtdq2ps xmm0, xmm0
mulss xmm1, xmm0
mov ecx, dword [eax + edi + 0x2e0]
add ecx, 8
movss dword [ebp - 0x1030], xmm1
call fcn.0044e540
mov dword [ebp - 0x1014], eax
test eax, eax
je 0x4773b9
mov esi, eax
mov ecx, esi
call fcn.0044ce00
lea ecx, [edi + 0x260]
nop
mov dl, byte [ecx]
cmp dl, byte [eax]
jne 0x478410
test dl, dl
je 0x47840c
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x478410
add ecx, 2
add eax, 2
test dl, dl
jne 0x4783f0
xor eax, eax
jmp 0x478415
sbb eax, eax
or eax, 1
test eax, eax
jne 0x478425
mov eax, dword [esi + 0x11c]
mov dword [ebp - 0x1044], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e0]
add ecx, 8
call fcn.0044e5f0
mov esi, eax
test esi, esi
jne 0x4783e2
mov esi, dword [ebp - 0x102c]
cmp dword [ebp - 0x1044], eax
je 0x4773b9
mov ecx, edi
call fcn.00481c00
mov ecx, dword [ebp - 0x1044]
cdq
push dword [ecx + 0xc]
push dword [ecx + 8]
push edx
push eax
call fcn.00560560
mov ecx, eax
call fcn.0055f7d0
cvtsd2ss xmm0, xmm0
sub esp, 8
mov dword [esp + 4], 0x3f8ccccd
movss dword [ebp - 0x1014], xmm0
mov dword [esp], 0x3f666666
call fcn.004937b0
fmul dword [ebp - 0x1014]
add esp, 8
mov eax, dword [ebp - 0x1028]
mov ecx, 0x637628
push eax
fmul dword [0x5d9ff8]
push 1
fstp dword [ebp - 0x1010]
call fcn.005358c0
test eax, eax
je 0x4784fa
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [ebp - 0x1028]
add eax, 0x2a0
add eax, edi
push eax
call fcn.00536390
test eax, eax
je 0x4784fa
movss xmm0, dword [ebp - 0x1010]
mulss xmm0, dword [0x5dd38c]
jmp 0x478502
movss xmm0, dword [ebp - 0x1010]
push dword [ebp - 0x1028]
mov ecx, 0x637628
movss dword [ebp - 0x103c], xmm0
push 0
call fcn.005358c0
test eax, eax
je 0x478559
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [ebp - 0x1028]
add eax, 0x2a0
add eax, edi
push eax
call fcn.00536390
test eax, eax
je 0x478559
movss xmm0, dword [ebp - 0x103c]
mulss xmm0, dword [0x5dd38c]
movss dword [ebp - 0x103c], xmm0
push dword [ebp - 0x1028]
mov ecx, 0x637628
push 2
call fcn.005358c0
test eax, eax
je 0x4785aa
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [ebp - 0x1028]
add eax, 0x2a0
add eax, edi
push eax
call fcn.00536390
movss xmm1, dword [ebp - 0x103c]
test eax, eax
je 0x4785b2
mulss xmm1, dword [0x5dd38c]
movss dword [ebp - 0x103c], xmm1
jmp 0x4785b2
movss xmm1, dword [ebp - 0x103c]
mov eax, dword [edi + 0x14f60]
test eax, eax
jle 0x4785df
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x5dd364]
addss xmm0, dword [0x5d9058]
mulss xmm0, xmm1
movss dword [ebp - 0x103c], xmm0
movss xmm0, dword [ebp - 0x1030]
lea eax, [ebp - 0x418]
cvtps2pd xmm0, xmm0
sub esp, 8
movsd qword [esp], xmm0
push str.This_weapons_complexity_is__4.2f.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov eax, dword [ebp - 0x1028]
lea edx, [ebp - 0x105c]
add esp, 0x20
mov ecx, dword [eax + 0x11c]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
movss xmm0, dword [ebp - 0x103c]
lea eax, [ebp - 0x418]
cvtps2pd xmm0, xmm0
sub esp, 8
movsd qword [esp], xmm0
push str.Your_work_value_was__4.2f.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov eax, dword [ebp - 0x1028]
lea edx, [ebp - 0x105c]
add esp, 0x20
mov ecx, dword [eax + 0x11c]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
cmp dword [esi + 0x3c], 5
jle 0x478f3b
push 0x40
push 0
push dword [esi + 0x78]
call fcn.0044d080
push 0x40
mov dword [esi + 0x78], eax
push 0
push dword [esi + 0x74]
call fcn.0044d080
push 0x40
mov dword [esi + 0x74], eax
push 0
push dword [esi + 0x70]
call fcn.0044d080
push 0x40
mov dword [esi + 0x70], eax
push 0
push dword [esi + 0x6c]
call fcn.0044d080
push 0x40
mov dword [esi + 0x6c], eax
push 0
push dword [esi + 0x68]
call fcn.0044d080
push 0x40
mov dword [esi + 0x68], eax
push 0
push dword [esi + 0x64]
call fcn.0044d080
add esp, 0x48
mov dword [esi + 0x64], eax
push 0x40
push 0
push dword [esi + 0x60]
call fcn.0044d080
push 0x40
mov dword [esi + 0x60], eax
push 0
push dword [esi + 0x5c]
call fcn.0044d080
push 0x40
mov dword [esi + 0x5c], eax
push 0
push dword [esi + 0x58]
call fcn.0044d080
push 0x40
mov dword [esi + 0x58], eax
push 0
push dword [esi + 0x54]
call fcn.0044d080
push 0x40
mov dword [esi + 0x54], eax
push 0
push dword [esi + 0x50]
call fcn.0044d080
push 0x40
mov dword [esi + 0x50], eax
push 0
push dword [esi + 0x4c]
call fcn.0044d080
add esp, 0x48
mov dword [esi + 0x4c], eax
push 0x40
push 0
push dword [esi + 0x48]
call fcn.0044d080
push 0x40
mov dword [esi + 0x48], eax
push 0
push dword [esi + 0x44]
call fcn.0044d080
push 0x40
mov dword [esi + 0x44], eax
push 0
push dword [esi + 0x40]
call fcn.0044d080
add esp, 0x24
mov dword [esi + 0x40], eax
cmp dword [esi + 0x3c], 5
jle 0x478f3b
movss xmm0, dword [ebp - 0x103c]
divss xmm0, dword [0x5db14c]
movss xmm1, dword [ebp - 0x1030]
divss xmm0, xmm1
comiss xmm0, dword [0x5d9058]
jb 0x478f43
mov edx, dword [esi + 0x40]
mov eax, 1
cmp edx, eax
mov dword [ebp - 0x1010], 0xffffffff
cmovge eax, edx
xor ecx, ecx
cmp edx, 1
setge cl
xor edx, edx
dec ecx
cmp dword [esi + 0x40], 1
setge dl
lea edx, [edx*2 - 1]
mov dword [ebp - 0x1014], edx
mov edx, dword [esi + 0x44]
cmp edx, eax
jl 0x47881a
mov dword [ebp - 0x1010], ecx
mov ecx, 1
cmp dword [esi + 0x44], eax
mov dword [ebp - 0x101c], ecx
cmovl edx, eax
cmovl eax, dword [ebp - 0x1014]
cmp dword [esi + 0x48], edx
jl 0x478839
mov eax, edx
mov ecx, 2
mov edi, dword [esi + 0x48]
cmp edi, edx
mov esi, dword [ebp - 0x101c]
cmovl esi, dword [ebp - 0x1010]
mov dword [ebp - 0x101c], esi
mov esi, dword [ebp - 0x102c]
mov dword [ebp - 0x1020], ecx
cmp dword [esi + 0x48], edx
cmovl edi, edx
mov edx, edi
mov dword [ebp - 0x1014], edi
cmp dword [esi + 0x4c], edx
jl 0x478877
mov eax, edx
mov ecx, 3
mov edi, dword [esi + 0x4c]
cmp edi, edx
mov esi, dword [ebp - 0x1020]
cmovl esi, dword [ebp - 0x101c]
mov dword [ebp - 0x1020], esi
mov esi, dword [ebp - 0x102c]
mov dword [ebp - 0x1038], ecx
cmp dword [esi + 0x4c], edx
cmovl edi, edx
mov edx, edi
mov dword [ebp - 0x1014], edi
cmp dword [esi + 0x50], edx
jl 0x4788b5
mov eax, edx
mov ecx, 4
mov edi, dword [esi + 0x50]
cmp edi, edx
mov esi, dword [ebp - 0x1038]
cmovl esi, dword [ebp - 0x1020]
mov dword [ebp - 0x1038], esi
mov esi, dword [ebp - 0x102c]
mov dword [ebp - 0x101c], ecx
cmp dword [esi + 0x50], edx
cmovl edi, edx
mov edx, edi
mov dword [ebp - 0x1014], edi
cmp dword [esi + 0x54], edx
jl 0x4788f3
mov eax, edx
mov ecx, 5
mov edi, dword [esi + 0x54]
cmp edi, edx
mov esi, dword [ebp - 0x101c]
cmovl esi, dword [ebp - 0x1038]
mov dword [ebp - 0x101c], esi
mov esi, dword [ebp - 0x102c]
mov dword [ebp - 0x1020], ecx
cmp dword [esi + 0x54], edx
cmovl edi, edx
mov edx, edi
mov dword [ebp - 0x1014], edi
cmp dword [esi + 0x58], edx
jl 0x478931
mov eax, edx
mov ecx, 6
mov edi, dword [esi + 0x58]
cmp edi, edx
mov esi, dword [ebp - 0x1020]
cmovl esi, dword [ebp - 0x101c]
mov dword [ebp - 0x1020], esi
mov esi, dword [ebp - 0x102c]
mov dword [ebp - 0x1038], ecx
cmp dword [esi + 0x58], edx
cmovl edi, edx
mov edx, edi
mov dword [ebp - 0x1014], edi
cmp dword [esi + 0x5c], edx
jl 0x47896f
mov eax, edx
mov ecx, 7
mov edi, dword [esi + 0x5c]
cmp edi, edx
mov esi, dword [ebp - 0x1038]
cmovl esi, dword [ebp - 0x1020]
mov dword [ebp - 0x1038], esi
mov esi, dword [ebp - 0x102c]
mov dword [ebp - 0x101c], ecx
cmp dword [esi + 0x5c], edx
cmovl edi, edx
mov edx, edi
mov dword [ebp - 0x1014], edi
cmp dword [esi + 0x60], edx
jl 0x4789ad
mov eax, edx
mov ecx, 8
mov edi, dword [esi + 0x60]
cmp edi, edx
mov esi, dword [ebp - 0x101c]
cmovl esi, dword [ebp - 0x1038]
mov dword [ebp - 0x101c], esi
mov esi, dword [ebp - 0x102c]
mov dword [ebp - 0x1020], ecx
cmp dword [esi + 0x60], edx
cmovl edi, edx
mov edx, edi
mov dword [ebp - 0x1014], edi
cmp dword [esi + 0x64], edx
jl 0x4789eb
mov eax, edx
mov ecx, 9
mov edi, dword [esi + 0x64]
cmp edi, edx
mov esi, dword [ebp - 0x1020]
cmovl esi, dword [ebp - 0x101c]
mov dword [ebp - 0x1020], esi
mov esi, dword [ebp - 0x102c]
mov dword [ebp - 0x1038], ecx
cmp dword [esi + 0x64], edx
cmovl edi, edx
mov edx, edi
mov dword [ebp - 0x1014], edi
cmp dword [esi + 0x68], edx
jl 0x478a29
mov eax, edx
mov ecx, 0xa
mov edi, dword [esi + 0x68]
cmp edi, edx
mov esi, dword [ebp - 0x1038]
cmovl esi, dword [ebp - 0x1020]
mov dword [ebp - 0x1038], esi
mov esi, dword [ebp - 0x102c]
mov dword [ebp - 0x101c], ecx
cmp dword [esi + 0x68], edx
cmovl edi, edx
mov edx, edi
mov dword [ebp - 0x1014], edi
cmp dword [esi + 0x6c], edx
jl 0x478a67
mov eax, edx
mov ecx, 0xb
mov edi, dword [esi + 0x6c]
cmp edi, edx
mov esi, dword [ebp - 0x101c]
cmovl esi, dword [ebp - 0x1038]
mov dword [ebp - 0x101c], esi
mov esi, dword [ebp - 0x102c]
mov dword [ebp - 0x1050], ecx
cmp dword [esi + 0x6c], edx
cmovl edi, edx
mov edx, edi
mov dword [ebp - 0x1014], edi
cmp dword [esi + 0x70], edx
jl 0x478aa5
mov eax, edx
mov ecx, 0xc
mov edi, dword [esi + 0x70]
cmp edi, edx
mov esi, dword [ebp - 0x1050]
cmovl esi, dword [ebp - 0x101c]
mov dword [ebp - 0x1050], esi
mov esi, dword [ebp - 0x102c]
mov dword [ebp - 0x1038], ecx
cmp dword [esi + 0x70], edx
cmovl edi, edx
mov edx, edi
mov dword [ebp - 0x1020], edi
cmp dword [esi + 0x74], edx
jl 0x478ae3
mov eax, edx
mov ecx, 0xd
mov edi, dword [esi + 0x74]
cmp edi, dword [ebp - 0x1020]
mov edx, dword [ebp - 0x1038]
cmovl edx, dword [ebp - 0x1050]
cmp edi, dword [ebp - 0x1020]
mov dword [ebp - 0x1038], edx
mov edx, ecx
cmovl edi, dword [ebp - 0x1020]
mov dword [ebp - 0x102c], ecx
mov dword [ebp - 0x1010], edi
cmp dword [esi + 0x78], edi
jl 0x478b26
mov eax, edi
mov ecx, 0xe
mov edi, dword [esi + 0x78]
cmp edi, dword [ebp - 0x1010]
cmovl edx, dword [ebp - 0x1038]
cmp edi, eax
mov edi, dword [ebp - 0x106c]
mov dword [ebp - 0x102c], edx
jle 0x478b5f
mov dword [ebp - 0x102c], edx
cmp ecx, 0xe
je 0x478b5f
mov eax, dword [esi + 0x78]
mov edx, 0xe
mov dword [ebp - 0x102c], edx
cmp dword [esi + 0x74], eax
jle 0x478b77
cmp ecx, 0xd
je 0x478b77
mov eax, dword [esi + 0x74]
mov edx, 0xd
mov dword [ebp - 0x102c], edx
cmp dword [esi + 0x70], eax
jle 0x478b8f
cmp ecx, 0xc
je 0x478b8f
mov eax, dword [esi + 0x70]
mov edx, 0xc
mov dword [ebp - 0x102c], edx
cmp dword [esi + 0x6c], eax
jle 0x478ba7
cmp ecx, 0xb
je 0x478ba7
mov eax, dword [esi + 0x6c]
mov edx, 0xb
mov dword [ebp - 0x102c], edx
cmp dword [esi + 0x68], eax
jle 0x478bbf
cmp ecx, 0xa
je 0x478bbf
mov eax, dword [esi + 0x68]
mov edx, 0xa
mov dword [ebp - 0x102c], edx
cmp dword [esi + 0x64], eax
jle 0x478bd7
cmp ecx, 9
je 0x478bd7
mov eax, dword [esi + 0x64]
mov edx, 9
mov dword [ebp - 0x102c], edx
cmp dword [esi + 0x60], eax
jle 0x478bef
cmp ecx, 8
je 0x478bef
mov eax, dword [esi + 0x60]
mov edx, 8
mov dword [ebp - 0x102c], edx
cmp dword [esi + 0x5c], eax
jle 0x478c07
cmp ecx, 7
je 0x478c07
mov eax, dword [esi + 0x5c]
mov edx, 7
mov dword [ebp - 0x102c], edx
cmp dword [esi + 0x58], eax
jle 0x478c1f
cmp ecx, 6
je 0x478c1f
mov eax, dword [esi + 0x58]
mov edx, 6
mov dword [ebp - 0x102c], edx
cmp dword [esi + 0x54], eax
jle 0x478c37
cmp ecx, 5
je 0x478c37
mov eax, dword [esi + 0x54]
mov edx, 5
mov dword [ebp - 0x102c], edx
cmp dword [esi + 0x50], eax
jle 0x478c4f
cmp ecx, 4
je 0x478c4f
mov eax, dword [esi + 0x50]
mov edx, 4
mov dword [ebp - 0x102c], edx
cmp dword [esi + 0x4c], eax
jle 0x478c67
cmp ecx, 3
je 0x478c67
mov eax, dword [esi + 0x4c]
mov edx, 3
mov dword [ebp - 0x102c], edx
cmp dword [esi + 0x48], eax
jle 0x478c7f
cmp ecx, 2
je 0x478c7f
mov eax, dword [esi + 0x48]
mov edx, 2
mov dword [ebp - 0x102c], edx
cmp dword [esi + 0x44], eax
jle 0x478c97
cmp ecx, 1
je 0x478c97
mov eax, dword [esi + 0x44]
mov edx, 1
mov dword [ebp - 0x102c], edx
cmp dword [esi + 0x40], eax
jle 0x478ca8
test ecx, ecx
je 0x478cb8
xor edx, edx
mov dword [ebp - 0x102c], edx
test ecx, ecx
jns 0x478cb8
xor ecx, ecx
mov dword [esi + 0x34], ecx
mov dword [esi + 4], 1
imul eax, ecx, 0x13
lea ecx, [ebp - 0x418]
lea eax, [eax + 0x619288]
cmp edx, 0xffffffff
jle 0x478d2c
push ecx
push 0x5d8428
push eax
call fcn.0043dd20
lea ecx, [ebp - 0x418]
add esp, 0xc
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x478ce4
sub ecx, edx
lea eax, [ebp - 0x418]
add eax, ecx
push str.__WXZQPNS
push eax
call fcn.0043d380
lea ecx, [ebp - 0x418]
add esp, 8
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x478d10
imul eax, dword [ebp - 0x102c], 0x13
sub ecx, edx
lea ecx, [ebp + ecx - 0x418]
add eax, 0x619288
push ecx
push 0x5d8428
push eax
call fcn.0043dd20
lea ecx, [ebp - 0x418]
add esp, 0xc
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x478d44
sub ecx, edx
lea eax, [ebp - 0x418]
add eax, ecx
push 0x5dbe94
push eax
call fcn.0043d380
add esp, 8
xor ecx, ecx
nop word [eax + eax]
lea eax, [ecx + ecx*8]
cmp dword [eax*8 + 0x618a78], 0x40
jg 0x478d89
mov eax, 6
inc ecx
cmp ecx, eax
jl 0x478d70
jmp 0x478d8c
lea eax, [ecx - 1]
xor edx, edx
lea ecx, [ebp - 0x418]
test eax, eax
cmovns edx, eax
mov eax, 5
cmp edx, eax
cmovg edx, eax
lea eax, [ecx + 1]
mov dword [ebp - 0x1014], eax
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x478db0
sub ecx, dword [ebp - 0x1014]
lea eax, [edx + edx*8]
lea eax, [eax*8 + str.Dirk]
push eax
lea eax, [ebp - 0x418]
add eax, ecx
push eax
call fcn.0043d380
push 0x120
call fcn.0055f3ea
add esp, 0xc
mov dword [ebp - 0x1014], eax
mov byte [ebp - 4], 5
test eax, eax
je 0x478e07
lea ecx, [ebp - 0x418]
push ecx
push 0
push 1
mov ecx, eax
call fcn.00512b90
mov edx, eax
jmp 0x478e09
xor edx, edx
mov ecx, dword [edx + 0x11c]
mov eax, dword [esi]
push edx
mov byte [ebp - 4], 0
mov dword [ecx], eax
mov eax, dword [ebp - 0x107c]
mov eax, dword [eax + 0x10c]
mov dword [edx + 0x10c], eax
mov eax, dword [esi + 0x10]
mov dword [ecx + 0x10], eax
mov eax, dword [esi + 0x14]
mov dword [ecx + 0x14], eax
mov eax, dword [esi + 0x18]
mov dword [ecx + 0x18], eax
mov eax, dword [esi + 4]
mov dword [ecx + 4], eax
mov dword [ecx + 8], 0x40a00000
mov eax, dword [esi + 0x20]
mov dword [ecx + 0x20], eax
mov eax, dword [esi + 0x2c]
mov dword [ecx + 0x2c], eax
mov eax, dword [esi + 0x28]
mov dword [ecx + 0x28], eax
mov eax, dword [esi + 0x24]
mov dword [ecx + 0x24], eax
mov eax, dword [esi + 0x30]
mov dword [ecx + 0x30], eax
mov eax, dword [esi + 0x34]
mov dword [ecx + 0x34], eax
mov eax, dword [esi + 0x40]
mov dword [ecx + 0x40], eax
mov eax, dword [esi + 0x44]
mov dword [ecx + 0x44], eax
mov eax, dword [esi + 0x48]
mov dword [ecx + 0x48], eax
mov eax, dword [esi + 0x4c]
mov dword [ecx + 0x4c], eax
mov eax, dword [esi + 0x50]
mov dword [ecx + 0x50], eax
mov eax, dword [esi + 0x54]
mov dword [ecx + 0x54], eax
mov eax, dword [esi + 0x58]
mov dword [ecx + 0x58], eax
mov eax, dword [esi + 0x5c]
mov dword [ecx + 0x5c], eax
mov eax, dword [esi + 0x60]
mov dword [ecx + 0x60], eax
mov eax, dword [esi + 0x64]
mov dword [ecx + 0x64], eax
mov eax, dword [esi + 0x68]
mov dword [ecx + 0x68], eax
mov eax, dword [esi + 0x6c]
mov dword [ecx + 0x6c], eax
mov eax, dword [esi + 0x70]
mov dword [ecx + 0x70], eax
mov eax, dword [esi + 0x74]
mov dword [ecx + 0x74], eax
mov eax, dword [esi + 0x78]
mov dword [ecx + 0x78], eax
mov eax, dword [esi + 0x1c]
mov dword [ecx + 0x1c], eax
imul ecx, dword [edi + 0x188], 0x980
mov ecx, dword [ecx + edi + 0x2d8]
call fcn.005137e0
lea eax, [ebp - 0x418]
push str.You_have_recovered_the_greatsword.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov esi, dword [ebp - 0x1028]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov ecx, dword [esi + 0x11c]
push edx
mov eax, dword [ecx]
mov eax, dword [eax + 4]
lea edx, [ebp - 0xfc8]
push 0
push edx
push 0x65
call eax
jmp 0x479ee1
movss xmm1, dword [ebp - 0x1030]
movss xmm2, dword [ebp - 0x1074]
movaps xmm0, xmm2
mulss xmm0, dword [0x5dd384]
cvttss2si eax, xmm0
movaps xmm0, xmm2
mulss xmm0, dword [0x5d95bc]
push eax
cvttss2si eax, xmm0
movss xmm0, dword [ebp - 0x103c]
divss xmm0, dword [0x5d9e68]
push eax
divss xmm0, xmm1
mulss xmm0, xmm2
cvttss2si eax, xmm0
push eax
call fcn.0044d080
xorps xmm0, xmm0
movsd xmm1, qword [0x5dd3d0]
movups xmmword [ebp - 0xf10], xmm0
mov ecx, eax
add esp, 0xc
movups xmmword [ebp - 0xf00], xmm0
mov dword [ebp - 0x1014], ecx
movups xmmword [ebp - 0xef0], xmm0
mov dword [ebp - 0xeb0], 0
movups xmmword [ebp - 0xee0], xmm0
movups xmmword [ebp - 0xed0], xmm0
movups xmmword [ebp - 0xec0], xmm0
movd xmm0, dword [esi + 0x78]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esi + 0x78], eax
movd xmm0, dword [esi + 0x74]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esi + 0x74], eax
movd xmm0, dword [esi + 0x70]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esi + 0x70], eax
movd xmm0, dword [esi + 0x6c]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esi + 0x6c], eax
movd xmm0, dword [esi + 0x68]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esi + 0x68], eax
movd xmm0, dword [esi + 0x64]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esi + 0x64], eax
movd xmm0, dword [esi + 0x60]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esi + 0x60], eax
movd xmm0, dword [esi + 0x5c]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esi + 0x5c], eax
movd xmm0, dword [esi + 0x58]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esi + 0x58], eax
movd xmm0, dword [esi + 0x54]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esi + 0x54], eax
movd xmm0, dword [esi + 0x50]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm1
mov dword [ebp - 0x1074], 0
cvttsd2si eax, xmm0
mov dword [esi + 0x50], eax
movd xmm0, dword [esi + 0x4c]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esi + 0x4c], eax
movd xmm0, dword [esi + 0x48]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esi + 0x48], eax
movd xmm0, dword [esi + 0x44]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esi + 0x44], eax
movd xmm0, dword [esi + 0x40]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esi + 0x40], eax
test ecx, ecx
jle 0x479344
mov eax, dword [esi + 0x78]
test eax, eax
je 0x47912a
dec eax
mov ecx, 0xf
mov dword [esi + 0x78], eax
jmp 0x479240
mov eax, dword [esi + 0x74]
test eax, eax
je 0x47913f
dec eax
mov ecx, 0xe
mov dword [esi + 0x74], eax
jmp 0x479240
mov eax, dword [esi + 0x70]
test eax, eax
je 0x479154
dec eax
mov ecx, 0xd
mov dword [esi + 0x70], eax
jmp 0x479240
mov eax, dword [esi + 0x6c]
test eax, eax
je 0x479169
dec eax
mov ecx, 0xc
mov dword [esi + 0x6c], eax
jmp 0x479240
mov eax, dword [esi + 0x68]
test eax, eax
je 0x47917e
dec eax
mov ecx, 0xb
mov dword [esi + 0x68], eax
jmp 0x479240
mov eax, dword [esi + 0x64]
test eax, eax
je 0x479193
dec eax
mov ecx, 0xa
mov dword [esi + 0x64], eax
jmp 0x479240
mov eax, dword [esi + 0x60]
test eax, eax
je 0x4791a8
dec eax
mov ecx, 9
mov dword [esi + 0x60], eax
jmp 0x479240
mov eax, dword [esi + 0x5c]
test eax, eax
je 0x4791bd
dec eax
mov ecx, 8
mov dword [esi + 0x5c], eax
jmp 0x479240
mov eax, dword [esi + 0x58]
test eax, eax
je 0x4791d2
dec eax
mov ecx, 7
mov dword [esi + 0x58], eax
jmp 0x479240
mov eax, dword [esi + 0x54]
test eax, eax
je 0x4791e4
dec eax
mov ecx, 6
mov dword [esi + 0x54], eax
jmp 0x479240
mov eax, dword [esi + 0x50]
test eax, eax
je 0x4791f6
dec eax
mov ecx, 5
mov dword [esi + 0x50], eax
jmp 0x479240
mov eax, dword [esi + 0x4c]
test eax, eax
je 0x479208
dec eax
mov ecx, 4
mov dword [esi + 0x4c], eax
jmp 0x479240
mov eax, dword [esi + 0x48]
test eax, eax
je 0x47921a
dec eax
mov ecx, 3
mov dword [esi + 0x48], eax
jmp 0x479240
mov eax, dword [esi + 0x44]
test eax, eax
je 0x47922c
dec eax
mov ecx, 2
mov dword [esi + 0x44], eax
jmp 0x479240
mov eax, dword [esi + 0x40]
test eax, eax
je 0x479344
dec eax
mov ecx, 1
mov dword [esi + 0x40], eax
imul eax, ecx, 0x13
mov dword [ebp - 0x104c], ecx
lea eax, [eax + 0x619275]
push eax
lea eax, [ebp - 0x418]
push str._s_Ingot
push eax
call fcn.0043d380
push 0x120
call fcn.0055f3ea
add esp, 0x10
mov dword [ebp - 0x1084], eax
mov byte [ebp - 4], 6
test eax, eax
je 0x479290
lea ecx, [ebp - 0x418]
push ecx
push 0
push 4
mov ecx, eax
call fcn.00512b90
jmp 0x479292
xor eax, eax
mov edx, dword [eax + 0x11c]
mov dword [ebp - 0x1010], eax
mov eax, dword [ebp - 0x104c]
mov byte [ebp - 4], 0
movd xmm0, eax
lea ecx, [eax + eax*2]
cvtdq2ps xmm0, xmm0
movss dword [edx + 0xc], xmm0
movss dword [edx + 0x10], xmm0
mov eax, dword [ecx*4 + 0x619414]
mov dword [edx], eax
mov eax, dword [ecx*4 + 0x619418]
mov dword [edx + 4], eax
mov eax, dword [ecx*4 + 0x61941c]
mov ecx, dword [ebp - 0x1010]
mov dword [edx + 8], eax
mov eax, dword [ebp - 0x104c]
push ecx
mov dword [ecx + 0x108], 0x3f800000
movd xmm0, dword [eax*4 + 0x6193e0]
inc dword [ebp + eax*4 - 0xf14]
cvtdq2ps xmm0, xmm0
movss dword [ecx + 0x10c], xmm0
mov dword [ecx + 0x118], 1
imul ecx, dword [edi + 0x188], 0x980
mov ecx, dword [ecx + edi + 0x2d8]
call fcn.005137e0
mov ecx, dword [ebp - 0x1074]
inc ecx
mov dword [ebp - 0x1074], ecx
cmp ecx, dword [ebp - 0x1014]
jl 0x479115
mov edi, dword [ebp - 0x1028]
lea eax, [ebp - 0xf10]
mov esi, 0x619288
mov dword [ebp - 0x1010], eax
nop dword [eax + eax]
mov ecx, dword [eax]
test ecx, ecx
jle 0x4793bb
push esi
push ecx
lea eax, [ebp - 0x418]
push str.You_recover__d__s_Ingots.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov ecx, dword [edi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x20
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
mov eax, dword [ebp - 0x1010]
add eax, 4
add esi, 0x13
mov dword [ebp - 0x1010], eax
cmp esi, 0x619463
jl 0x479360
movss xmm2, dword [ebp - 0x103c]
divss xmm2, dword [0x5d95c4]
mov esi, dword [ebp - 0x102c]
mov dword [ebp - 0x1034], 0
movd xmm1, dword [esi + 0x24]
divss xmm2, dword [ebp - 0x1030]
cvtdq2ps xmm1, xmm1
movss dword [ebp - 0x1040], xmm2
movaps xmm0, xmm1
mulss xmm0, dword [0x5dd384]
cvttss2si eax, xmm0
movaps xmm0, xmm1
mulss xmm0, dword [0x5dd374]
push eax
cvttss2si eax, xmm0
movaps xmm0, xmm2
mulss xmm0, xmm1
push eax
cvttss2si eax, xmm0
push eax
call fcn.0044d080
mov edi, dword [ebp - 0x106c]
add esp, 0xc
movd xmm0, eax
mov eax, dword [esi + 0x24]
cvtdq2ps xmm0, xmm0
mov dword [ebp - 0x1024], eax
comiss xmm0, dword [0x5d9058]
movss dword [ebp - 0x1014], xmm0
jb 0x47954b
push 0x120
call fcn.0055f3ea
add esp, 4
mov dword [ebp - 0x1010], eax
mov byte [ebp - 4], 7
test eax, eax
je 0x479495
push 0x5dad34
push 0
push 8
mov ecx, eax
call fcn.00512b90
mov ecx, eax
jmp 0x479497
xor ecx, ecx
mov eax, dword [ecx + 0x11c]
cvttss2si esi, dword [ebp - 0x1014]
push ecx
mov byte [ebp - 4], 0
mov dword [eax], 3
mov dword [eax + 4], 1
mov dword [ecx + 0x108], 0
mov dword [ecx + 0x10c], 0x447a0000
mov dword [ecx + 0x118], esi
imul ecx, dword [edi + 0x188], 0x980
mov ecx, dword [ecx + edi + 0x2d8]
call fcn.005137e0
push esi
lea eax, [ebp - 0x418]
mov dword [ebp - 0x1034], 1
push str.You_recover__d_Glowing_White_Dust.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov eax, dword [ebp - 0x1028]
lea edx, [ebp - 0x105c]
add esp, 0x1c
mov ecx, dword [eax + 0x11c]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
mov esi, dword [ebp - 0x102c]
movd xmm1, dword [esi + 0x28]
cvtdq2ps xmm1, xmm1
movaps xmm0, xmm1
mulss xmm0, dword [0x5dd384]
cvttss2si eax, xmm0
movaps xmm0, xmm1
mulss xmm1, dword [ebp - 0x1040]
push eax
mulss xmm0, dword [0x5dd374]
cvttss2si eax, xmm0
push eax
cvttss2si eax, xmm1
push eax
call fcn.0044d080
add esp, 0xc
movd xmm0, eax
mov eax, dword [ebp - 0x1024]
add eax, dword [esi + 0x28]
cvtdq2ps xmm0, xmm0
mov dword [ebp - 0x1024], eax
comiss xmm0, dword [0x5d9058]
movss dword [ebp - 0x1014], xmm0
jb 0x479698
push 0x120
call fcn.0055f3ea
add esp, 4
mov dword [ebp - 0x1010], eax
mov byte [ebp - 4], 8
test eax, eax
je 0x4795e2
push 0x5dad0c
push 0
push 8
mov ecx, eax
call fcn.00512b90
mov ecx, eax
jmp 0x4795e4
xor ecx, ecx
mov eax, dword [ecx + 0x11c]
cvttss2si esi, dword [ebp - 0x1014]
push ecx
mov byte [ebp - 4], 0
mov dword [eax], 4
mov dword [eax + 4], 1
mov dword [ecx + 0x108], 0
mov dword [ecx + 0x10c], 0x447a0000
mov dword [ecx + 0x118], esi
imul ecx, dword [edi + 0x188], 0x980
mov ecx, dword [ecx + edi + 0x2d8]
call fcn.005137e0
push esi
lea eax, [ebp - 0x418]
mov dword [ebp - 0x1034], 1
push str.You_recover__d_Glowing_Red_Dust.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov eax, dword [ebp - 0x1028]
lea edx, [ebp - 0x105c]
add esp, 0x1c
mov ecx, dword [eax + 0x11c]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
mov esi, dword [ebp - 0x102c]
movd xmm1, dword [esi + 0x2c]
cvtdq2ps xmm1, xmm1
movaps xmm0, xmm1
mulss xmm0, dword [0x5dd384]
cvttss2si eax, xmm0
movaps xmm0, xmm1
mulss xmm1, dword [ebp - 0x1040]
push eax
mulss xmm0, dword [0x5dd374]
cvttss2si eax, xmm0
push eax
cvttss2si eax, xmm1
push eax
call fcn.0044d080
add esp, 0xc
movd xmm0, eax
mov eax, dword [ebp - 0x1024]
add eax, dword [esi + 0x2c]
cvtdq2ps xmm0, xmm0
mov dword [ebp - 0x1024], eax
comiss xmm0, dword [0x5d9058]
movss dword [ebp - 0x1014], xmm0
jb 0x4797e5
push 0x120
call fcn.0055f3ea
add esp, 4
mov dword [ebp - 0x1010], eax
mov byte [ebp - 4], 9
test eax, eax
je 0x47972f
push 0x5dad20
push 0
push 8
mov ecx, eax
call fcn.00512b90
mov ecx, eax
jmp 0x479731
xor ecx, ecx
mov eax, dword [ecx + 0x11c]
cvttss2si esi, dword [ebp - 0x1014]
push ecx
mov byte [ebp - 4], 0
mov dword [eax], 0
mov dword [eax + 4], 1
mov dword [ecx + 0x108], 0
mov dword [ecx + 0x10c], 0x447a0000
mov dword [ecx + 0x118], esi
imul ecx, dword [edi + 0x188], 0x980
mov ecx, dword [ecx + edi + 0x2d8]
call fcn.005137e0
push esi
lea eax, [ebp - 0x418]
mov dword [ebp - 0x1034], 1
push str.You_recover__d_Glowing_Green_Dust.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov eax, dword [ebp - 0x1028]
lea edx, [ebp - 0x105c]
add esp, 0x1c
mov ecx, dword [eax + 0x11c]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
mov esi, dword [ebp - 0x102c]
movd xmm1, dword [esi + 0x20]
cvtdq2ps xmm1, xmm1
movaps xmm0, xmm1
mulss xmm0, dword [0x5dd384]
cvttss2si eax, xmm0
movaps xmm0, xmm1
mulss xmm1, dword [ebp - 0x1040]
push eax
mulss xmm0, dword [0x5dd374]
cvttss2si eax, xmm0
push eax
cvttss2si eax, xmm1
push eax
call fcn.0044d080
add esp, 0xc
movd xmm0, eax
mov eax, dword [ebp - 0x1024]
add eax, dword [esi + 0x20]
cvtdq2ps xmm0, xmm0
mov dword [ebp - 0x1024], eax
comiss xmm0, dword [0x5d9058]
movss dword [ebp - 0x1014], xmm0
jb 0x479932
push 0x120
call fcn.0055f3ea
add esp, 4
mov dword [ebp - 0x1010], eax
mov byte [ebp - 4], 0xa
test eax, eax
je 0x47987c
push 0x5dad48
push 0
push 8
mov ecx, eax
call fcn.00512b90
mov ecx, eax
jmp 0x47987e
xor ecx, ecx
mov eax, dword [ecx + 0x11c]
cvttss2si esi, dword [ebp - 0x1014]
push ecx
mov byte [ebp - 4], 0
mov dword [eax], 2
mov dword [eax + 4], 1
mov dword [ecx + 0x108], 0
mov dword [ecx + 0x10c], 0x447a0000
mov dword [ecx + 0x118], esi
imul ecx, dword [edi + 0x188], 0x980
mov ecx, dword [ecx + edi + 0x2d8]
call fcn.005137e0
push esi
lea eax, [ebp - 0x418]
mov dword [ebp - 0x1034], 1
push str.You_recover__d_Glowing_Black_Dust.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov eax, dword [ebp - 0x1028]
lea edx, [ebp - 0x105c]
add esp, 0x1c
mov ecx, dword [eax + 0x11c]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
mov esi, dword [ebp - 0x102c]
mov eax, dword [esi + 0x34]
push eax
movd xmm1, eax
cvtdq2ps xmm1, xmm1
movaps xmm0, xmm1
mulss xmm1, dword [ebp - 0x1040]
mulss xmm0, dword [0x5dd374]
cvttss2si eax, xmm0
push eax
cvttss2si eax, xmm1
push eax
call fcn.0044d080
add esp, 0xc
movd xmm0, eax
mov eax, dword [ebp - 0x1024]
add eax, dword [esi + 0x34]
cvtdq2ps xmm0, xmm0
mov dword [ebp - 0x1024], eax
comiss xmm0, dword [0x5d9058]
movss dword [ebp - 0x1014], xmm0
jb 0x479a72
push 0x120
call fcn.0055f3ea
add esp, 4
mov dword [ebp - 0x1010], eax
mov byte [ebp - 4], 0xb
test eax, eax
je 0x4799bc
push 0x5dc26c
push 0
push 8
mov ecx, eax
call fcn.00512b90
mov ecx, eax
jmp 0x4799be
xor ecx, ecx
mov eax, dword [ecx + 0x11c]
cvttss2si esi, dword [ebp - 0x1014]
push ecx
mov byte [ebp - 4], 0
mov dword [eax], 0xe
mov dword [eax + 4], 1
mov dword [ecx + 0x108], 0
mov dword [ecx + 0x10c], 0x447a0000
mov dword [ecx + 0x118], esi
imul ecx, dword [edi + 0x188], 0x980
mov ecx, dword [ecx + edi + 0x2d8]
call fcn.005137e0
push esi
lea eax, [ebp - 0x418]
mov dword [ebp - 0x1034], 1
push str.You_recover__d_Glowing_Gold_Dust.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov eax, dword [ebp - 0x1028]
lea edx, [ebp - 0x105c]
add esp, 0x1c
mov ecx, dword [eax + 0x11c]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
mov esi, dword [ebp - 0x102c]
cmp dword [esi + 0x3c], 1
mov eax, dword [esi + 4]
jne 0x479a92
add eax, 0xffffffeb
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movaps xmm1, xmm0
mulss xmm1, dword [ebp - 0x1040]
jmp 0x479aa6
movss xmm1, dword [ebp - 0x1040]
dec eax
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm1, xmm0
movaps xmm2, xmm0
mulss xmm0, dword [0x5dacc0]
mulss xmm2, dword [0x5dd37c]
cvttss2si eax, xmm2
push eax
cvttss2si eax, xmm0
push eax
cvttss2si eax, xmm1
push eax
call fcn.0044d080
add esp, 0xc
movd xmm0, eax
mov eax, dword [ebp - 0x1024]
cvtdq2ps xmm0, xmm0
cvttss2si ecx, xmm0
add eax, ecx
mov dword [ebp - 0x1010], ecx
comiss xmm0, dword [0x5d9058]
mov dword [ebp - 0x1024], eax
jb 0x479be4
push 0x120
call fcn.0055f3ea
add esp, 4
mov dword [ebp - 0x1014], eax
mov byte [ebp - 4], 0xc
test eax, eax
je 0x479b2b
push 0x5dacf8
push 0
push 8
mov ecx, eax
call fcn.00512b90
mov ecx, eax
jmp 0x479b2d
xor ecx, ecx
mov eax, dword [ecx + 0x11c]
push ecx
mov byte [ebp - 4], 0
mov dword [eax], 1
mov dword [eax + 4], 1
mov eax, dword [ebp - 0x1010]
mov dword [ecx + 0x108], 0
mov dword [ecx + 0x10c], 0x447a0000
mov dword [ecx + 0x118], eax
imul ecx, dword [edi + 0x188], 0x980
mov ecx, dword [ecx + edi + 0x2d8]
call fcn.005137e0
push dword [ebp - 0x1010]
lea eax, [ebp - 0x418]
mov dword [ebp - 0x1034], 1
push str.You_recover__d_Glowing_Blue_Dust.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov eax, dword [ebp - 0x1028]
lea edx, [ebp - 0x105c]
add esp, 0x1c
mov ecx, dword [eax + 0x11c]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
mov eax, dword [ebp - 0x1024]
movss xmm0, dword [ebp - 0x103c]
divss xmm0, dword [0x5db14c]
add eax, dword [esi + 0x30]
mov dword [ebp - 0x1024], eax
push 1
push 0
divss xmm0, dword [ebp - 0x1030]
cvttss2si eax, xmm0
push eax
call fcn.0044d080
mov ecx, dword [esi + 0x38]
add esp, 0xc
xor edx, edx
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x1010], xmm0
cmp ecx, 0x2710
jl 0x479c4c
add ecx, 0xffffd8f0
mov eax, 0x68db8bad
imul ecx
sar edx, 0xa
mov eax, edx
add edx, 5
shr eax, 0x1f
add edx, eax
xor ecx, ecx
cmp dword [ebp - 0x1024], 5
cmovge ecx, edx
cmp dword [ebp - 0x1024], 0xe
mov dword [ebp - 0x101c], ecx
jle 0x479c7a
mov dword [ebp - 0x101c], ecx
test ecx, ecx
je 0x479c7a
lea eax, [ecx + 0xa]
mov dword [ebp - 0x101c], eax
call fcn.0056eac9
movss xmm0, dword [ebp - 0x1010]
mov ecx, 0x64
cdq
xorps xmm1, xmm1
idiv ecx
comiss xmm0, xmm1
jbe 0x479dfc
cmp dword [esi + 0x38], 0x2710
jl 0x479dfc
cmp dword [ebp - 0x1034], 0
je 0x479dfc
cmp edx, dword [ebp - 0x101c]
jge 0x479dfc
movss xmm0, dword [ebp - 0x1020]
comiss xmm0, dword [0x5dd434]
jb 0x479dfc
call fcn.0056eac9
mov esi, eax
and esi, 0x80000007
jns 0x479cea
dec esi
or esi, 0xfffffff8
inc esi
push 0x120
add esi, 5
call fcn.0055f3ea
add esp, 4
mov dword [ebp - 0x1014], eax
mov byte [ebp - 4], 0xd
test eax, eax
je 0x479d23
mov ecx, esi
shl ecx, 6
add ecx, str.Glowing_Green_Dust
push ecx
push 0
push 8
mov ecx, eax
call fcn.00512b90
mov ecx, eax
jmp 0x479d25
xor ecx, ecx
mov eax, dword [ecx + 0x11c]
mov dword [eax], esi
mov dword [eax + 4], 1
mov dword [ecx + 0x108], 0
mov dword [ecx + 0x10c], 0x447a4000
mov dword [ecx + 0x118], 1
push ecx
imul ecx, dword [edi + 0x188], 0x980
mov byte [ebp - 4], 0
mov ecx, dword [ecx + edi + 0x2d8]
call fcn.005137e0
lea eax, [ebp - 0x418]
push str.You_find_something_special_inside_the_weapon.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov esi, dword [ebp - 0x1028]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov ecx, dword [esi + 0x11c]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
imul eax, dword [edi + 0x188], 0x980
add eax, 0x2a0
add eax, edi
push eax
lea eax, [ebp - 0x418]
push str._s_got_a_shard_n
push eax
call fcn.0043d380
lea eax, [ebp - 0x418]
push eax
push str.ShardCreationLog.txt
call fcn.004a4850
add esp, 0x14
jmp 0x479ee1
mov eax, dword [0x636bc0]
cmp dword [eax + 0x7c], 0
je 0x479edb
call fcn.0056eac9
movss xmm0, dword [ebp - 0x1010]
mov ecx, 0xa
cdq
xorps xmm1, xmm1
idiv ecx
comiss xmm0, xmm1
jbe 0x479edb
cmp dword [esi + 0x38], 0x2710
jl 0x479edb
cmp dword [ebp - 0x1034], 0
je 0x479edb
cmp edx, 1
jne 0x479edb
movss xmm0, dword [ebp - 0x1064]
comiss xmm0, dword [0x5dd438]
jb 0x479edb
call fcn.0056eac9
mov esi, eax
and esi, 0x80000007
jns 0x479e78
dec esi
or esi, 0xfffffff8
inc esi
push 0x120
add esi, 5
call fcn.0055f3ea
add esp, 4
mov dword [ebp - 0x1014], eax
mov byte [ebp - 4], 0xe
test eax, eax
je 0x479eb1
mov ecx, esi
shl ecx, 6
add ecx, str.Glowing_Green_Dust
push ecx
push 0
push 8
mov ecx, eax
call fcn.00512b90
mov ecx, eax
jmp 0x479eb3
xor ecx, ecx
mov eax, dword [ecx + 0x11c]
mov dword [eax], esi
mov dword [eax + 4], 1
mov dword [ecx + 0x108], 0
mov dword [ecx + 0x10c], 0x447a0000
jmp 0x479d48
mov esi, dword [ebp - 0x1028]
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e540
mov dword [ebp - 0x1014], eax
test eax, eax
je 0x479f8e
mov esi, eax
nop word [eax + eax]
cmp dword [ebp - 0x107c], esi
jne 0x479f69
mov eax, dword [esi + 0x118]
cmp eax, 1
jle 0x479f2c
dec eax
mov dword [esi + 0x118], eax
jmp 0x479f50
imul eax, dword [edi + 0x188], 0x980
push esi
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e730
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e5b0
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e5f0
mov esi, eax
test esi, esi
jne 0x479f10
mov esi, dword [ebp - 0x1028]
lea eax, [ebp - 0x418]
push str.You_dismantle_the_weapon.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
mov esi, dword [ebp - 0x1044]
mov ecx, dword [esi + 0xc]
mov eax, dword [esi + 8]
test ecx, ecx
ja 0x4812a6
jb 0x479ffc
cmp eax, 0x7530
jae 0x4812a6
movss xmm1, dword [ebp - 0x103c]
movaps xmm0, xmm1
movss xmm2, dword [ebp - 0x1030]
divss xmm0, dword [0x5d95c4]
comiss xmm2, xmm0
jbe 0x4812a6
mov eax, dword [0x636bc0]
mov edx, dword [esi + 4]
mov ecx, dword [esi]
movd xmm0, dword [eax + 0x98]
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
movss dword [ebp - 0x1014], xmm0
call fcn.0055f7d0
movss xmm1, dword [ebp - 0x1014]
cvtsd2ss xmm0, xmm0
addss xmm1, xmm0
xorps xmm0, xmm0
movlpd qword [ebp - 0x1018], xmm0
movss xmm0, dword [0x5dd45c]
comiss xmm1, xmm0
jb 0x47a099
subss xmm1, xmm0
comiss xmm0, xmm1
jbe 0x47a099
mov eax, dword [ebp - 0x1018]
add eax, 0
mov dword [ebp - 0x1010], eax
mov eax, dword [ebp - 0x1014]
adc eax, 0x80000000
mov dword [ebp - 0x1074], eax
jmp 0x47a0b1
mov eax, dword [ebp - 0x1014]
mov dword [ebp - 0x1074], eax
mov eax, dword [ebp - 0x1018]
mov dword [ebp - 0x1010], eax
movaps xmm0, xmm1
call fcn.0055f550
mov edi, eax
mov eax, edx
add edi, dword [ebp - 0x1010]
mov dword [esi], edi
adc eax, dword [ebp - 0x1074]
mov dword [esi + 4], eax
mov ecx, dword [esi + 0xc]
push ecx
mov dword [ebp - 0x101c], eax
mov eax, dword [esi + 8]
push eax
push ecx
push eax
call fcn.00560560
mov esi, eax
mov ecx, edx
shld ecx, esi, 4
shl esi, 4
sub esi, eax
sbb ecx, edx
shld ecx, esi, 1
add esi, esi
cmp ecx, dword [ebp - 0x101c]
ja 0x4812a6
jb 0x47a10e
cmp esi, edi
ja 0x4812a6
mov ecx, 0x88888889
mov eax, edi
mul ecx
mov esi, edx
mov dword [ebp - 0x1018], eax
mov eax, edi
mov edx, 0x88888888
mul edx
mov edi, eax
mov dword [ebp - 0x1064], edx
mov eax, dword [ebp - 0x101c]
mul ecx
mov dword [ebp - 0x1014], edx
mov ecx, eax
mov eax, dword [ebp - 0x101c]
mov edx, 0x88888888
mul edx
add ecx, esi
mov dword [ebp - 0x1074], edx
mov edx, dword [ebp - 0x1014]
adc edx, 0
mov dword [ebp - 0x1010], eax
mov esi, eax
add edi, ecx
mov ecx, dword [ebp - 0x1064]
adc ecx, 0
mov dword [ebp - 0x1018], edi
xor eax, eax
add edx, ecx
mov ecx, dword [ebp - 0x1074]
adc eax, eax
add esi, edx
adc ecx, eax
shrd esi, ecx, 4
shr ecx, 4
mov edx, ecx
mov ecx, esi
call fcn.0055f7d0
xorps xmm1, xmm1
ucomisd xmm1, xmm0
ja 0x47a1a6
sqrtsd xmm0, xmm0
jmp 0x47a1ab
call fcn.0059b9c0
movaps xmm1, xmm0
xorps xmm0, xmm0
addsd xmm1, qword [0x5d9060]
movlpd qword [ebp - 0x1018], xmm0
movsd xmm0, qword [0x5dd448]
comisd xmm1, xmm0
jb 0x47a1f0
subsd xmm1, xmm0
comisd xmm0, xmm1
jbe 0x47a1f0
mov esi, dword [ebp - 0x1018]
mov edi, dword [ebp - 0x1014]
add esi, 0
adc edi, 0x80000000
jmp 0x47a1fc
mov edi, dword [ebp - 0x1014]
mov esi, dword [ebp - 0x1018]
movaps xmm0, xmm1
call fcn.0055f720
mov ecx, dword [ebp - 0x1044]
add eax, esi
push str.You_gained_a_skill_level__
adc edx, edi
mov dword [ecx + 8], eax
lea eax, [ebp - 0x418]
push eax
mov dword [ecx + 0xc], edx
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov ecx, dword [ebp - 0x106c]
imul eax, dword [ecx + 0x188], 0x980
movss xmm0, dword [eax + ecx + 0x300]
addss xmm0, dword [0x5dd360]
movss dword [eax + ecx + 0x300], xmm0
mov eax, dword [ebp - 0x1028]
mov ecx, dword [eax + 0x11c]
jmp 0x48128a
push str.Put_a_weapon_in_the_workbench_to_dismantle_it.
jmp 0x48125e
mov ecx, 0x5dc33c
lea eax, [edi + 0x260]
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x47a2b0
test dl, dl
je 0x47a2ac
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x47a2b0
add eax, 2
add ecx, 2
test dl, dl
jne 0x47a290
xor eax, eax
jmp 0x47a2b5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47acbf
mov dword [ebp - 0x1040], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e540
test eax, eax
je 0x47acb5
xor esi, esi
cmp dword [eax + 0x110], 0xd
jne 0x47a314
add esi, dword [eax + 0x118]
mov dword [ebp - 0x1040], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e5b0
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e5f0
test eax, eax
jne 0x47a2e6
cmp esi, 1
mov esi, dword [ebp - 0x1028]
jl 0x47acb5
mov eax, dword [ebp - 0x1040]
cmp dword [eax + 0x118], 1
mov ecx, dword [eax + 0x11c]
mov dword [ebp - 0x1020], ecx
jle 0x47a3f1
push 0x120
call fcn.0055f3ea
add esp, 4
mov dword [ebp - 0x1014], eax
mov byte [ebp - 4], 0xf
test eax, eax
je 0x47a394
push str.UNNAMED
push 0
push 0
mov ecx, eax
call fcn.00512b90
mov edx, eax
mov dword [ebp - 0x1010], eax
jmp 0x47a39c
xor edx, edx
mov dword [ebp - 0x1010], edx
mov ecx, dword [ebp - 0x1040]
push edx
mov byte [ebp - 4], 0
mov eax, dword [ecx]
mov eax, dword [eax + 0x18]
call eax
mov ecx, dword [ebp - 0x1040]
mov edx, dword [ebp - 0x1010]
push edx
mov eax, dword [ecx + 0x118]
dec eax
mov dword [edx + 0x118], eax
mov dword [ecx + 0x118], 1
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e650
mov ecx, dword [ebp - 0x1020]
movss xmm1, dword [0x5d9058]
divss xmm1, dword [ecx + 4]
mov eax, dword [ecx + 0xc]
inc eax
mov dword [ebp - 0x1034], 0
movd xmm0, eax
imul eax, dword [edi + 0x188], 0x980
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [ecx]
mov ecx, dword [eax + edi + 0x2e0]
add ecx, 8
mulss xmm1, xmm0
movss dword [ebp - 0x101c], xmm1
call fcn.0044e540
mov dword [ebp - 0x1014], eax
test eax, eax
je 0x47810b
mov esi, eax
nop dword [eax]
mov ecx, esi
call fcn.0044ce00
lea ecx, [edi + 0x260]
nop dword [eax]
mov dl, byte [ecx]
cmp dl, byte [eax]
jne 0x47a480
test dl, dl
je 0x47a47c
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x47a480
add ecx, 2
add eax, 2
test dl, dl
jne 0x47a460
xor eax, eax
jmp 0x47a485
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47a495
mov eax, dword [esi + 0x11c]
mov dword [ebp - 0x1034], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e0]
add ecx, 8
call fcn.0044e5f0
mov esi, eax
test esi, esi
jne 0x47a450
mov esi, dword [ebp - 0x1028]
cmp dword [ebp - 0x1034], eax
je 0x47810b
mov ecx, edi
call fcn.00481c00
mov ecx, dword [ebp - 0x1034]
cdq
push dword [ecx + 0xc]
push dword [ecx + 8]
push edx
push eax
call fcn.00560560
mov ecx, eax
call fcn.0055f7d0
cvtsd2ss xmm0, xmm0
sub esp, 8
mov dword [esp + 4], 0x3f8ccccd
movss dword [ebp - 0x1014], xmm0
mov dword [esp], 0x3f666666
call fcn.004937b0
fmul dword [ebp - 0x1014]
add esp, 8
mov ecx, 0x637628
push esi
fmul dword [0x5d9ff8]
push 1
fstp dword [ebp - 0x1010]
call fcn.005358c0
test eax, eax
je 0x47a560
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.00536390
test eax, eax
je 0x47a560
movss xmm0, dword [ebp - 0x1010]
mulss xmm0, dword [0x5dd38c]
jmp 0x47a568
movss xmm0, dword [ebp - 0x1010]
push esi
push 0
mov ecx, 0x637628
movss dword [ebp - 0x1030], xmm0
call fcn.005358c0
test eax, eax
je 0x47a5b6
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.00536390
test eax, eax
je 0x47a5b6
movss xmm0, dword [ebp - 0x1030]
mulss xmm0, dword [0x5dd38c]
movss dword [ebp - 0x1030], xmm0
push esi
push 2
mov ecx, 0x637628
call fcn.005358c0
test eax, eax
je 0x47a5fe
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.00536390
movss xmm1, dword [ebp - 0x1030]
test eax, eax
je 0x47a606
mulss xmm1, dword [0x5dd38c]
movss dword [ebp - 0x1030], xmm1
jmp 0x47a606
movss xmm1, dword [ebp - 0x1030]
mov eax, dword [edi + 0x14f60]
test eax, eax
jle 0x47a633
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x5dd364]
addss xmm0, dword [0x5d9058]
mulss xmm0, xmm1
movss dword [ebp - 0x1030], xmm0
movss xmm0, dword [ebp - 0x101c]
lea eax, [ebp - 0x418]
cvtps2pd xmm0, xmm0
sub esp, 8
movsd qword [esp], xmm0
push str.This_bombs_difficulty_is__4.2f.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x20
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
movss xmm0, dword [ebp - 0x1030]
lea eax, [ebp - 0x418]
cvtps2pd xmm0, xmm0
sub esp, 8
movsd qword [esp], xmm0
push str.Your_work_value_was__4.2f.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x20
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
movss xmm0, dword [ebp - 0x1030]
movss xmm1, dword [ebp - 0x101c]
comiss xmm0, xmm1
jb 0x47a8b1
mov eax, dword [ebp - 0x1040]
movss xmm0, dword [eax + 0x10c]
mov eax, dword [ebp - 0x1020]
addss xmm0, xmm0
mov eax, dword [eax + 0xc]
lea eax, [eax + eax*4]
add eax, eax
movd xmm1, eax
imul eax, dword [edi + 0x188], 0x980
cvtdq2ps xmm1, xmm1
addss xmm1, xmm0
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
movss dword [ebp - 0x1064], xmm1
call fcn.0044e540
mov dword [ebp - 0x1014], eax
test eax, eax
je 0x47a7e6
mov esi, eax
cmp dword [ebp - 0x1040], esi
jne 0x47a7c1
mov eax, dword [esi + 0x118]
cmp eax, 1
jle 0x47a784
dec eax
mov dword [esi + 0x118], eax
jmp 0x47a7a8
imul eax, dword [edi + 0x188], 0x980
push esi
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e730
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e5b0
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e5f0
mov esi, eax
test esi, esi
jne 0x47a768
mov esi, dword [ebp - 0x1028]
push 0x120
call fcn.0055f3ea
add esp, 4
mov dword [ebp - 0x1014], eax
mov byte [ebp - 4], 0x10
test eax, eax
je 0x47a813
push str.Disarmed_Bomb
push 0
push 0
mov ecx, eax
call fcn.00512b90
jmp 0x47a815
xor eax, eax
movss xmm0, dword [ebp - 0x1064]
mov dword [eax + 0x108], 0x3f800000
movss dword [eax + 0x10c], xmm0
mov dword [eax + 0x118], 1
imul ecx, dword [edi + 0x188], 0x980
push eax
mov byte [ebp - 4], 0
mov ecx, dword [ecx + edi + 0x2d8]
call fcn.005137e0
lea eax, [ebp - 0x418]
push str.You_disarmed_the_bomb.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
movss xmm0, dword [ebp - 0x1030]
movss xmm1, dword [ebp - 0x101c]
mov ecx, dword [ebp - 0x1034]
mov edx, dword [ecx + 0xc]
mov eax, dword [ecx + 8]
mov dword [ebp - 0x1074], eax
mov dword [ebp - 0x1064], edx
test edx, edx
ja 0x47ab0d
jb 0x47a8de
cmp eax, 0x7530
jae 0x47ab0d
comiss xmm0, xmm1
jb 0x47ab0d
mov eax, dword [0x636bc0]
mov edx, dword [ecx + 4]
mov ecx, dword [ecx]
movd xmm0, dword [eax + 0x9c]
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
movss dword [ebp - 0x1014], xmm0
call fcn.0055f7d0
movss xmm1, dword [ebp - 0x1014]
cvtsd2ss xmm0, xmm0
addss xmm1, xmm0
xorps xmm0, xmm0
movlpd qword [ebp - 0x1018], xmm0
movss xmm0, dword [0x5dd45c]
comiss xmm1, xmm0
jb 0x47a954
subss xmm1, xmm0
comiss xmm0, xmm1
jbe 0x47a954
mov esi, dword [ebp - 0x1018]
mov eax, dword [ebp - 0x1014]
add esi, 0
adc eax, 0x80000000
jmp 0x47a960
mov eax, dword [ebp - 0x1014]
mov esi, dword [ebp - 0x1018]
movaps xmm0, xmm1
mov dword [ebp - 0x1010], eax
call fcn.0055f550
mov edi, eax
mov ecx, edx
mov eax, dword [ebp - 0x1034]
add edi, esi
adc ecx, dword [ebp - 0x1010]
mov dword [ebp - 0x101c], ecx
mov dword [eax], edi
mov dword [eax + 4], ecx
mov ecx, dword [ebp - 0x1064]
mov eax, dword [ebp - 0x1074]
push ecx
push eax
push ecx
push eax
call fcn.00560560
mov esi, eax
mov ecx, edx
shld ecx, esi, 4
shl esi, 4
sub esi, eax
sbb ecx, edx
shld ecx, esi, 1
add esi, esi
cmp ecx, dword [ebp - 0x101c]
ja 0x4812a6
jb 0x47a9cb
cmp esi, edi
ja 0x4812a6
mov ecx, 0x88888889
mov eax, edi
mul ecx
mov esi, edx
mov dword [ebp - 0x1018], eax
mov eax, edi
mov edx, 0x88888888
mul edx
mov edi, eax
mov dword [ebp - 0x1064], edx
mov eax, dword [ebp - 0x101c]
mul ecx
mov dword [ebp - 0x1014], edx
mov ecx, eax
mov eax, dword [ebp - 0x101c]
mov edx, 0x88888888
mul edx
add ecx, esi
mov dword [ebp - 0x1074], edx
mov edx, dword [ebp - 0x1014]
adc edx, 0
mov dword [ebp - 0x1010], eax
mov esi, eax
add edi, ecx
mov ecx, dword [ebp - 0x1064]
adc ecx, 0
mov dword [ebp - 0x1018], edi
xor eax, eax
add edx, ecx
mov ecx, dword [ebp - 0x1074]
adc eax, eax
add esi, edx
adc ecx, eax
shrd esi, ecx, 4
shr ecx, 4
mov edx, ecx
mov ecx, esi
call fcn.0055f7d0
xorps xmm1, xmm1
ucomisd xmm1, xmm0
ja 0x47aa63
sqrtsd xmm0, xmm0
jmp 0x47aa68
call fcn.0059b9c0
movaps xmm1, xmm0
xorps xmm0, xmm0
addsd xmm1, qword [0x5d9060]
movlpd qword [ebp - 0x1018], xmm0
movsd xmm0, qword [0x5dd448]
comisd xmm1, xmm0
jb 0x47aaad
subsd xmm1, xmm0
comisd xmm0, xmm1
jbe 0x47aaad
mov esi, dword [ebp - 0x1018]
mov edi, dword [ebp - 0x1014]
add esi, 0
adc edi, 0x80000000
jmp 0x47aab9
mov edi, dword [ebp - 0x1014]
mov esi, dword [ebp - 0x1018]
movaps xmm0, xmm1
call fcn.0055f720
mov ecx, dword [ebp - 0x1034]
add eax, esi
push str.You_gained_a_skill_level__
adc edx, edi
mov dword [ecx + 8], eax
lea eax, [ebp - 0x418]
push eax
mov dword [ecx + 0xc], edx
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov eax, dword [ebp - 0x1028]
mov ecx, dword [eax + 0x11c]
jmp 0x48128a
lea eax, [ebp - 0x418]
push str.You_failed_to_disarm_the_bomb_
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
push 0x1a0
call fcn.0055f3ea
add esp, 4
mov dword [ebp - 0x1014], eax
mov byte [ebp - 4], 0x11
test eax, eax
je 0x47ab87
push edi
mov ecx, eax
call fcn.00493820
mov ecx, eax
mov dword [ebp - 0x101c], eax
jmp 0x47ab8f
xor ecx, ecx
mov dword [ebp - 0x101c], ecx
mov eax, dword [edi + 0x108]
mov edx, dword [ebp - 0x1020]
mov dword [ecx + 0x108], eax
mov eax, dword [edi + 0x10c]
mov dword [ecx + 0x10c], eax
mov eax, dword [edx + 8]
mov dword [ecx + 0x184], eax
mov eax, dword [edx + 0x10]
mov dword [ecx + 0x188], eax
mov eax, dword [edx + 0x14]
mov dword [ecx + 0x18c], eax
mov eax, dword [edx + 0x18]
mov dword [ecx + 0x190], eax
mov eax, dword [edx + 0x1c]
mov dword [ecx + 0x194], eax
mov eax, dword [edx]
mov byte [ebp - 4], 0
mov dword [ecx + 0x180], eax
call dword [sym.imp.WINMM.dll_timeGetTime]
mov ecx, dword [ebp - 0x101c]
mov dword [ecx + 0x198], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e540
mov dword [ebp - 0x1014], eax
test eax, eax
je 0x47ac9f
mov esi, eax
cmp dword [ebp - 0x1040], esi
jne 0x47ac7a
mov eax, dword [esi + 0x118]
cmp eax, 1
jle 0x47ac3d
dec eax
mov dword [esi + 0x118], eax
jmp 0x47ac61
imul eax, dword [edi + 0x188], 0x980
push esi
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e730
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e5b0
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e5f0
mov esi, eax
test esi, esi
jne 0x47ac21
mov esi, dword [ebp - 0x1028]
push dword [ebp - 0x101c]
mov ecx, dword [esi + 0x118]
call fcn.0051b320
jmp 0x4812a6
push str.Put_a_bomb_in_the_workbench_to_attempt_to_disarm_it.
jmp 0x48125e
mov ecx, 0x5dbbf0
lea eax, [edi + 0x260]
nop word [eax + eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x47acf0
test dl, dl
je 0x47acec
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x47acf0
add eax, 2
add ecx, 2
test dl, dl
jne 0x47acd0
xor eax, eax
jmp 0x47acf5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47b884
imul eax, dword [edi + 0x188], 0x980
xor edx, edx
movss xmm0, dword [0x5d9058]
mov dword [ebp - 0x1074], edx
mov dword [ebp - 0x1020], edx
mov dword [ebp - 0x1040], 0xffffffff
movss dword [ebp - 0x1030], xmm0
movss dword [ebp - 0x1038], xmm0
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e540
test eax, eax
je 0x47b87a
or esi, 0xffffffff
mov ecx, dword [ebp - 0x1040]
mov edx, esi
mov dword [ebp - 0x1064], ecx
mov ecx, dword [eax + 0x110]
mov dword [ebp - 0x1014], esi
cmp ecx, 0xa
jne 0x47adab
mov eax, dword [eax + 0x11c]
cmp edx, 0xffffffff
mov ecx, dword [eax]
cmove esi, ecx
mov eax, dword [eax + 8]
cmp edx, 0xffffffff
cmove ecx, dword [ebp - 0x1064]
mov dword [ebp - 0x1040], ecx
cmp eax, 0x17
jg 0x47ad9f
cmp eax, 0xfffffffe
jne 0x47ae0b
mov dword [ebp - 0x1074], 1
jmp 0x47ae0b
cmp ecx, 0x10
jne 0x47ae0b
mov ecx, dword [eax + 0x11c]
mov edx, dword [ecx]
test edx, edx
jne 0x47ade6
mov eax, dword [eax + 0x118]
add dword [ebp - 0x1020], eax
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [ecx + 4]
addss xmm0, dword [ebp - 0x1030]
movss dword [ebp - 0x1030], xmm0
jmp 0x47ae0b
cmp edx, 1
jne 0x47ae0b
movd xmm0, dword [eax + 0x118]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [ecx + 4]
addss xmm0, dword [ebp - 0x1038]
movss dword [ebp - 0x1038], xmm0
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e5f0
test eax, eax
jne 0x47ad51
mov dword [ebp - 0x1044], esi
cmp esi, 0xffffffff
mov esi, dword [ebp - 0x1028]
je 0x47b87a
cmp dword [ebp - 0x1020], 1
jge 0x47ae54
push str.An_EarthKey_requires_at_least_one_bead_to_power_it.
jmp 0x48125e
imul eax, dword [edi + 0x188], 0x980
mov dword [ebp - 0x1050], 0
mov ecx, dword [eax + edi + 0x2e0]
add ecx, 8
call fcn.0044e540
mov dword [ebp - 0x1014], eax
test eax, eax
je 0x47810b
mov esi, eax
mov ecx, esi
call fcn.0044ce00
lea ecx, [edi + 0x260]
mov dl, byte [ecx]
cmp dl, byte [eax]
jne 0x47aeb4
test dl, dl
je 0x47aeb0
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x47aeb4
add ecx, 2
add eax, 2
test dl, dl
jne 0x47ae94
xor eax, eax
jmp 0x47aeb9
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47aec9
mov eax, dword [esi + 0x11c]
mov dword [ebp - 0x1050], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e0]
add ecx, 8
call fcn.0044e5f0
mov esi, eax
test esi, esi
jne 0x47ae87
mov esi, dword [ebp - 0x1028]
cmp dword [ebp - 0x1050], eax
je 0x47810b
mov ecx, edi
call fcn.004873c0
mov ecx, dword [ebp - 0x1050]
cdq
push dword [ecx + 0xc]
push dword [ecx + 8]
push edx
push eax
call fcn.00560560
mov ecx, eax
call fcn.0055f7d0
cvtsd2ss xmm0, xmm0
sub esp, 8
mov dword [esp + 4], 0x3fa66666
mulss xmm0, dword [0x5dd370]
mov dword [esp], 0x3f333333
movss dword [ebp - 0x1014], xmm0
call fcn.004937b0
fmul dword [ebp - 0x1014]
add esp, 8
mov ecx, 0x637628
push esi
push 6
fstp dword [ebp - 0x1010]
call fcn.005358c0
test eax, eax
je 0x47af96
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.00536390
test eax, eax
je 0x47af96
movss xmm0, dword [ebp - 0x1010]
mulss xmm0, dword [0x5da39c]
jmp 0x47af9e
movss xmm0, dword [ebp - 0x1010]
push esi
push 7
mov ecx, 0x637628
movss dword [ebp - 0x1024], xmm0
call fcn.005358c0
test eax, eax
je 0x47afee
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.00536390
movss xmm1, dword [ebp - 0x1024]
test eax, eax
je 0x47aff6
mulss xmm1, dword [0x5d95c0]
movss dword [ebp - 0x1024], xmm1
jmp 0x47aff6
movss xmm1, dword [ebp - 0x1024]
mov eax, dword [edi + 0x14f5c]
test eax, eax
jle 0x47b023
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x5dd364]
addss xmm0, dword [0x5d9058]
mulss xmm0, xmm1
movss dword [ebp - 0x1024], xmm0
mov eax, dword [ebp - 0x1020]
imul eax
mov ecx, eax
call fcn.0055f820
cvtsd2ss xmm0, xmm0
sub esp, 8
lea eax, [ebp - 0x418]
mulss xmm0, dword [ebp - 0x1038]
mulss xmm0, dword [0x5dd3ac]
movss dword [ebp - 0x1020], xmm0
cvtss2sd xmm0, xmm0
movsd qword [esp], xmm0
push str.Task_difficulty_is__4.2f.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x20
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
movss xmm0, dword [ebp - 0x1024]
lea eax, [ebp - 0x418]
cvtps2pd xmm0, xmm0
sub esp, 8
movsd qword [esp], xmm0
push str.Your_work_value_was__4.2f.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x20
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
movss xmm0, dword [ebp - 0x1024]
comiss xmm0, dword [ebp - 0x1020]
jb 0x47b75e
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e540
mov dword [ebp - 0x1014], eax
test eax, eax
je 0x47b19a
mov esi, eax
mov eax, dword [esi + 0x110]
cmp eax, 0xa
je 0x47b151
cmp eax, 0x10
jne 0x47b175
imul eax, dword [edi + 0x188], 0x980
push esi
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e730
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e5f0
mov esi, eax
test esi, esi
jne 0x47b141
mov esi, dword [ebp - 0x1028]
movss xmm0, dword [ebp - 0x1030]
mulss xmm0, dword [ebp - 0x1038]
push 4
push 0
cvttss2si eax, xmm0
movss dword [ebp - 0x1030], xmm0
and eax, reloc.WS2_32.dll_closesocket
jns 0x47b1c6
dec eax
or eax, 0xfffffffc
inc eax
push eax
call fcn.0044d080
movss xmm0, dword [ebp - 0x1030]
divss xmm0, dword [0x5d95c4]
push 4
push 0
cvttss2si eax, xmm0
and eax, reloc.WS2_32.dll_closesocket
jns 0x47b1f0
dec eax
or eax, 0xfffffffc
inc eax
push eax
call fcn.0044d080
mov eax, dword [0x636bc0]
add esp, 0x18
cmp dword [eax + 0x7c], 0
jne 0x47b2a8
mov eax, dword [ebp - 0x1044]
cmp eax, 0x15
je 0x47b222
cmp eax, 0x1b
je 0x47b222
cmp eax, 0x1f
je 0x47b222
cmp eax, 0x20
jne 0x47b22c
mov dword [ebp - 0x1044], 0
mov eax, dword [ebp - 0x1040]
cmp eax, 0x15
je 0x47b246
cmp eax, 0x1b
je 0x47b246
cmp eax, 0x1f
je 0x47b246
cmp eax, 0x20
jne 0x47b2ae
movss xmm0, dword [ebp - 0x1030]
addss xmm0, dword [0x5d95c8]
mov dword [ebp - 0x1040], 0
cvttss2si ecx, xmm0
push ecx
lea eax, [ebp - 0x418]
push str._dm_mixed_EarthKey
push eax
call fcn.0043d380
add esp, 0xc
push 0x120
call fcn.0055f3ea
add esp, 4
mov dword [ebp - 0x1014], eax
mov byte [ebp - 4], 0x12
test eax, eax
je 0x47b2ed
lea ecx, [ebp - 0x418]
push ecx
push 0
push 0x11
mov ecx, eax
call fcn.00512b90
jmp 0x47b2ef
mov eax, dword [ebp - 0x1040]
movss xmm0, dword [ebp - 0x1030]
addss xmm0, dword [0x5d95c8]
cvttss2si ecx, xmm0
test eax, eax
jns 0x47b264
imul eax, dword [ebp - 0x1044], 0x258
add eax, str.Ghost
push eax
push ecx
lea eax, [ebp - 0x418]
push str._dm__s_EarthKey
push eax
call fcn.0043d380
add esp, 0x10
jmp 0x47b279
xor eax, eax
movss xmm1, dword [ebp - 0x1030]
movaps xmm0, xmm1
mov dword [eax + 0x108], 0
mulss xmm0, dword [0x5d9ff8]
mov dword [ebp - 0x101c], eax
mov byte [ebp - 4], 0
addss xmm0, dword [0x5dd43c]
movss dword [eax + 0x10c], xmm0
mov dword [eax + 0x118], 1
mov ecx, dword [eax + 0x11c]
mov eax, dword [ebp - 0x1044]
cvtps2pd xmm0, xmm1
mov dword [ebp - 0x1010], ecx
movss dword [ecx + 8], xmm1
xorps xmm1, xmm1
ucomisd xmm1, xmm0
mov dword [ecx + 0xc], eax
mov eax, dword [ebp - 0x1040]
mov dword [ecx + 0x10], eax
ja 0x47b365
sqrtsd xmm0, xmm0
jmp 0x47b36a
call fcn.0059b9c0
divsd xmm0, qword [0x5dd460]
mov ecx, 2
cvttsd2si eax, xmm0
sub ecx, eax
mov eax, dword [ebp - 0x1010]
lea ecx, [ecx + ecx*4]
mov dword [ebp - 0x1084], ecx
mov dword [eax], ecx
cmp ecx, 0xa
jge 0x47b3a3
mov dword [eax], 0xa
mov dword [ebp - 0x1084], 0xa
movss xmm0, dword [ebp - 0x1030]
xorps xmm1, xmm1
mulss xmm0, dword [0x5dd380]
cvtps2pd xmm0, xmm0
ucomisd xmm1, xmm0
ja 0x47b3c5
sqrtsd xmm0, xmm0
jmp 0x47b3ca
call fcn.0059b9c0
divsd xmm0, qword [0x5dd460]
mov ecx, 2
cvttsd2si eax, xmm0
sub ecx, eax
mov eax, dword [ebp - 0x1010]
lea ecx, [ecx + ecx*4]
mov dword [eax + 4], ecx
cmp ecx, 0xa
jge 0x47b3fa
mov dword [eax + 4], 0xa
mov ecx, 0xa
cmp dword [ebp - 0x1074], 1
jne 0x47b412
mov edx, dword [ebp - 0x1084]
neg edx
neg ecx
mov dword [eax], edx
mov dword [eax + 4], ecx
lea eax, [ebp - 0x418]
push str.You_have_created_a
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
mov ecx, dword [ebp - 0x101c]
call fcn.0044ce00
push eax
lea eax, [ebp - 0x418]
push 0x5dbeac
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x1c
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
imul ecx, dword [edi + 0x188], 0x980
push dword [ebp - 0x101c]
mov ecx, dword [ecx + edi + 0x2d8]
call fcn.005137e0
mov esi, dword [ebp - 0x1050]
mov ecx, dword [esi + 0xc]
mov eax, dword [esi + 8]
test ecx, ecx
ja 0x4812a6
jb 0x47b4f5
cmp eax, 0x7530
jae 0x4812a6
movss xmm1, dword [ebp - 0x1024]
movaps xmm0, xmm1
movss xmm2, dword [ebp - 0x1020]
divss xmm0, dword [0x5d95c8]
comiss xmm2, xmm0
jbe 0x4812a6
mov eax, dword [0x636bc0]
mov edx, dword [esi + 4]
mov ecx, dword [esi]
movd xmm0, dword [eax + 0xa0]
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
movss dword [ebp - 0x1014], xmm0
call fcn.0055f7d0
movss xmm1, dword [ebp - 0x1014]
cvtsd2ss xmm0, xmm0
addss xmm1, xmm0
xorps xmm0, xmm0
movlpd qword [ebp - 0x1018], xmm0
movss xmm0, dword [0x5dd45c]
comiss xmm1, xmm0
jb 0x47b592
subss xmm1, xmm0
comiss xmm0, xmm1
jbe 0x47b592
mov eax, dword [ebp - 0x1018]
add eax, 0
mov dword [ebp - 0x1010], eax
mov eax, dword [ebp - 0x1014]
adc eax, 0x80000000
mov dword [ebp - 0x1074], eax
jmp 0x47b5aa
mov eax, dword [ebp - 0x1014]
mov dword [ebp - 0x1074], eax
mov eax, dword [ebp - 0x1018]
mov dword [ebp - 0x1010], eax
movaps xmm0, xmm1
call fcn.0055f550
mov edi, eax
mov eax, edx
add edi, dword [ebp - 0x1010]
mov dword [esi], edi
adc eax, dword [ebp - 0x1074]
mov dword [esi + 4], eax
mov ecx, dword [esi + 0xc]
push ecx
mov dword [ebp - 0x101c], eax
mov eax, dword [esi + 8]
push eax
push ecx
push eax
call fcn.00560560
mov esi, eax
mov ecx, edx
shld ecx, esi, 4
shl esi, 4
sub esi, eax
sbb ecx, edx
shld ecx, esi, 1
add esi, esi
cmp ecx, dword [ebp - 0x101c]
ja 0x4812a6
jb 0x47b607
cmp esi, edi
ja 0x4812a6
mov ecx, 0x88888889
mov eax, edi
mul ecx
mov esi, edx
mov dword [ebp - 0x1018], eax
mov eax, edi
mov edx, 0x88888888
mul edx
mov edi, eax
mov dword [ebp - 0x1064], edx
mov eax, dword [ebp - 0x101c]
mul ecx
mov dword [ebp - 0x1014], edx
mov ecx, eax
mov eax, dword [ebp - 0x101c]
mov edx, 0x88888888
mul edx
add ecx, esi
mov dword [ebp - 0x1074], edx
mov edx, dword [ebp - 0x1014]
adc edx, 0
mov dword [ebp - 0x1010], eax
mov esi, eax
add edi, ecx
mov ecx, dword [ebp - 0x1064]
adc ecx, 0
mov dword [ebp - 0x1018], edi
xor eax, eax
add edx, ecx
mov ecx, dword [ebp - 0x1074]
adc eax, eax
add esi, edx
adc ecx, eax
shrd esi, ecx, 4
shr ecx, 4
mov edx, ecx
mov ecx, esi
call fcn.0055f7d0
xorps xmm1, xmm1
ucomisd xmm1, xmm0
ja 0x47b69f
sqrtsd xmm0, xmm0
jmp 0x47b6a4
call fcn.0059b9c0
movaps xmm1, xmm0
xorps xmm0, xmm0
addsd xmm1, qword [0x5d9060]
movlpd qword [ebp - 0x1018], xmm0
movsd xmm0, qword [0x5dd448]
comisd xmm1, xmm0
jb 0x47b6e9
subsd xmm1, xmm0
comisd xmm0, xmm1
jbe 0x47b6e9
mov esi, dword [ebp - 0x1018]
mov edi, dword [ebp - 0x1014]
add esi, 0
adc edi, 0x80000000
jmp 0x47b6f5
mov edi, dword [ebp - 0x1014]
mov esi, dword [ebp - 0x1018]
movaps xmm0, xmm1
call fcn.0055f720
mov ecx, dword [ebp - 0x1050]
add eax, esi
push str.You_gained_a_skill_level__
adc edx, edi
mov dword [ecx + 8], eax
lea eax, [ebp - 0x418]
push eax
mov dword [ecx + 0xc], edx
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov ecx, dword [ebp - 0x106c]
imul eax, dword [ecx + 0x188], 0x980
movss xmm0, dword [eax + ecx + 0x300]
addss xmm0, dword [0x5dd374]
jmp 0x47739f
lea eax, [ebp - 0x418]
push str.Your_Eye_of_the_Earth_fails_to_see.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e540
mov esi, eax
test esi, esi
je 0x4812a6
movss xmm0, dword [ebp - 0x1024]
divss xmm0, dword [ebp - 0x1020]
movss dword [ebp - 0x1024], xmm0
call fcn.0056eac9
xorps xmm1, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
divss xmm0, dword [0x5d95d0]
addss xmm0, xmm1
comiss xmm0, dword [ebp - 0x1024]
jbe 0x47b852
mov eax, dword [esi + 0x110]
cmp eax, 0xa
je 0x47b81a
cmp eax, 0x10
jne 0x47b852
mov eax, dword [esi + 0x118]
cmp eax, 1
jle 0x47b82e
dec eax
mov dword [esi + 0x118], eax
jmp 0x47b852
imul eax, dword [edi + 0x188], 0x980
push esi
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e730
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e5f0
mov esi, eax
test esi, esi
jne 0x47b7e6
jmp 0x4812a6
push str.An_EarthKey_requires_the_flesh_of_a_monster.
jmp 0x48125e
mov ecx, 0x5dbbfc
lea eax, [edi + 0x260]
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x47b8b0
test dl, dl
je 0x47b8ac
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x47b8b0
add eax, 2
add ecx, 2
test dl, dl
jne 0x47b890
xor eax, eax
jmp 0x47b8b5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47d69c
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e540
test eax, eax
je 0x47d692
xor esi, esi
cmp dword [eax + 0x110], 2
cmove esi, eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e5f0
test eax, eax
jne 0x47b8e0
mov dword [ebp - 0x1038], esi
test esi, esi
mov esi, dword [ebp - 0x1028]
je 0x47d692
mov dword [ebp - 0x1040], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e0]
add ecx, 8
call fcn.0044e540
mov dword [ebp - 0x1014], eax
test eax, eax
je 0x47810b
mov esi, eax
nop word [eax + eax]
mov ecx, esi
call fcn.0044ce00
lea ecx, [edi + 0x260]
nop dword [eax]
mov dl, byte [ecx]
cmp dl, byte [eax]
jne 0x47b980
test dl, dl
je 0x47b97c
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x47b980
add ecx, 2
add eax, 2
test dl, dl
jne 0x47b960
xor eax, eax
jmp 0x47b985
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47b995
mov eax, dword [esi + 0x11c]
mov dword [ebp - 0x1040], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e0]
add ecx, 8
call fcn.0044e5f0
mov esi, eax
test esi, esi
jne 0x47b950
mov esi, dword [ebp - 0x1028]
cmp dword [ebp - 0x1040], eax
je 0x47810b
mov ecx, edi
call fcn.004873c0
mov ecx, dword [ebp - 0x1040]
cdq
push dword [ecx + 0xc]
push dword [ecx + 8]
push edx
push eax
call fcn.00560560
mov ecx, eax
call fcn.0055f7d0
cvtsd2ss xmm0, xmm0
sub esp, 8
mov dword [esp + 4], 0x3fc00000
mulss xmm0, dword [0x5dd370]
mov dword [esp], 0x3f4ccccd
movss dword [ebp - 0x1014], xmm0
call fcn.004937b0
fmul dword [ebp - 0x1014]
add esp, 8
mov ecx, 0x637628
push esi
push 8
fstp dword [ebp - 0x1010]
call fcn.005358c0
test eax, eax
je 0x47ba62
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.00536390
test eax, eax
je 0x47ba62
movss xmm1, dword [ebp - 0x1010]
mulss xmm1, dword [0x5dd388]
jmp 0x47ba6a
movss xmm1, dword [ebp - 0x1010]
mov eax, dword [edi + 0x14f5c]
movss dword [ebp - 0x1050], xmm1
test eax, eax
jle 0x47ba9f
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x5dd364]
addss xmm0, dword [0x5d9058]
mulss xmm0, xmm1
movss dword [ebp - 0x1050], xmm0
mov ecx, dword [ebp - 0x1038]
xor esi, esi
mov edi, 9
mov edx, dword [ecx + 0x11c]
add edx, 0x1c
cvttss2si eax, dword [edx]
lea edx, [edx + 4]
add esi, eax
sub edi, 1
jne 0x47bab5
mov eax, dword [ecx + 0x11c]
mov dword [ebp - 0x1014], esi
mov ecx, dword [eax + 4]
lea eax, [ecx + ecx]
imul ecx
mov ecx, eax
mov esi, edx
mov eax, dword [ebp - 0x1014]
shld esi, ecx, 1
add ecx, ecx
lea eax, [eax + eax*4]
add eax, eax
cdq
add ecx, eax
adc edx, esi
call fcn.0055f820
movss xmm1, dword [0x5d9058]
lea eax, [ebp - 0x418]
cvtsd2ss xmm0, xmm0
sub esp, 8
maxss xmm1, xmm0
cvtps2pd xmm0, xmm1
movss dword [ebp - 0x1074], xmm1
movsd qword [esp], xmm0
push str.Task_difficulty_is__4.2f.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov esi, dword [ebp - 0x1028]
lea edx, [ebp - 0x105c]
add esp, 0x20
mov ecx, dword [esi + 0x11c]
push edx
push edi
lea edx, [ebp - 0xfc8]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
movss xmm0, dword [ebp - 0x1050]
lea eax, [ebp - 0x418]
cvtps2pd xmm0, xmm0
sub esp, 8
movsd qword [esp], xmm0
push str.Your_work_value_was__4.2f.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x20
mov eax, dword [ecx]
push edx
push edi
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
movss xmm0, dword [ebp - 0x1050]
lea eax, [ebp - 0x418]
comiss xmm0, dword [ebp - 0x1074]
mov edi, dword [ebp - 0x106c]
jb 0x47d62a
push str.You_successfully_shatter_the_totem_with_magic___Its_power_engulfs_the_items_in_your_workbench.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
mov esi, dword [ebp - 0x1038]
movss xmm1, dword [0x5dd420]
mov esi, dword [esi + 0x11c]
movss xmm0, dword [esi + 0x34]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x47be5a
movss xmm0, dword [esi + 0x38]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x47be5a
lea eax, [ebp - 0x418]
push str.The_released_power_wants_to_break_a_Heart_Gem_apart.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov eax, dword [ebp - 0x1028]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov ecx, dword [eax + 0x11c]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e540
mov dword [ebp - 0x1010], eax
test eax, eax
je 0x47be5a
nop dword [eax]
nop dword [eax + eax]
cmp dword [eax + 0x110], 0x10
jne 0x47be33
mov ecx, dword [eax + 0x11c]
cmp dword [ecx], 1
jne 0x47be33
movss xmm1, dword [esi + 0x3c]
movss xmm2, dword [0x5d9058]
comiss xmm1, xmm2
jbe 0x47be33
movss xmm0, dword [ecx + 4]
comiss xmm0, xmm2
jbe 0x47be33
comiss xmm1, xmm0
jb 0x47be33
dec dword [eax + 0x118]
cmp dword [eax + 0x118], 1
jge 0x47bd68
push eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e730
mov eax, dword [ebp - 0x1010]
mov eax, dword [eax + 0x11c]
movss xmm0, dword [esi + 0x3c]
push 0x120
movss xmm1, dword [eax + 4]
cvttss2si eax, xmm1
subss xmm0, xmm1
mov dword [ebp - 0x1014], eax
movss dword [esi + 0x3c], xmm0
call fcn.0055f3ea
add esp, 4
mov dword [ebp - 0x1064], eax
mov byte [ebp - 4], 0x13
test eax, eax
je 0x47bdb8
push str.Plain_Heart_Gem
push 0
push 0x10
mov ecx, eax
call fcn.00512b90
jmp 0x47bdba
xor eax, eax
push 8
mov dword [ebp - 0x1010], eax
mov byte [ebp - 4], 0
call fcn.0055f3ea
add esp, 4
test eax, eax
je 0x47bddb
xorps xmm0, xmm0
movq qword [eax], xmm0
jmp 0x47bddd
xor eax, eax
mov ecx, dword [ebp - 0x1010]
push ecx
mov dword [ecx + 0x11c], eax
mov dword [eax], 1
mov eax, dword [ecx + 0x11c]
mov dword [eax + 4], 0x3f800000
mov eax, dword [ebp - 0x1014]
mov dword [ecx + 0x118], eax
mov dword [ecx + 0x108], 0
mov dword [ecx + 0x10c], 0x43c80000
imul ecx, dword [edi + 0x188], 0x980
mov ecx, dword [ecx + edi + 0x2d8]
call fcn.005137e0
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e5f0
mov dword [ebp - 0x1010], eax
test eax, eax
jne 0x47bcf0
movss xmm0, dword [esi + 0x2c]
movss xmm1, dword [0x5d9068]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x47c26d
movss xmm0, dword [esi + 0x1c]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x47c06c
lea eax, [ebp - 0x418]
push str.The_released_power_wants_to_turn_Green_Dust_into_White_Dust.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov eax, dword [ebp - 0x1028]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov ecx, dword [eax + 0x11c]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e540
mov ecx, eax
mov dword [ebp - 0x101c], ecx
test ecx, ecx
je 0x47c265
cmp dword [ecx + 0x110], 8
jne 0x47c03e
mov eax, dword [ecx + 0x11c]
cmp dword [eax], 0
jne 0x47c03e
movss xmm1, dword [esi + 0x3c]
xorps xmm0, xmm0
comiss xmm1, xmm0
jbe 0x47c03e
movd xmm0, dword [ecx + 0x118]
cvtdq2ps xmm0, xmm0
comiss xmm1, xmm0
jb 0x47bf87
imul eax, dword [edi + 0x188], 0x980
push ecx
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e730
mov eax, dword [ebp - 0x101c]
add eax, 8
push 0x5dad34
push eax
call fcn.0043d380
mov ecx, dword [ebp - 0x101c]
add esp, 8
mov eax, dword [ecx + 0x11c]
mov dword [eax], 3
jmp 0x47c027
subss xmm0, xmm1
push 0x120
cvttss2si eax, xmm0
mov dword [ecx + 0x118], eax
call fcn.0055f3ea
add esp, 4
mov dword [ebp - 0x1014], eax
mov byte [ebp - 4], 0x14
test eax, eax
je 0x47bfc2
push 0x5dad34
push 0
push 8
mov ecx, eax
call fcn.00512b90
jmp 0x47bfc4
xor eax, eax
push 8
mov dword [ebp - 0x1010], eax
mov byte [ebp - 4], 0
call fcn.0055f3ea
mov edx, eax
add esp, 4
test edx, edx
je 0x47bfe7
xorps xmm0, xmm0
movq qword [edx], xmm0
jmp 0x47bfe9
xor edx, edx
cvttss2si eax, dword [esi + 0x3c]
mov ecx, dword [ebp - 0x1010]
mov dword [ecx + 0x11c], edx
mov dword [ecx + 0x118], eax
mov dword [edx], 3
mov eax, dword [ecx + 0x11c]
mov dword [eax + 4], 1
mov dword [ecx + 0x108], 0
mov dword [ecx + 0x10c], 0x447a0000
push ecx
imul ecx, dword [edi + 0x188], 0x980
mov ecx, dword [ecx + edi + 0x2d8]
call fcn.005137e0
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e5f0
mov ecx, eax
mov dword [ebp - 0x101c], eax
test ecx, ecx
jne 0x47bf02
jmp 0x47c265
movss xmm0, dword [esi + 0x38]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x47c26d
lea eax, [ebp - 0x418]
push str.The_released_power_wants_to_turn_Black_Dust_into_Red_Dust.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov eax, dword [ebp - 0x1028]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov ecx, dword [eax + 0x11c]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e540
mov ecx, eax
mov dword [ebp - 0x101c], ecx
test ecx, ecx
je 0x47c265
nop word [eax + eax]
cmp dword [ecx + 0x110], 8
jne 0x47c23c
mov eax, dword [ecx + 0x11c]
cmp dword [eax], 2
jne 0x47c23c
movss xmm1, dword [esi + 0x3c]
xorps xmm0, xmm0
comiss xmm1, xmm0
jbe 0x47c23c
movd xmm0, dword [ecx + 0x118]
cvtdq2ps xmm0, xmm0
comiss xmm1, xmm0
jb 0x47c185
imul eax, dword [edi + 0x188], 0x980
push ecx
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e730
mov eax, dword [ebp - 0x101c]
add eax, 8
push 0x5dad0c
push eax
call fcn.0043d380
mov ecx, dword [ebp - 0x101c]
add esp, 8
mov eax, dword [ecx + 0x11c]
mov dword [eax], 4
jmp 0x47c225
subss xmm0, xmm1
push 0x120
cvttss2si eax, xmm0
mov dword [ecx + 0x118], eax
call fcn.0055f3ea
add esp, 4
mov dword [ebp - 0x1014], eax
mov byte [ebp - 4], 0x15
test eax, eax
je 0x47c1c0
push 0x5dad0c
push 0
push 8
mov ecx, eax
call fcn.00512b90
jmp 0x47c1c2
xor eax, eax
push 8
mov dword [ebp - 0x1010], eax
mov byte [ebp - 4], 0
call fcn.0055f3ea
mov edx, eax
add esp, 4
test edx, edx
je 0x47c1e5
xorps xmm0, xmm0
movq qword [edx], xmm0
jmp 0x47c1e7
xor edx, edx
cvttss2si eax, dword [esi + 0x3c]
mov ecx, dword [ebp - 0x1010]
mov dword [ecx + 0x11c], edx
mov dword [ecx + 0x118], eax
mov dword [edx], 4
mov eax, dword [ecx + 0x11c]
mov dword [eax + 4], 1
mov dword [ecx + 0x108], 0
mov dword [ecx + 0x10c], 0x447a0000
push ecx
imul ecx, dword [edi + 0x188], 0x980
mov ecx, dword [ecx + edi + 0x2d8]
call fcn.005137e0
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e5f0
mov ecx, eax
mov dword [ebp - 0x101c], eax
test ecx, ecx
jne 0x47c100
movss xmm1, dword [0x5d9068]
movss xmm0, dword [esi + 0x30]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x47c47d
movss xmm0, dword [esi + 0x38]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x47c47d
lea eax, [ebp - 0x418]
push str.The_released_power_wants_to_turn_White_into_Green_Dust.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov eax, dword [ebp - 0x1028]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov ecx, dword [eax + 0x11c]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e540
mov ecx, eax
mov dword [ebp - 0x101c], ecx
test ecx, ecx
je 0x47c475
nop dword [eax]
cmp dword [ecx + 0x110], 8
jne 0x47c44c
mov eax, dword [ecx + 0x11c]
cmp dword [eax], 3
jne 0x47c44c
movss xmm1, dword [esi + 0x3c]
xorps xmm0, xmm0
comiss xmm1, xmm0
jbe 0x47c44c
movd xmm0, dword [ecx + 0x118]
cvtdq2ps xmm0, xmm0
comiss xmm1, xmm0
jb 0x47c395
imul eax, dword [edi + 0x188], 0x980
push ecx
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e730
mov eax, dword [ebp - 0x101c]
add eax, 8
push 0x5dad20
push eax
call fcn.0043d380
mov ecx, dword [ebp - 0x101c]
add esp, 8
mov eax, dword [ecx + 0x11c]
mov dword [eax], 0
jmp 0x47c435
subss xmm0, xmm1
push 0x120
cvttss2si eax, xmm0
mov dword [ecx + 0x118], eax
call fcn.0055f3ea
add esp, 4
mov dword [ebp - 0x1014], eax
mov byte [ebp - 4], 0x16
test eax, eax
je 0x47c3d0
push 0x5dad20
push 0
push 8
mov ecx, eax
call fcn.00512b90
jmp 0x47c3d2
xor eax, eax
push 8
mov dword [ebp - 0x1010], eax
mov byte [ebp - 4], 0
call fcn.0055f3ea
mov edx, eax
add esp, 4
test edx, edx
je 0x47c3f5
xorps xmm0, xmm0
movq qword [edx], xmm0
jmp 0x47c3f7
xor edx, edx
cvttss2si eax, dword [esi + 0x3c]
mov ecx, dword [ebp - 0x1010]
mov dword [ecx + 0x11c], edx
mov dword [ecx + 0x118], eax
mov dword [edx], 0
mov eax, dword [ecx + 0x11c]
mov dword [eax + 4], 1
mov dword [ecx + 0x108], 0
mov dword [ecx + 0x10c], 0x447a0000
push ecx
imul ecx, dword [edi + 0x188], 0x980
mov ecx, dword [ecx + edi + 0x2d8]
call fcn.005137e0
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e5f0
mov ecx, eax
mov dword [ebp - 0x101c], eax
test ecx, ecx
jne 0x47c310
movss xmm1, dword [0x5d9068]
movss xmm4, dword [esi + 0x34]
ucomiss xmm4, xmm1
lahf
test ah, 0x44
jp 0x47c68a
movss xmm0, dword [esi + 0x30]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x47c68a
lea eax, [ebp - 0x418]
push str.The_released_power_wants_to_turn_White_into_Black_Dust.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov eax, dword [ebp - 0x1028]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov ecx, dword [eax + 0x11c]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e540
mov ecx, eax
mov dword [ebp - 0x101c], ecx
test ecx, ecx
je 0x47d361
nop dword [eax]
cmp dword [ecx + 0x110], 8
jne 0x47c65c
mov eax, dword [ecx + 0x11c]
cmp dword [eax], 3
jne 0x47c65c
movss xmm1, dword [esi + 0x3c]
xorps xmm0, xmm0
comiss xmm1, xmm0
jbe 0x47c65c
movd xmm0, dword [ecx + 0x118]
cvtdq2ps xmm0, xmm0
comiss xmm1, xmm0
jb 0x47c5a5
imul eax, dword [edi + 0x188], 0x980
push ecx
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e730
mov eax, dword [ebp - 0x101c]
add eax, 8
push 0x5dad48
push eax
call fcn.0043d380
mov ecx, dword [ebp - 0x101c]
add esp, 8
mov eax, dword [ecx + 0x11c]
mov dword [eax], 2
jmp 0x47c645
subss xmm0, xmm1
push 0x120
cvttss2si eax, xmm0
mov dword [ecx + 0x118], eax
call fcn.0055f3ea
add esp, 4
mov dword [ebp - 0x1014], eax
mov byte [ebp - 4], 0x17
test eax, eax
je 0x47c5e0
push 0x5dad48
push 0
push 8
mov ecx, eax
call fcn.00512b90
jmp 0x47c5e2
xor eax, eax
push 8
mov dword [ebp - 0x1010], eax
mov byte [ebp - 4], 0
call fcn.0055f3ea
mov edx, eax
add esp, 4
test edx, edx
je 0x47c605
xorps xmm0, xmm0
movq qword [edx], xmm0
jmp 0x47c607
xor edx, edx
cvttss2si eax, dword [esi + 0x3c]
mov ecx, dword [ebp - 0x1010]
mov dword [ecx + 0x11c], edx
mov dword [ecx + 0x118], eax
mov dword [edx], 2
mov eax, dword [ecx + 0x11c]
mov dword [eax + 4], 1
mov dword [ecx + 0x108], 0
mov dword [ecx + 0x10c], 0x447a0000
push ecx
imul ecx, dword [edi + 0x188], 0x980
mov ecx, dword [ecx + edi + 0x2d8]
call fcn.005137e0
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e5f0
mov ecx, eax
mov dword [ebp - 0x101c], eax
test ecx, ecx
jne 0x47c520
jmp 0x47d361
movss xmm0, dword [esi + 0x24]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x47ca9a
movss xmm0, dword [esi + 0x2c]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x47c89a
lea eax, [ebp - 0x418]
push str.The_released_power_wants_to_turn_Red_Dust_into_Black_Dust.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov eax, dword [ebp - 0x1028]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov ecx, dword [eax + 0x11c]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e540
mov ecx, eax
mov dword [ebp - 0x101c], ecx
test ecx, ecx
je 0x47d361
nop word [eax + eax]
cmp dword [ecx + 0x110], 8
jne 0x47c86c
mov eax, dword [ecx + 0x11c]
cmp dword [eax], 4
jne 0x47c86c
movss xmm1, dword [esi + 0x3c]
xorps xmm0, xmm0
comiss xmm1, xmm0
jbe 0x47c86c
movd xmm0, dword [ecx + 0x118]
cvtdq2ps xmm0, xmm0
comiss xmm1, xmm0
jb 0x47c7b5
imul eax, dword [edi + 0x188], 0x980
push ecx
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e730
mov eax, dword [ebp - 0x101c]
add eax, 8
push 0x5dad48
push eax
call fcn.0043d380
mov ecx, dword [ebp - 0x101c]
add esp, 8
mov eax, dword [ecx + 0x11c]
mov dword [eax], 2
jmp 0x47c855
subss xmm0, xmm1
push 0x120
cvttss2si eax, xmm0
mov dword [ecx + 0x118], eax
call fcn.0055f3ea
add esp, 4
mov dword [ebp - 0x1014], eax
mov byte [ebp - 4], 0x18
test eax, eax
je 0x47c7f0
push 0x5dad48
push 0
push 8
mov ecx, eax
call fcn.00512b90
jmp 0x47c7f2
xor eax, eax
push 8
mov dword [ebp - 0x1010], eax
mov byte [ebp - 4], 0
call fcn.0055f3ea
mov edx, eax
add esp, 4
test edx, edx
je 0x47c815
xorps xmm0, xmm0
movq qword [edx], xmm0
jmp 0x47c817
xor edx, edx
cvttss2si eax, dword [esi + 0x3c]
mov ecx, dword [ebp - 0x1010]
mov dword [ecx + 0x11c], edx
mov dword [ecx + 0x118], eax
mov dword [edx], 2
mov eax, dword [ecx + 0x11c]
mov dword [eax + 4], 1
mov dword [ecx + 0x108], 0
mov dword [ecx + 0x10c], 0x447a0000
push ecx
imul ecx, dword [edi + 0x188], 0x980
mov ecx, dword [ecx + edi + 0x2d8]
call fcn.005137e0
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e5f0
mov ecx, eax
mov dword [ebp - 0x101c], eax
test ecx, ecx
jne 0x47c730
jmp 0x47d361
movss xmm0, dword [esi + 0x38]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x47ca9a
lea eax, [ebp - 0x418]
push str.The_released_power_wants_to_turn_Red_Dust_into_Green_Dust.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov eax, dword [ebp - 0x1028]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov ecx, dword [eax + 0x11c]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e540
mov ecx, eax
mov dword [ebp - 0x101c], ecx
test ecx, ecx
je 0x47d361
nop dword [eax + eax]
cmp dword [ecx + 0x110], 8
jne 0x47ca6c
mov eax, dword [ecx + 0x11c]
cmp dword [eax], 4
jne 0x47ca6c
movss xmm1, dword [esi + 0x3c]
xorps xmm0, xmm0
comiss xmm1, xmm0
jbe 0x47ca6c
movd xmm0, dword [ecx + 0x118]
cvtdq2ps xmm0, xmm0
comiss xmm1, xmm0
jb 0x47c9b5
imul eax, dword [edi + 0x188], 0x980
push ecx
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e730
mov eax, dword [ebp - 0x101c]
add eax, 8
push 0x5dad20
push eax
call fcn.0043d380
mov ecx, dword [ebp - 0x101c]
add esp, 8
mov eax, dword [ecx + 0x11c]
mov dword [eax], 0
jmp 0x47ca55
subss xmm0, xmm1
push 0x120
cvttss2si eax, xmm0
mov dword [ecx + 0x118], eax
call fcn.0055f3ea
add esp, 4
mov dword [ebp - 0x1014], eax
mov byte [ebp - 4], 0x19
test eax, eax
je 0x47c9f0
push 0x5dad20
push 0
push 8
mov ecx, eax
call fcn.00512b90
jmp 0x47c9f2
xor eax, eax
push 8
mov dword [ebp - 0x1010], eax
mov byte [ebp - 4], 0
call fcn.0055f3ea
mov edx, eax
add esp, 4
test edx, edx
je 0x47ca15
xorps xmm0, xmm0
movq qword [edx], xmm0
jmp 0x47ca17
xor edx, edx
cvttss2si eax, dword [esi + 0x3c]
mov ecx, dword [ebp - 0x1010]
mov dword [ecx + 0x11c], edx
mov dword [ecx + 0x118], eax
mov dword [edx], 0
mov eax, dword [ecx + 0x11c]
mov dword [eax + 4], 1
mov dword [ecx + 0x108], 0
mov dword [ecx + 0x10c], 0x447a0000
push ecx
imul ecx, dword [edi + 0x188], 0x980
mov ecx, dword [ecx + edi + 0x2d8]
call fcn.005137e0
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e5f0
mov ecx, eax
mov dword [ebp - 0x101c], eax
test ecx, ecx
jne 0x47c930
jmp 0x47d361
movss xmm2, dword [esi + 0x1c]
movss xmm1, dword [0x5d9e68]
ucomiss xmm2, xmm1
lahf
test ah, 0x44
jp 0x47ccac
movss xmm0, dword [esi + 0x38]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x47ccac
lea eax, [ebp - 0x418]
push str.The_released_power_wants_to_turn_Green_Dust_into_Blue_Dust.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov eax, dword [ebp - 0x1028]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov ecx, dword [eax + 0x11c]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e540
mov ecx, eax
mov dword [ebp - 0x101c], ecx
test ecx, ecx
je 0x47d361
cmp dword [ecx + 0x110], 8
jne 0x47cc7e
mov eax, dword [ecx + 0x11c]
cmp dword [eax], 0
jne 0x47cc7e
movss xmm1, dword [esi + 0x3c]
xorps xmm0, xmm0
comiss xmm1, xmm0
jbe 0x47cc7e
movd xmm0, dword [ecx + 0x118]
cvtdq2ps xmm0, xmm0
comiss xmm1, xmm0
jb 0x47cbc7
imul eax, dword [edi + 0x188], 0x980
push ecx
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e730
mov eax, dword [ebp - 0x101c]
add eax, 8
push 0x5dacf8
push eax
call fcn.0043d380
mov ecx, dword [ebp - 0x101c]
add esp, 8
mov eax, dword [ecx + 0x11c]
mov dword [eax], 1
jmp 0x47cc67
subss xmm0, xmm1
push 0x120
cvttss2si eax, xmm0
mov dword [ecx + 0x118], eax
call fcn.0055f3ea
add esp, 4
mov dword [ebp - 0x1014], eax
mov byte [ebp - 4], 0x1a
test eax, eax
je 0x47cc02
push 0x5dacf8
push 0
push 8
mov ecx, eax
call fcn.00512b90
jmp 0x47cc04
xor eax, eax
push 8
mov dword [ebp - 0x1010], eax
mov byte [ebp - 4], 0
call fcn.0055f3ea
mov edx, eax
add esp, 4
test edx, edx
je 0x47cc27
xorps xmm0, xmm0
movq qword [edx], xmm0
jmp 0x47cc29
xor edx, edx
cvttss2si eax, dword [esi + 0x3c]
mov ecx, dword [ebp - 0x1010]
mov dword [ecx + 0x11c], edx
mov dword [ecx + 0x118], eax
mov dword [edx], 1
mov eax, dword [ecx + 0x11c]
mov dword [eax + 4], 1
mov dword [ecx + 0x108], 0
mov dword [ecx + 0x10c], 0x447a0000
push ecx
imul ecx, dword [edi + 0x188], 0x980
mov ecx, dword [ecx + edi + 0x2d8]
call fcn.005137e0
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e5f0
mov ecx, eax
mov dword [ebp - 0x101c], eax
test ecx, ecx
jne 0x47cb42
jmp 0x47d361
movss xmm1, dword [0x5dd420]
ucomiss xmm2, xmm1
lahf
test ah, 0x44
jp 0x47ceba
movss xmm0, dword [esi + 0x38]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x47ceba
lea eax, [ebp - 0x418]
push str.The_released_power_wants_to_turn_Black_Dust_into_Blue_Dust.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov eax, dword [ebp - 0x1028]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov ecx, dword [eax + 0x11c]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e540
mov ecx, eax
mov dword [ebp - 0x101c], ecx
test ecx, ecx
je 0x47d361
nop
cmp dword [ecx + 0x110], 8
jne 0x47ce8c
mov eax, dword [ecx + 0x11c]
cmp dword [eax], 2
jne 0x47ce8c
movss xmm1, dword [esi + 0x3c]
xorps xmm0, xmm0
comiss xmm1, xmm0
jbe 0x47ce8c
movd xmm0, dword [ecx + 0x118]
cvtdq2ps xmm0, xmm0
comiss xmm1, xmm0
jb 0x47cdd5
imul eax, dword [edi + 0x188], 0x980
push ecx
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e730
mov eax, dword [ebp - 0x101c]
add eax, 8
push 0x5dacf8
push eax
call fcn.0043d380
mov ecx, dword [ebp - 0x101c]
add esp, 8
mov eax, dword [ecx + 0x11c]
mov dword [eax], 1
jmp 0x47ce75
subss xmm0, xmm1
push 0x120
cvttss2si eax, xmm0
mov dword [ecx + 0x118], eax
call fcn.0055f3ea
add esp, 4
mov dword [ebp - 0x1014], eax
mov byte [ebp - 4], 0x1b
test eax, eax
je 0x47ce10
push 0x5dacf8
push 0
push 8
mov ecx, eax
call fcn.00512b90
jmp 0x47ce12
xor eax, eax
push 8
mov dword [ebp - 0x1010], eax
mov byte [ebp - 4], 0
call fcn.0055f3ea
mov edx, eax
add esp, 4
test edx, edx
je 0x47ce35
xorps xmm0, xmm0
movq qword [edx], xmm0
jmp 0x47ce37
xor edx, edx
cvttss2si eax, dword [esi + 0x3c]
mov ecx, dword [ebp - 0x1010]
mov dword [ecx + 0x11c], edx
mov dword [ecx + 0x118], eax
mov dword [edx], 1
mov eax, dword [ecx + 0x11c]
mov dword [eax + 4], 1
mov dword [ecx + 0x108], 0
mov dword [ecx + 0x10c], 0x447a0000
push ecx
imul ecx, dword [edi + 0x188], 0x980
mov ecx, dword [ecx + edi + 0x2d8]
call fcn.005137e0
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e5f0
mov ecx, eax
mov dword [ebp - 0x101c], eax
test ecx, ecx
jne 0x47cd50
jmp 0x47d361
movss xmm3, dword [esi + 0x20]
movss xmm1, dword [0x5dd410]
ucomiss xmm3, xmm1
lahf
test ah, 0x44
jp 0x47cfea
movss xmm0, dword [esi + 0x28]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x47cfea
movss xmm0, dword [esi + 0x38]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x47cfea
lea eax, [ebp - 0x418]
push str.The_released_power_wants_to_change_a_shards_color.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov eax, dword [ebp - 0x1028]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov ecx, dword [eax + 0x11c]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e540
mov ecx, eax
test ecx, ecx
je 0x47d361
nop
cmp dword [ecx + 0x110], 8
jne 0x47cf8b
mov edx, dword [ecx + 0x11c]
mov eax, dword [edx]
cmp eax, 5
jl 0x47cf8b
cmp eax, 0xd
jle 0x47cfaf
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e5f0
mov ecx, eax
test ecx, ecx
jne 0x47cf70
jmp 0x47d361
inc eax
mov dword [edx], eax
mov eax, dword [ecx + 0x11c]
cmp dword [eax], 0xd
jle 0x47cfc3
mov dword [eax], 5
mov eax, dword [ecx + 0x11c]
mov edx, dword [eax]
shl edx, 6
add edx, str.Glowing_Green_Dust
add ecx, 8
mov al, byte [edx]
lea edx, [edx + 1]
mov byte [ecx], al
lea ecx, [ecx + 1]
test al, al
jne 0x47cfd7
jmp 0x47d361
movss xmm0, dword [0x5d9058]
ucomiss xmm3, xmm0
lahf
test ah, 0x44
jp 0x47d361
ucomiss xmm2, xmm0
lahf
test ah, 0x44
jp 0x47d361
ucomiss xmm4, xmm0
lahf
test ah, 0x44
jp 0x47d361
lea eax, [ebp - 0x418]
push str.The_released_power_wants_to_release_your_pets.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov esi, dword [ebp - 0x1028]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov ecx, dword [esi + 0x11c]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
imul eax, dword [edi + 0x188], 0x980
lea ecx, [edi + 0x334]
mov byte [ebp - 0x109c], 0x38
mov byte [ebp - 0xfe8], 0x3a
add ecx, eax
add eax, 0x368
add eax, edi
mov dword [ebp - 0x1020], ecx
mov dword [ebp - 0x1044], eax
cmp byte [ecx + 0x10], 0xff
je 0x47d203
mov eax, dword [edi + 0x180]
mov ecx, esi
mov dword [ebp - 0x109b], eax
mov dword [ebp - 0x1097], 0xffffffff
mov al, byte [edi + 0x108]
mov byte [ebp - 0x1093], al
mov al, byte [edi + 0x10c]
push 0
push 5
mov byte [ebp - 0x1092], al
lea eax, [ebp - 0x109c]
push eax
push 0x11
mov word [ebp - 0x1091], 0x2828
mov dword [ebp - 0x108f], 0x50032
push dword [edi + 0x10c]
push dword [edi + 0x108]
push 0
call fcn.00531c80
push dword [ebp - 0x1020]
lea eax, [ebp - 0x418]
push str._s_is_freed_into_the_wild.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
add esp, 0x1c
lea eax, [ebp - 0xfc8]
mov ecx, esi
push 0
push 5
push eax
push 0x65
push dword [edi + 0x10c]
push dword [edi + 0x108]
push 0
call fcn.00531c80
mov eax, dword [edi + 0x180]
mov dword [ebp - 0xfe7], eax
lea eax, [ebp - 0xfdb]
push 0x10
push eax
push 0x10
push dword [ebp - 0x1020]
call fcn.0044d2f0
mov ecx, dword [ebp - 0x1020]
add esp, 0x10
mov al, byte [ecx + 0x11]
mov byte [ebp - 0xfe2], al
mov byte [ebp - 0xfe3], 0xff
mov al, byte [ecx + 0x12]
mov byte [ebp - 0xfe1], al
movss xmm1, dword [ecx + 0x20]
divss xmm1, dword [0x5d95c4]
movzx eax, byte [ecx + 0x13]
mov ecx, esi
push 0
push 5
mov byte [ebp - 0xfe0], 0
movd xmm0, eax
lea eax, [ebp - 0xfe8]
cvtdq2ps xmm0, xmm0
push eax
push 0x1d
addss xmm1, xmm0
movss dword [ebp - 0xfdf], xmm1
push dword [edi + 0x10c]
push dword [edi + 0x108]
push 0
call fcn.00531c80
mov eax, dword [ebp - 0x1020]
mov byte [eax + 0x10], 0xff
mov eax, dword [ebp - 0x1044]
cmp byte [eax + 0x10], 0xff
je 0x47d361
mov eax, dword [edi + 0x180]
mov ecx, esi
mov dword [ebp - 0x109b], eax
mov dword [ebp - 0x1097], 0xffffffff
mov al, byte [edi + 0x108]
mov byte [ebp - 0x1093], al
mov al, byte [edi + 0x10c]
push 0
push 5
mov byte [ebp - 0x1092], al
lea eax, [ebp - 0x109c]
push eax
push 0x11
mov word [ebp - 0x1091], 0x2828
mov dword [ebp - 0x108f], 0x50032
push dword [edi + 0x10c]
push dword [edi + 0x108]
push 0
call fcn.00531c80
push dword [ebp - 0x1044]
lea eax, [ebp - 0x418]
push str._s_is_freed_into_the_wild.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
add esp, 0x1c
lea eax, [ebp - 0xfc8]
mov ecx, esi
push 0
push 5
push eax
push 0x65
push dword [edi + 0x10c]
push dword [edi + 0x108]
push 0
call fcn.00531c80
mov eax, dword [edi + 0x180]
mov dword [ebp - 0xfe7], eax
lea eax, [ebp - 0xfdb]
push 0x10
push eax
push 0x10
push dword [ebp - 0x1044]
call fcn.0044d2f0
mov ecx, dword [ebp - 0x1044]
add esp, 0x10
mov al, byte [ecx + 0x11]
mov byte [ebp - 0xfe2], al
mov byte [ebp - 0xfe3], 0xff
mov al, byte [ecx + 0x12]
mov byte [ebp - 0xfe1], al
movss xmm1, dword [ecx + 0x20]
divss xmm1, dword [0x5d95c4]
movzx eax, byte [ecx + 0x13]
mov ecx, esi
push 0
push 5
mov byte [ebp - 0xfe0], 1
movd xmm0, eax
lea eax, [ebp - 0xfe8]
cvtdq2ps xmm0, xmm0
push eax
push 0x1d
addss xmm1, xmm0
movss dword [ebp - 0xfdf], xmm1
push dword [edi + 0x10c]
push dword [edi + 0x108]
push 0
call fcn.00531c80
mov eax, dword [ebp - 0x1044]
mov byte [eax + 0x10], 0xff
mov esi, dword [ebp - 0x1038]
mov eax, dword [esi + 0x118]
cmp eax, 1
jle 0x47d37b
dec eax
mov dword [esi + 0x118], eax
jmp 0x47d39f
imul eax, dword [edi + 0x188], 0x980
push esi
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e730
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
mov esi, dword [ebp - 0x1040]
mov ecx, dword [esi + 0xc]
mov eax, dword [esi + 8]
test ecx, ecx
ja 0x4812a6
jb 0x47d3c0
cmp eax, 0x7530
jae 0x4812a6
movss xmm0, dword [ebp - 0x1050]
divss xmm0, dword [0x5d95c8]
movss xmm1, dword [ebp - 0x1074]
comiss xmm1, xmm0
jbe 0x4812a6
mov eax, dword [0x636bc0]
mov edx, dword [esi + 4]
mov ecx, dword [esi]
movd xmm0, dword [eax + 0xa4]
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
movss dword [ebp - 0x1014], xmm0
call fcn.0055f7d0
movss xmm1, dword [ebp - 0x1014]
cvtsd2ss xmm0, xmm0
addss xmm1, xmm0
xorps xmm0, xmm0
movlpd qword [ebp - 0x1018], xmm0
movss xmm0, dword [0x5dd45c]
comiss xmm1, xmm0
jb 0x47d45a
subss xmm1, xmm0
comiss xmm0, xmm1
jbe 0x47d45a
mov eax, dword [ebp - 0x1018]
add eax, 0
mov dword [ebp - 0x1010], eax
mov eax, dword [ebp - 0x1014]
adc eax, 0x80000000
mov dword [ebp - 0x1074], eax
jmp 0x47d472
mov eax, dword [ebp - 0x1014]
mov dword [ebp - 0x1074], eax
mov eax, dword [ebp - 0x1018]
mov dword [ebp - 0x1010], eax
movaps xmm0, xmm1
call fcn.0055f550
mov edi, eax
mov eax, edx
add edi, dword [ebp - 0x1010]
mov dword [esi], edi
adc eax, dword [ebp - 0x1074]
mov dword [esi + 4], eax
mov ecx, dword [esi + 0xc]
push ecx
mov dword [ebp - 0x1010], eax
mov eax, dword [esi + 8]
push eax
push ecx
push eax
call fcn.00560560
mov ecx, eax
mov esi, edx
shld esi, ecx, 2
shl ecx, 2
add eax, ecx
mov ecx, dword [ebp - 0x1010]
adc edx, esi
shld edx, eax, 2
shl eax, 2
cmp edx, ecx
ja 0x4812a6
jb 0x47d4d2
cmp eax, edi
ja 0x4812a6
mov eax, edi
mov edx, 0xcccccccd
mul edx
mov esi, edx
mov dword [ebp - 0x1018], eax
mov eax, edi
mov edx, 0xcccccccc
mul edx
mov edi, eax
mov dword [ebp - 0x1064], edx
mov eax, ecx
mov ecx, 0xcccccccd
mul ecx
mov dword [ebp - 0x1014], edx
mov ecx, eax
mov eax, dword [ebp - 0x1010]
mov edx, 0xcccccccc
mul edx
add ecx, esi
mov dword [ebp - 0x1074], edx
mov edx, dword [ebp - 0x1014]
adc edx, 0
mov dword [ebp - 0x1010], eax
mov esi, eax
add edi, ecx
mov ecx, dword [ebp - 0x1064]
adc ecx, 0
mov dword [ebp - 0x1018], edi
xor eax, eax
add edx, ecx
mov ecx, dword [ebp - 0x1074]
adc eax, eax
add esi, edx
adc ecx, eax
shrd esi, ecx, 4
shr ecx, 4
mov edx, ecx
mov ecx, esi
call fcn.0055f7d0
xorps xmm1, xmm1
ucomisd xmm1, xmm0
ja 0x47d56b
sqrtsd xmm0, xmm0
jmp 0x47d570
call fcn.0059b9c0
movaps xmm1, xmm0
xorps xmm0, xmm0
addsd xmm1, qword [0x5d9060]
movlpd qword [ebp - 0x1018], xmm0
movsd xmm0, qword [0x5dd448]
comisd xmm1, xmm0
jb 0x47d5b5
subsd xmm1, xmm0
comisd xmm0, xmm1
jbe 0x47d5b5
mov esi, dword [ebp - 0x1018]
mov edi, dword [ebp - 0x1014]
add esi, 0
adc edi, 0x80000000
jmp 0x47d5c1
mov edi, dword [ebp - 0x1014]
mov esi, dword [ebp - 0x1018]
movaps xmm0, xmm1
call fcn.0055f720
mov ecx, dword [ebp - 0x1040]
add eax, esi
push str.You_gained_a_skill_level__
adc edx, edi
mov dword [ecx + 8], eax
lea eax, [ebp - 0x418]
push eax
mov dword [ecx + 0xc], edx
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov ecx, dword [ebp - 0x106c]
imul eax, dword [ecx + 0x188], 0x980
movss xmm0, dword [eax + ecx + 0x300]
addss xmm0, dword [0x5dd364]
jmp 0x47739f
push str.Your_attempt_to_magically_break_the_totem_fails._It_crumbles_to_dust.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
mov esi, dword [ebp - 0x1038]
mov eax, dword [esi + 0x118]
cmp eax, 1
jle 0x47dddb
dec eax
mov dword [esi + 0x118], eax
jmp 0x4812a6
push str.You_must_have_a_totem_in_your_workbench_to_shatter.
jmp 0x48125e
xor edx, edx
mov dword [ebp - 0x1034], 0xffffffff
mov dword [ebp - 0x1010], edx
lea esi, [edi + 0x260]
lea eax, [edx + edx*2]
lea edx, [eax*4 + str.BEAR]
mov ecx, edx
lea eax, [ecx + 1]
mov dword [ebp - 0x1014], eax
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x47d6d0
sub ecx, dword [ebp - 0x1014]
push ecx
push esi
push edx
call fcn.005ac826
mov edx, dword [ebp - 0x1010]
add esp, 0xc
test eax, eax
mov ecx, edx
cmovne ecx, dword [ebp - 0x1034]
inc edx
mov dword [ebp - 0x1010], edx
mov eax, ecx
mov dword [ebp - 0x1034], eax
cmp edx, 9
jl 0x47d6b4
mov esi, dword [ebp - 0x1028]
cmp eax, 0xffffffff
jle 0x47eb80
xor eax, eax
xor ecx, ecx
mov dword [ebp - 0x1020], eax
mov dword [ebp - 0x1038], eax
mov dword [ebp - 0x107c], eax
imul eax, dword [edi + 0x188], 0x980
mov dword [ebp - 0x101c], ecx
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e540
test eax, eax
je 0x47eb76
or esi, 0xffffffff
nop dword [eax]
mov ecx, dword [eax + 0x110]
cmp ecx, 2
jne 0x47d788
mov ecx, dword [ebp - 0x101c]
add ecx, dword [eax + 0x118]
mov dword [ebp - 0x101c], ecx
mov dword [ebp - 0x103c], eax
jmp 0x47d7f2
cmp ecx, 0xe
jne 0x47d7a7
mov ecx, dword [ebp - 0x1038]
add ecx, dword [eax + 0x118]
mov dword [ebp - 0x1038], ecx
mov dword [ebp - 0x1040], eax
jmp 0x47d7f2
cmp ecx, 9
jne 0x47d7c6
mov ecx, dword [ebp - 0x1020]
add ecx, dword [eax + 0x118]
mov dword [ebp - 0x1020], ecx
mov dword [ebp - 0x1074], eax
jmp 0x47d7f2
cmp ecx, 0xf
jne 0x47d7f2
mov ecx, dword [ebp - 0x107c]
add ecx, dword [eax + 0x118]
mov dword [ebp - 0x107c], ecx
cmp esi, 0xffffffff
jne 0x47d7ed
mov eax, dword [eax + 0x11c]
movsx esi, byte [eax]
jmp 0x47d7f2
mov esi, 0xfffffffe
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e5f0
test eax, eax
jne 0x47d760
mov ecx, dword [ebp - 0x101c]
mov dword [ebp - 0x1050], esi
mov esi, dword [ebp - 0x1028]
cmp ecx, 1
jle 0x47d834
push str.Use_magic_on_one_totem_at_a_time.
jmp 0x48125e
mov eax, dword [ebp - 0x1020]
cmp eax, 1
jle 0x47d849
push str.Use_magic_on_one_egg_at_a_time.
jmp 0x48125e
mov edx, dword [ebp - 0x1038]
cmp edx, 1
jle 0x47d85e
push str.Use_magic_on_one_staff_at_a_time.
jmp 0x48125e
cmp ecx, 1
jge 0x47d871
cmp eax, 1
jge 0x47d871
cmp edx, 1
jl 0x47eb76
add eax, edx
add eax, ecx
cmp eax, 1
jle 0x47d884
push str.You_have_too_many_imbuable_items_in_the_workbench.
jmp 0x48125e
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e0]
add ecx, 8
call fcn.0044e540
mov dword [ebp - 0x1010], eax
test eax, eax
je 0x47eb6c
xor esi, esi
nop dword [eax]
mov ecx, eax
call fcn.0044ce00
lea ecx, [edi + 0x260]
nop dword [eax]
mov dl, byte [ecx]
cmp dl, byte [eax]
jne 0x47d8e0
test dl, dl
je 0x47d8dc
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x47d8e0
add ecx, 2
add eax, 2
test dl, dl
jne 0x47d8c0
xor eax, eax
jmp 0x47d8e5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47d8f5
mov esi, dword [ebp - 0x1010]
mov esi, dword [esi + 0x11c]
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e0]
add ecx, 8
call fcn.0044e5f0
mov dword [ebp - 0x1010], eax
test eax, eax
jne 0x47d8b0
mov dword [ebp - 0x1024], esi
test esi, esi
mov esi, dword [ebp - 0x1028]
je 0x47eb6c
mov eax, dword [ebp - 0x1020]
test eax, eax
jle 0x47de40
mov eax, dword [ebp - 0x1074]
mov eax, dword [eax + 0x11c]
mov dword [ebp - 0x1014], eax
mov ecx, dword [eax + 4]
mov esi, dword [eax]
add ecx, 4
add esi, ecx
mov eax, 0xa
cmp esi, eax
mov ecx, edi
cmovg esi, eax
call fcn.004873c0
cmp eax, esi
jge 0x47d9a7
lea eax, [ebp - 0x418]
push str.Your_magic_is_too_weak_to_hatch_this_egg.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov eax, dword [ebp - 0x1028]
mov ecx, dword [eax + 0x11c]
jmp 0x48128a
imul ecx, dword [edi + 0x188], 0x980
cmp byte [ecx + edi + 0x344], 0xff
jne 0x47d9ce
mov dword [ebp - 0x1020], 0
xor esi, esi
mov edx, str.Pet_A
jmp 0x47d9f0
cmp byte [ecx + edi + 0x378], 0xff
jne 0x47de04
mov dword [ebp - 0x1020], 1
mov esi, 0x34
mov edx, str.Pet_B
mov eax, esi
mov dword [ebp - 0x1010], esi
add eax, edi
add ecx, 0x334
push 0x10
add eax, ecx
push eax
push 0x400
push edx
call fcn.0044d2f0
imul eax, dword [edi + 0x188], 0x980
add esp, 0x10
add eax, esi
mov dword [eax + edi + 0x348], 0
imul ecx, dword [edi + 0x188], 0x980
add ecx, 0x358
add ecx, esi
add ecx, edi
call fcn.0051b140
imul eax, dword [edi + 0x188], 0x980
mov edx, dword [ebp - 0x1014]
add eax, esi
mov byte [eax + edi + 0x347], 0
imul ecx, dword [edi + 0x188], 0x980
mov al, byte [edx]
add ecx, esi
mov byte [ecx + edi + 0x344], al
imul ecx, dword [edi + 0x188], 0x980
mov al, byte [edx + 4]
add ecx, esi
mov byte [ecx + edi + 0x345], al
imul eax, dword [edi + 0x188], 0x980
add eax, esi
mov byte [eax + edi + 0x346], 0
imul eax, dword [edi + 0x188], 0x980
add eax, esi
mov byte [eax + edi + 0x34c], 0
imul eax, dword [edi + 0x188], 0x980
add eax, esi
mov byte [eax + edi + 0x34d], 0
imul eax, dword [edi + 0x188], 0x980
add eax, esi
mov dword [eax + edi + 0x354], 0
mov eax, dword [edx + 4]
lea ecx, [eax*8]
sub ecx, eax
add ecx, dword [edx]
lea eax, [ecx + ecx*8]
mov ecx, dword [ebp - 0x1034]
shl eax, 4
cmp ecx, dword [eax + 0x619564]
jne 0x47db14
imul eax, dword [edi + 0x188], 0x980
add eax, esi
mov dword [eax + edi + 0x354], 0x3f800000
mov eax, dword [edx + 4]
mov esi, dword [ebp - 0x1028]
push esi
lea ecx, [eax*8]
sub ecx, eax
add ecx, dword [edx]
lea eax, [ecx + ecx*8]
mov ecx, 0x637628
shl eax, 4
push dword [eax + 0x619564]
call fcn.005358c0
test eax, eax
je 0x47db91
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.00536390
test eax, eax
je 0x47db91
imul eax, dword [edi + 0x188], 0x980
add eax, dword [ebp - 0x1010]
movss xmm0, dword [eax + edi + 0x354]
cvtps2pd xmm0, xmm0
addsd xmm0, qword [0x5d9060]
cvtpd2ps xmm0, xmm0
movss dword [eax + edi + 0x354], xmm0
mov eax, dword [edi + 0x14f5c]
test eax, eax
jle 0x47dbc9
imul edx, dword [edi + 0x188], 0x980
imul ecx, dword [ebp - 0x1020], 0x34
add edx, edi
add eax, eax
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm0, dword [ecx + edx + 0x354]
movss dword [ecx + edx + 0x354], xmm0
imul edx, dword [ebp - 0x1020], 0x34
mov byte [ebp - 0x1008], 0x3a
mov eax, dword [edi + 0x180]
mov dword [ebp - 0x1007], eax
mov byte [ebp - 0xffb], 0
imul ecx, dword [edi + 0x188], 0x980
add edx, edi
push 0
push 5
mov al, byte [ecx + edx + 0x345]
mov byte [ebp - 0x1002], al
mov al, byte [ecx + edx + 0x344]
mov byte [ebp - 0x1003], al
mov al, byte [ecx + edx + 0x346]
mov byte [ebp - 0x1001], al
movss xmm1, dword [ecx + edx + 0x354]
divss xmm1, dword [0x5d95c4]
movzx eax, byte [ecx + edx + 0x347]
mov ecx, esi
movd xmm0, eax
mov eax, dword [ebp - 0x1020]
cvtdq2ps xmm0, xmm0
mov byte [ebp - 0x1000], al
lea eax, [ebp - 0x1008]
push eax
push 0x1d
addss xmm1, xmm0
movss dword [ebp - 0xfff], xmm1
push dword [edi + 0x10c]
push dword [edi + 0x108]
push 0
call fcn.00531c80
lea eax, [ebp - 0x418]
push str.You_have_hatched_a_pet_drake_
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
mov byte [ebp - 0x10c4], 0x38
mov ecx, esi
mov eax, dword [edi + 0x180]
mov dword [ebp - 0x10c3], eax
mov dword [ebp - 0x10bf], 0xffffffff
mov al, byte [edi + 0x108]
mov byte [ebp - 0x10bb], al
mov al, byte [edi + 0x10c]
push 0
push 5
mov byte [ebp - 0x10ba], al
lea eax, [ebp - 0x10c4]
push eax
push 0x11
mov word [ebp - 0x10b9], 0xffff
mov dword [ebp - 0x10b7], 0x50000
push dword [edi + 0x10c]
push dword [edi + 0x108]
push 0
call fcn.00531c80
push 0x5d7640
push str.petInfo.txt
call fcn.0056f120
mov esi, eax
lea eax, [ebp - 0x418]
push eax
call fcn.00596d1e
lea eax, [ebp - 0x418]
push eax
push str._s_
push esi
call fcn.0043d350
lea eax, [ebp - 0x418]
push eax
call fcn.00596f5e
lea eax, [ebp - 0x418]
push eax
push str._s_
push esi
call fcn.0043d350
push dword [edi + 0x10c]
imul eax, dword [edi + 0x188], 0x980
push dword [edi + 0x108]
add eax, 0x2a0
add eax, edi
push eax
movzx eax, byte [ebp - 0x1002]
lea ecx, [eax*8]
sub ecx, eax
movzx eax, byte [ebp - 0x1003]
add ecx, eax
lea eax, [ecx + ecx*8]
shl eax, 4
add eax, str.Plain_Red_Egg
push eax
push str.BIRTH___s___s___d___d_n
push esi
call fcn.0043d350
add esp, 0x40
push esi
call fcn.0056ee32
mov esi, dword [ebp - 0x1074]
add esp, 4
imul eax, dword [edi + 0x188], 0x980
push esi
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e730
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
jmp 0x4812a6
lea eax, [ebp - 0x418]
push str.You_already_have_two_pet_drakes.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov eax, dword [ebp - 0x1028]
mov ecx, dword [eax + 0x11c]
jmp 0x48128a
mov ecx, edi
call fcn.004873c0
mov ecx, dword [ebp - 0x1024]
cdq
push dword [ecx + 0xc]
push dword [ecx + 8]
push edx
push eax
call fcn.00560560
mov ecx, eax
call fcn.0055f7d0
cvtsd2ss xmm0, xmm0
sub esp, 8
mov dword [esp + 4], 0x3fa66666
mulss xmm0, dword [0x5dd370]
mov dword [esp], 0x3f333333
movss dword [ebp - 0x1014], xmm0
call fcn.004937b0
fmul dword [ebp - 0x1014]
add esp, 8
mov ecx, 0x637628
push esi
push dword [ebp - 0x1034]
fstp dword [ebp - 0x1010]
call fcn.005358c0
test eax, eax
je 0x47dee0
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.00536390
test eax, eax
je 0x47dee0
movss xmm1, dword [ebp - 0x1010]
mulss xmm1, dword [0x5d95c0]
jmp 0x47dee8
movss xmm1, dword [ebp - 0x1010]
mov eax, dword [edi + 0x14f5c]
movss dword [ebp - 0x1030], xmm1
test eax, eax
jle 0x47df1d
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x5dd364]
addss xmm0, dword [0x5d9058]
mulss xmm1, xmm0
movss dword [ebp - 0x1030], xmm1
mov eax, dword [ebp - 0x1038]
test eax, eax
jle 0x47e366
push ecx
movss dword [esp], xmm1
push dword [ebp - 0x1034]
push dword [ebp - 0x1040]
call fcn.00533480
mov dword [ebp - 0x1014], eax
mov eax, dword [ebp - 0x1040]
mov eax, dword [eax + 0x11c]
push eax
mov dword [ebp - 0x1074], eax
call fcn.00533510
fstp dword [ebp - 0x1010]
movss xmm0, dword [ebp - 0x1010]
lea eax, [ebp - 0x418]
cvtps2pd xmm0, xmm0
add esp, 8
movsd qword [esp], xmm0
push str.Task_difficulty_is__4.2f.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x20
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
movss xmm1, dword [ebp - 0x1030]
lea eax, [ebp - 0x418]
cvtps2pd xmm0, xmm1
sub esp, 8
movsd qword [esp], xmm0
push str.Your_work_value_was__4.2f.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x20
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
mov eax, dword [ebp - 0x1024]
push dword [eax + 8]
push dword [ebp - 0x1040]
call fcn.00533550
mov ecx, dword [0x636bc0]
add esp, 8
mov ecx, dword [ecx + 0xa8]
imul ecx, eax
mov eax, dword [ebp - 0x1024]
add dword [eax], ecx
adc dword [eax + 4], 0
mov eax, dword [ebp - 0x1014]
sub eax, 0
je 0x47e0fa
sub eax, 1
je 0x47e0a8
sub eax, 1
jne 0x47e196
lea eax, [ebp - 0x418]
push str.The_attempt_destroys_the_staff.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
add esp, 0x18
jmp 0x47e1ed
lea eax, [ebp - 0x418]
push str.The_magic_fails_to_imbue_the_staff.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
jmp 0x47e196
lea eax, [ebp - 0x418]
push str.The_magic_infuses_the_staff_
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
movss xmm0, dword [ebp - 0x1030]
push ecx
movss dword [esp], xmm0
push dword [ebp - 0x1040]
call fcn.005335c0
movss xmm0, dword [ebp - 0x1030]
lea eax, [edi + 0x260]
add esp, 8
mov ecx, edi
push eax
sub esp, 8
movss dword [esp + 4], xmm0
movss xmm0, dword [ebp - 0x1010]
movss dword [esp], xmm0
push dword [ebp - 0x1040]
push esi
call fcn.004899d0
mov eax, dword [ebp - 0x1074]
xor ecx, ecx
add eax, 0x10
lea edx, [ecx + 9]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
addss xmm0, dword [eax]
add eax, 4
cvttss2si ecx, xmm0
sub edx, 1
jne 0x47e1a4
mov eax, dword [ebp - 0x1074]
mov eax, dword [eax + 4]
add eax, 4
lea eax, [eax + eax*4]
cmp ecx, eax
jle 0x47e236
push 0x64
lea eax, [ebp - 0xfc7]
push eax
push 0x400
push str.The_staff_cant_hold_that_much_magic.__It_shatters_
call fcn.0044d2f0
add esp, 0x10
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
imul eax, dword [edi + 0x188], 0x980
mov esi, dword [ebp - 0x1040]
push esi
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e730
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
mov eax, dword [ebp - 0x1024]
mov esi, dword [eax + 0xc]
mov edx, dword [eax + 8]
test esi, esi
ja 0x4812a6
jb 0x47e255
cmp edx, 0x64
jae 0x4812a6
mov edi, dword [eax]
mov ecx, edx
mov eax, dword [eax + 4]
mov dword [ebp - 0x101c], eax
mov eax, esi
shld eax, ecx, 4
shl ecx, 4
sub ecx, edx
sbb eax, esi
shld eax, ecx, 1
add ecx, ecx
cmp eax, dword [ebp - 0x101c]
ja 0x4812a6
jb 0x47e28b
cmp ecx, edi
ja 0x4812a6
mov ecx, 0x88888889
mov eax, edi
mul ecx
mov eax, edi
mov esi, edx
mov edx, 0x88888888
mul edx
mov edi, eax
mov dword [ebp - 0x1064], edx
mov eax, dword [ebp - 0x101c]
mul ecx
mov dword [ebp - 0x1014], edx
mov ecx, eax
mov eax, dword [ebp - 0x101c]
mov edx, 0x88888888
mul edx
add ecx, esi
mov dword [ebp - 0x1074], edx
mov edx, dword [ebp - 0x1014]
adc edx, 0
mov dword [ebp - 0x1010], eax
add edi, ecx
mov ecx, dword [ebp - 0x1064]
adc ecx, 0
xor eax, eax
add edx, ecx
mov ecx, dword [ebp - 0x1010]
adc eax, eax
add ecx, edx
mov edx, dword [ebp - 0x1074]
adc edx, eax
mov eax, dword [ebp - 0x1024]
shrd ecx, edx, 4
push str.You_gained_a_skill_level__
shr edx, 4
add ecx, 1
mov dword [eax + 8], ecx
adc edx, 0
mov dword [eax + 0xc], edx
lea eax, [ebp - 0x418]
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov ecx, dword [ebp - 0x106c]
imul eax, dword [ecx + 0x188], 0x980
movss xmm0, dword [eax + ecx + 0x300]
addss xmm0, dword [0x5dd374]
jmp 0x47739f
mov ecx, dword [ebp - 0x103c]
mov eax, dword [ecx + 0x11c]
mov dword [ebp - 0x1044], eax
cmp byte [eax + 8], 0
je 0x47e3b2
mov eax, dword [eax]
sub eax, 7
cmp eax, 2
ja 0x47e733
push 0x64
lea eax, [ebp - 0xfc7]
push eax
push 0x400
push str.This_type_of_totem_cannot_be_further_imbued.
call fcn.0044d2f0
mov ecx, dword [esi + 0x11c]
add esp, 0x10
jmp 0x48128d
mov edx, dword [ebp - 0x1050]
test edx, edx
js 0x47e733
cmp dword [ebp - 0x1034], edx
je 0x47e3ee
push 0x64
lea eax, [ebp - 0xfc7]
push eax
push 0x400
push str.The_attempt_feels_painful_and_improper__it_fizzles.
call fcn.0044d2f0
mov ecx, dword [esi + 0x11c]
add esp, 0x10
jmp 0x48128d
mov eax, dword [eax + 4]
add eax, dword [ebp - 0x107c]
push eax
lea eax, [ebp - 0x418]
push str.Task_difficulty_is__d.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x1c
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
movss xmm0, dword [ebp - 0x1030]
lea eax, [ebp - 0x418]
cvtps2pd xmm0, xmm0
sub esp, 8
movsd qword [esp], xmm0
push str.Your_work_value_was__4.2f.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x20
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
mov ecx, dword [ebp - 0x1044]
movss xmm1, dword [ebp - 0x1030]
mov eax, dword [ecx + 4]
add eax, dword [ebp - 0x107c]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
comiss xmm1, xmm0
jb 0x47e62d
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e540
mov esi, eax
test esi, esi
je 0x47e53c
nop dword [eax + eax]
cmp dword [esi + 0x110], 0xf
jne 0x47e51d
imul eax, dword [edi + 0x188], 0x980
push esi
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e730
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e5f0
mov esi, eax
test esi, esi
jne 0x47e4f0
movd xmm0, dword [ebp - 0x107c]
xorps xmm1, xmm1
mov edi, dword [ebp - 0x1044]
cvtdq2ps xmm0, xmm0
mov byte [edi + 8], 1
cvtps2pd xmm0, xmm0
ucomisd xmm1, xmm0
ja 0x47e563
sqrtsd xmm0, xmm0
jmp 0x47e568
call fcn.0059b9c0
cvtsd2ss xmm0, xmm0
lea ecx, [edi + 0xa]
movss dword [edi + 0x40], xmm0
call fcn.0051b140
mov eax, dword [edi + 4]
lea ecx, [edi + 0xa]
lea edx, [eax + 1]
inc eax
imul edx, eax
lea eax, [edx + edx*4]
add eax, eax
push eax
call fcn.0051b0b0
mov eax, dword [ebp - 0x1050]
cmp eax, 7
ja case.0x47e59c.0
jmp dword [eax*4 + 0x4812e8]
mov dword [edi], 8
mov eax, str.Mage_Stat
jmp 0x47e5c8
mov dword [edi], 9
mov eax, str.Crea_Stat
jmp 0x47e5c8
mov dword [edi], 7
mov eax, str.Phys_Stat
push eax
mov eax, dword [edi + 4]
lea eax, [eax + eax*2]
lea eax, [eax*4 + str.Wood]
push eax
mov eax, dword [ebp - 0x103c]
add eax, 8
push str._s__s_Totem
push eax
call fcn.0043d380
mov esi, dword [ebp - 0x1024]
add esp, 0x10
mov ecx, dword [ebp - 0x107c]
sub ecx, dword [esi + 8]
mov eax, ecx
cdq
xor eax, edx
sub eax, edx
cmp eax, 8
jge 0x47e680
inc ecx
mov eax, 1
cmp ecx, eax
cmovge eax, ecx
mov ecx, dword [0x636bc0]
imul eax, dword [ecx + 0xa8]
cdq
add dword [esi], eax
adc dword [esi + 4], edx
jmp 0x47e680
lea eax, [ebp - 0x418]
push str.The_attempt_fails.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
mov esi, dword [ebp - 0x1024]
mov eax, dword [esi + 4]
mov ecx, dword [esi + 0xc]
mov edx, ecx
mov edi, dword [esi]
mov dword [ebp - 0x1010], eax
mov eax, dword [esi + 8]
mov esi, eax
shld edx, esi, 4
shl esi, 4
sub esi, eax
sbb edx, ecx
mov ecx, dword [ebp - 0x1010]
shld edx, esi, 1
add esi, esi
cmp edx, ecx
ja 0x4812a6
jb 0x47e6be
cmp esi, edi
ja 0x4812a6
mov eax, edi
mov edx, 0x88888889
mul edx
mov eax, edi
mov esi, edx
mov edx, 0x88888888
mul edx
mov edi, eax
mov dword [ebp - 0x1064], edx
mov eax, ecx
mov ecx, 0x88888889
mul ecx
mov dword [ebp - 0x1014], edx
mov ecx, eax
mov eax, dword [ebp - 0x1010]
mov edx, 0x88888888
mul edx
add ecx, esi
mov dword [ebp - 0x1074], edx
mov edx, dword [ebp - 0x1014]
adc edx, 0
mov dword [ebp - 0x1010], eax
add edi, ecx
mov ecx, dword [ebp - 0x1064]
adc ecx, 0
xor eax, eax
add edx, ecx
mov ecx, dword [ebp - 0x1010]
adc eax, eax
add ecx, edx
mov edx, dword [ebp - 0x1074]
jmp 0x47e2fa
push ecx
movss dword [esp], xmm1
push dword [ebp - 0x1034]
push ecx
call fcn.00535990
mov ecx, dword [ebp - 0x1044]
add esp, 4
mov dword [ebp - 0x1014], eax
lea eax, [ebp - 0x418]
movd xmm0, dword [ecx + 4]
cvtdq2ps xmm0, xmm0
cvtps2pd xmm0, xmm0
movsd qword [esp], xmm0
push str.Task_difficulty_is__4.2f.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x20
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
movss xmm0, dword [ebp - 0x1030]
lea eax, [ebp - 0x418]
cvtps2pd xmm0, xmm0
sub esp, 8
movsd qword [esp], xmm0
push str.Your_work_value_was__4.2f.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x20
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
mov eax, dword [ebp - 0x1024]
push dword [eax + 8]
mov eax, dword [ebp - 0x103c]
push eax
call fcn.00535a00
mov ecx, dword [0x636bc0]
add esp, 8
mov ecx, dword [ecx + 0xa8]
imul ecx, eax
mov eax, dword [ebp - 0x1024]
add dword [eax], ecx
adc dword [eax + 4], 0
mov eax, dword [ebp - 0x1014]
sub eax, 0
je 0x47e93e
sub eax, 1
je 0x47e8ec
sub eax, 1
jne 0x47e9d2
lea eax, [ebp - 0x418]
push str.The_attempt_destroys_the_totem.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
imul eax, dword [edi + 0x188], 0x980
push dword [ebp - 0x103c]
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e730
mov ecx, dword [ebp - 0x103c]
push 1
mov eax, dword [ecx]
mov eax, dword [eax]
call eax
xor ecx, ecx
mov dword [ebp - 0x103c], ecx
jmp 0x47e9d8
lea eax, [ebp - 0x418]
push str.The_magic_fails_to_imbue_the_totem.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
jmp 0x47e9d2
lea eax, [ebp - 0x418]
push str.The_magic_infuses_the_totem_
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
push dword [ebp - 0x103c]
call fcn.00535a30
movss xmm0, dword [ebp - 0x1030]
lea eax, [edi + 0x260]
add esp, 4
mov ecx, edi
push eax
mov eax, dword [ebp - 0x1044]
sub esp, 8
movss dword [esp + 4], xmm0
movd xmm0, dword [eax + 4]
cvtdq2ps xmm0, xmm0
movss dword [esp], xmm0
push dword [ebp - 0x103c]
push esi
call fcn.004899d0
mov ecx, dword [ebp - 0x103c]
mov eax, dword [ebp - 0x1044]
xor edx, edx
mov edi, dword [ebp - 0x106c]
mov dword [ebp - 0x101c], 0
lea esi, [eax + 0x1c]
test ecx, ecx
je 0x47ea1f
movd xmm0, dword [ebp - 0x101c]
inc edx
cvtdq2ps xmm0, xmm0
addss xmm0, dword [esi]
add esi, 4
cvttss2si edi, xmm0
mov dword [ebp - 0x101c], edi
mov edi, dword [ebp - 0x106c]
cmp edx, 9
jl 0x47e9f3
mov eax, dword [eax + 4]
mov esi, dword [ebp - 0x1028]
add eax, 0xa
cmp dword [ebp - 0x101c], eax
jle 0x47eaa3
test ecx, ecx
je 0x47eaa3
push 0x64
lea eax, [ebp - 0xfc7]
push eax
push 0x400
push str.The_totem_cant_hold_that_much_magic.__It_shatters_
call fcn.0044d2f0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x10
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
imul eax, dword [edi + 0x188], 0x980
mov esi, dword [ebp - 0x103c]
push esi
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e730
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
mov eax, dword [ebp - 0x1024]
mov esi, dword [eax + 0xc]
mov edx, dword [eax + 8]
test esi, esi
ja 0x4812a6
jb 0x47eac2
cmp edx, 0x64
jae 0x4812a6
mov edi, dword [eax]
mov ecx, edx
mov eax, dword [eax + 4]
mov dword [ebp - 0x101c], eax
mov eax, esi
shld eax, ecx, 4
shl ecx, 4
sub ecx, edx
sbb eax, esi
shld eax, ecx, 1
add ecx, ecx
cmp eax, dword [ebp - 0x101c]
ja 0x4812a6
jb 0x47eaf8
cmp ecx, edi
ja 0x4812a6
mov ecx, 0x88888889
mov eax, edi
mul ecx
mov eax, edi
mov esi, edx
mov edx, 0x88888888
mul edx
mov edi, eax
mov dword [ebp - 0x1064], edx
mov eax, dword [ebp - 0x101c]
mul ecx
mov dword [ebp - 0x1014], edx
mov ecx, eax
mov eax, dword [ebp - 0x101c]
mov edx, 0x88888888
mul edx
add ecx, esi
mov dword [ebp - 0x1074], edx
mov edx, dword [ebp - 0x1014]
adc edx, 0
mov dword [ebp - 0x1010], eax
add edi, ecx
mov ecx, dword [ebp - 0x1064]
adc ecx, 0
xor eax, eax
add edx, ecx
mov ecx, dword [ebp - 0x1010]
adc eax, eax
add ecx, edx
mov edx, dword [ebp - 0x1074]
jmp 0x47e2fa
push str.BUG:_Cannot_find_skill_for_magic.
jmp 0x48125e
push str.Put_a_totem_in_your_workbench.
jmp 0x48125e
push str.No_combining_happened.
jmp 0x48125e
xorps xmm0, xmm0
mov dword [ebp - 0x1030], 0
or eax, 0xffffffff
mov dword [ebp - 0x104c], 0
mov dword [ebp - 0x1014], eax
mov dword [ebp - 0x103c], eax
imul eax, dword [edi + 0x188], 0x980
mov dword [ebp - 0x1080], 0
mov dword [ebp - 0x1084], 0
mov dword [ebp - 0x1074], 0
mov dword [ebp - 0x1010], 0
movss dword [ebp - 0x10a0], xmm0
movss dword [ebp - 0x10a4], xmm0
movss dword [ebp - 0x1038], xmm0
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
mov dword [ebp - 0x1050], 0
mov byte [ebp - 0x1085], 0
mov dword [ebp - 0x1034], 0
mov dword [ebp - 0x107c], 0
mov dword [ebp - 0x1040], 0xffffffff
mov dword [ebp - 0x1044], 0xffffffff
mov byte [ebp - 0x1045], 0
movups xmmword [ebp - 0xea8], xmm0
movups xmmword [ebp - 0xe98], xmm0
movups xmmword [ebp - 0xe88], xmm0
movups xmmword [ebp - 0xe78], xmm0
movups xmmword [ebp - 0xf60], xmm0
movups xmmword [ebp - 0xf50], xmm0
movups xmmword [ebp - 0xf40], xmm0
movups xmmword [ebp - 0xf30], xmm0
movups xmmword [ebp - 0xf20], xmm0
movups xmmword [ebp - 0xe68], xmm0
movups xmmword [ebp - 0xe58], xmm0
movups xmmword [ebp - 0xe48], xmm0
movups xmmword [ebp - 0xe38], xmm0
movups xmmword [ebp - 0xe28], xmm0
call fcn.0044e540
mov edx, eax
mov dword [ebp - 0x1024], edx
test edx, edx
je 0x47f139
nop dword [eax + eax]
mov esi, dword [ebp - 0x107c]
lea eax, [edi + 0x260]
mov dword [ebp - 0x1020], esi
mov ecx, 0x5dbb6c
nop word [eax + eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x1024]
jne 0x47ed22
cmp byte [ebp - 0x1009], 0
je 0x47ed1e
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x1024]
jne 0x47ed22
add eax, 2
add ecx, 2
cmp byte [ebp - 0x1009], 0
jne 0x47ece0
xor eax, eax
jmp 0x47ed27
sbb eax, eax
or eax, 1
test eax, eax
je 0x47edb8
cmp dword [edx + 0x110], 8
jne 0x47edb8
mov eax, dword [edx + 0x11c]
mov ecx, dword [eax]
test ecx, ecx
js 0x476383
cmp ecx, 0x10
jg 0x476383
lea eax, [ecx - 5]
cmp eax, 8
ja 0x47ed8d
cmp byte [ebp - 0x1085], 0
jne 0x476347
cmp dword [edx + 0x118], 1
jne 0x476347
inc dword [ebp + ecx*4 - 0xea8]
inc dword [ebp - 0x1050]
mov byte [ebp - 0x1085], 1
jmp 0x47edb8
mov eax, dword [ebp - 0x1050]
mov esi, dword [edx + 0x118]
add eax, esi
add dword [ebp + ecx*4 - 0xea8], esi
mov dword [ebp - 0x1050], eax
cmp ecx, 0xe
jne 0x47edb8
add eax, esi
lea eax, [eax + esi*2]
mov dword [ebp - 0x1050], eax
mov ecx, 0x5dbb6c
lea eax, [edi + 0x260]
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x1024]
jne 0x47ee05
cmp byte [ebp - 0x1009], 0
je 0x47ee01
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x1024]
jne 0x47ee05
add eax, 2
add ecx, 2
cmp byte [ebp - 0x1009], 0
jne 0x47edc3
xor eax, eax
jmp 0x47ee0a
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47ef16
cmp dword [edx + 0x110], 0xe
jne 0x47ef16
mov ecx, dword [ebp - 0x1044]
mov eax, dword [edx + 0x11c]
test ecx, ecx
js 0x47ee38
cmp dword [eax + 4], ecx
jne 0x47f1ab
mov ecx, dword [eax + 8]
test ecx, ecx
jle 0x47ee55
cmp byte [ebp - 0x1045], 0
jne 0x47ee55
cmp dword [ebp - 0x1034], 0
jg 0x47f1e7
movss xmm0, dword [eax + 0x34]
comiss xmm0, dword [0x5d9054]
jbe 0x47ee6b
test ecx, ecx
jg 0x47f223
cmp ecx, 1
jge 0x47ee7d
cmp byte [ebp - 0x1045], 0
jne 0x47f1e7
cmp dword [ebp - 0x1040], 0xffffffff
jle 0x47ee9a
mov edi, dword [ebp - 0x1040]
cmp dword [eax], edi
mov edi, dword [ebp - 0x106c]
jne 0x47f25f
test ecx, ecx
jle 0x47eef0
cmp dword [eax], 0xd
jl 0x47f29b
mov esi, dword [eax + 4]
mov eax, dword [eax]
mov edi, dword [edx + 0x118]
add dword [ebp - 0x1034], edi
mov dword [ebp - 0x1040], eax
mov eax, edi
imul eax, ecx
mov dword [ebp - 0x107c], edi
mov edi, dword [ebp - 0x106c]
mov dword [ebp - 0x1044], esi
mov esi, dword [edx + 0x110]
add eax, dword [ebp - 0x1020]
mov dword [ebp - 0x107c], eax
mov byte [ebp - 0x1045], 1
jmp 0x47ef39
mov esi, dword [eax + 4]
mov eax, dword [eax]
mov dword [ebp - 0x1040], eax
mov eax, dword [edx + 0x118]
add dword [ebp - 0x1034], eax
imul ecx, eax
mov dword [ebp - 0x1044], esi
add dword [ebp - 0x107c], ecx
mov esi, dword [edx + 0x110]
cmp esi, 1
jne 0x47ef39
mov eax, dword [ebp - 0x1080]
add eax, dword [edx + 0x118]
mov dword [ebp - 0x1080], eax
mov dword [ebp - 0x104c], edx
mov ecx, 0x5dbb6c
lea eax, [edi + 0x260]
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x1024]
jne 0x47ef86
cmp byte [ebp - 0x1009], 0
je 0x47ef82
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x1024]
jne 0x47ef86
add eax, 2
add ecx, 2
cmp byte [ebp - 0x1009], 0
jne 0x47ef44
xor eax, eax
jmp 0x47ef8b
sbb eax, eax
or eax, 1
test eax, eax
je 0x47f10a
cmp esi, 4
jne 0x47f10a
mov ecx, dword [edx + 0x118]
mov eax, 0x20
mov esi, dword [edx + 0x11c]
cmp ecx, 0x20
mov dword [ebp - 0x1064], esi
cmovg ecx, eax
add dword [ebp - 0x1030], ecx
mov eax, dword [esi]
imul eax, ecx
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
mov dword [ebp - 0x101c], ecx
add dword [ebp - 0x1084], eax
mov eax, dword [esi + 4]
imul eax, ecx
movaps xmm0, xmm1
mulss xmm0, dword [esi + 0x10]
add dword [ebp - 0x1074], eax
addss xmm0, dword [ebp - 0x1038]
mov eax, dword [esi + 8]
imul eax, ecx
movss dword [ebp - 0x1038], xmm0
movaps xmm0, xmm1
mulss xmm0, dword [esi + 0xc]
add dword [ebp - 0x1010], eax
xor esi, esi
mulss xmm1, dword [edx + 0x10c]
addss xmm0, dword [ebp - 0x10a0]
addss xmm1, dword [ebp - 0x10a4]
movss dword [ebp - 0x10a0], xmm0
movss dword [ebp - 0x10a4], xmm1
nop dword [eax]
mov eax, esi
shl eax, 6
mov dword [ebp - 0x1020], eax
mov eax, dword [ebp + esi*4 - 0xf60]
test eax, eax
jle 0x47f0c0
mov ecx, edx
call fcn.0044ce00
mov ecx, dword [ebp - 0x1020]
lea ecx, [ebp + ecx - 0x918]
nop
mov dl, byte [ecx]
cmp dl, byte [eax]
jne 0x47f090
test dl, dl
je 0x47f08c
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x47f090
add ecx, 2
add eax, 2
test dl, dl
jne 0x47f070
xor eax, eax
jmp 0x47f095
sbb eax, eax
or eax, 1
mov ecx, dword [ebp - 0x101c]
mov edx, dword [ebp - 0x1024]
test eax, eax
jne 0x47f0c2
mov eax, dword [ebp - 0x1064]
mov dword [ebp + esi*4 - 0xf60], ecx
cvttss2si eax, dword [eax + 0x10]
mov dword [ebp + eax*4 - 0xe6c], ecx
jmp 0x47f0c2
je 0x47f0ce
inc esi
cmp esi, 0x14
jl 0x47f040
jmp 0x47f10a
mov dword [ebp + esi*4 - 0xf60], ecx
mov ecx, edx
call fcn.0044ce00
push eax
lea eax, [ebp - 0x918]
add eax, dword [ebp - 0x1020]
push eax
call fcn.0043d380
mov eax, dword [ebp - 0x1064]
add esp, 8
mov ecx, dword [ebp - 0x101c]
cvttss2si eax, dword [eax + 0x10]
mov dword [ebp + eax*4 - 0xe6c], ecx
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e5f0
mov edx, eax
mov dword [ebp - 0x1024], eax
test edx, edx
jne 0x47ecc0
mov esi, dword [ebp - 0x1028]
xor eax, eax
mov dword [ebp - 0x1064], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e0]
add ecx, 8
call fcn.0044e540
mov dword [ebp - 0x101c], eax
test eax, eax
je 0x481259
mov esi, eax
nop word [eax + eax]
mov ecx, esi
call fcn.0044ce00
mov ecx, 0x5dbaf0
nop dword [eax]
mov dl, byte [ecx]
cmp dl, byte [eax]
jne 0x47f2d7
test dl, dl
je 0x47f1a4
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x47f2d7
add ecx, 2
add eax, 2
test dl, dl
jne 0x47f180
xor eax, eax
jmp 0x47f2dc
lea eax, [ebp - 0x418]
push str.You_can_only_have_one_quality_of_staff_when_making_a_scythe.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov eax, dword [ebp - 0x1028]
mov ecx, dword [eax + 0x11c]
jmp 0x48128a
lea eax, [ebp - 0x418]
push str.Cant_mix_imbued_and_unimbued_staffs.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov eax, dword [ebp - 0x1028]
mov ecx, dword [eax + 0x11c]
jmp 0x48128a
lea eax, [ebp - 0x418]
push str.Cant_use_an_imperfect_staff.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov eax, dword [ebp - 0x1028]
mov ecx, dword [eax + 0x11c]
jmp 0x48128a
lea eax, [ebp - 0x418]
push str.Cant_mix_different_imbued_staffs.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov eax, dword [ebp - 0x1028]
mov ecx, dword [eax + 0x11c]
jmp 0x48128a
lea eax, [ebp - 0x418]
push str.Only_taming_staffs_may_be_used_inbued.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov eax, dword [ebp - 0x1028]
mov ecx, dword [eax + 0x11c]
jmp 0x48128a
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47f2ec
mov eax, dword [esi + 0x11c]
mov dword [ebp - 0x1064], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e0]
add ecx, 8
call fcn.0044e5f0
mov esi, eax
test esi, esi
jne 0x47f170
mov eax, dword [ebp - 0x1064]
mov esi, dword [ebp - 0x1028]
test eax, eax
je 0x481259
cmp dword [eax + 0xc], 0
ja 0x47f33b
jb 0x47f331
cmp dword [eax + 8], 0x14
jae 0x47f33b
push str.You_must_first_reach_level_20_in_your_Swordsmith_skill.
jmp 0x48125e
mov eax, dword [ebp - 0x104c]
test eax, eax
je 0x481252
cmp dword [ebp - 0x1080], 1
jl 0x481252
mov eax, dword [eax + 0x11c]
mov dword [ebp - 0x1064], eax
cmp dword [eax + 0x3c], 0
jne 0x481252
movss xmm0, dword [0x5d9ff8]
comiss xmm0, dword [eax + 8]
jbe 0x47f384
push str.The_sacrifical_blade_is_not_big_enough.
jmp 0x48125e
mov ecx, 0x5dbb6c
lea eax, [edi + 0x260]
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x47f3b0
test dl, dl
je 0x47f3ac
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x47f3b0
add eax, 2
add ecx, 2
test dl, dl
jne 0x47f390
xor eax, eax
jmp 0x47f3b5
sbb eax, eax
or eax, 1
mov dword [ebp - 0x1080], 2
mov dword [ebp - 0x101c], 3
mov dword [ebp - 0x1020], 4
test eax, eax
jne 0x47f62e
mov ecx, dword [ebp - 0x104c]
mov esi, 1
mov edx, dword [ecx + 0x11c]
mov eax, dword [edx + 0x40]
mov ecx, dword [edx + 0x44]
xor edx, edx
cmp eax, 1
setg dl
dec edx
cmp ecx, eax
cmovge edx, esi
cmovl ecx, eax
mov dword [ebp - 0x103c], edx
mov edx, dword [ebp - 0x1064]
mov esi, dword [ebp - 0x103c]
mov dword [ebp - 0x1064], 5
mov eax, dword [edx + 0x48]
cmp eax, ecx
cmovge esi, dword [ebp - 0x1080]
cmovl eax, ecx
mov ecx, dword [edx + 0x4c]
cmp ecx, eax
cmovge esi, dword [ebp - 0x101c]
cmovl ecx, eax
mov eax, dword [edx + 0x50]
cmp eax, ecx
cmovge esi, dword [ebp - 0x1020]
cmovl eax, ecx
mov ecx, dword [edx + 0x54]
cmp ecx, eax
cmovge esi, dword [ebp - 0x1064]
cmovl ecx, eax
mov eax, dword [edx + 0x58]
cmp eax, ecx
mov dword [ebp - 0x1064], 6
cmovge esi, dword [ebp - 0x1064]
cmovl eax, ecx
mov ecx, dword [edx + 0x5c]
cmp ecx, eax
mov edx, dword [edx + 0x60]
cmovl ecx, eax
mov dword [ebp - 0x1064], 7
cmovge esi, dword [ebp - 0x1064]
cmp edx, ecx
mov dword [ebp - 0x103c], esi
mov esi, 8
mov eax, dword [ebp - 0x103c]
cmovl edx, ecx
cmovge eax, esi
mov dword [ebp - 0x1064], 0xa
mov dword [ebp - 0x103c], eax
mov esi, 9
mov eax, dword [ebp - 0x104c]
mov ecx, dword [eax + 0x11c]
mov eax, dword [ecx + 0x64]
cmp eax, edx
mov ecx, dword [ebp - 0x103c]
cmovge ecx, esi
cmovl eax, edx
mov dword [ebp - 0x103c], ecx
mov ecx, dword [ebp - 0x104c]
mov esi, dword [ebp - 0x103c]
mov edx, dword [ecx + 0x11c]
mov ecx, dword [edx + 0x68]
cmp ecx, eax
cmovge esi, dword [ebp - 0x1064]
cmovl ecx, eax
mov eax, dword [edx + 0x6c]
cmp eax, ecx
mov dword [ebp - 0x1064], 0xb
cmovge esi, dword [ebp - 0x1064]
cmovl eax, ecx
mov ecx, dword [edx + 0x70]
cmp ecx, eax
mov edx, dword [edx + 0x74]
mov dword [ebp - 0x1064], 0xc
cmovl ecx, eax
cmovge esi, dword [ebp - 0x1064]
cmp edx, ecx
mov dword [ebp - 0x103c], esi
mov esi, 0xd
mov eax, dword [ebp - 0x103c]
cmovl edx, ecx
cmovge eax, esi
mov dword [ebp - 0x1064], 0xe
mov dword [ebp - 0x103c], eax
mov eax, dword [ebp - 0x104c]
mov esi, dword [ebp - 0x103c]
mov ecx, dword [eax + 0x11c]
mov eax, dword [ecx + 0x78]
cmp eax, edx
cmovge esi, dword [ebp - 0x1064]
cmovl eax, edx
mov dword [ebp - 0x103c], esi
mov esi, dword [ebp - 0x1028]
cmp eax, 0x40
jge 0x47f59c
push str.The_sacrifical_blade_is_not_a_proper_greatsword.
jmp 0x48125e
mov edx, dword [ebp - 0x107c]
test edx, edx
jle 0x47f5c2
cmp dword [ecx + 0x34], 1
jge 0x47f5b6
push str.The_sacrifical_blade_does_not_have_any_Gold_Dust.
jmp 0x48125e
mov eax, dword [ebp - 0x1040]
mov dword [ebp - 0x1014], eax
mov ecx, dword [ebp - 0x1044]
lea eax, [edx + edx]
test edx, edx
cmovle eax, edx
mov edx, dword [ebp - 0x1030]
mov dword [ebp - 0x107c], eax
cmp ecx, 0xffffffff
mov eax, 1
cmovg edx, eax
test ecx, ecx
mov eax, 2
cmovg edx, eax
cmp ecx, 1
mov eax, 4
cmovg edx, eax
cmp ecx, 2
mov eax, 8
cmovg edx, eax
cmp ecx, 3
mov eax, 0x10
cmovg edx, eax
cmp ecx, 4
mov eax, 0x20
cmovg edx, eax
mov eax, edx
mov edx, dword [ebp - 0x1034]
imul edx, eax
mov dword [ebp - 0x1030], edx
mov ecx, 0x5dbb6c
lea eax, [edi + 0x260]
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x47f660
test dl, dl
je 0x47f65c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x47f660
add eax, 2
add ecx, 2
test dl, dl
jne 0x47f640
xor eax, eax
jmp 0x47f665
sbb eax, eax
or eax, 1
movss xmm1, dword [0x5db144]
test eax, eax
jne 0x47f69d
mov eax, dword [ebp - 0x103c]
movss xmm0, dword [0x5d9058]
inc eax
imul eax, dword [ebp - 0x1030]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
comiss xmm0, xmm1
jbe 0x47f6d8
push str.Please_use_both_a_staff_and_a_greatsword.
jmp 0x48125e
mov eax, dword [ebp - 0x1030]
cmp eax, 0x20
jle 0x47f6d0
add eax, 0xffffffe0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm1, xmm0
addss xmm1, dword [0x5d9058]
mulss xmm1, dword [ebp - 0x1038]
addss xmm1, dword [ebp - 0x1038]
jmp 0x47f6d8
movss xmm1, dword [ebp - 0x1038]
movd xmm0, dword [ebp - 0x1050]
lea eax, [edi + 0x260]
movaps xmm2, xmm1
mov dword [ebp - 0x1050], 0xffffffff
divss xmm2, dword [0x5d9e68]
xor esi, esi
mov dword [ebp - 0x1034], 0xffffffff
xor edx, edx
mov ecx, 0x5dbb6c
cvtdq2ps xmm0, xmm0
mulss xmm2, xmm0
addss xmm2, xmm1
movss dword [ebp - 0x1038], xmm2
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x1009], dl
mov edx, esi
jne 0x47f759
cmp byte [ebp - 0x1009], dl
je 0x47f755
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x1009], dl
mov edx, esi
jne 0x47f759
add eax, 2
add ecx, 2
cmp byte [ebp - 0x1009], dl
jne 0x47f721
xor eax, eax
jmp 0x47f75e
sbb eax, eax
or eax, 1
test eax, eax
je 0x47f857
mov edx, 2
lea ecx, [ebp - 0xf5c]
mov dword [ebp - 0x1020], edx
mov dword [ebp - 0x1024], ecx
nop dword [eax]
mov edi, dword [ecx - 4]
lea eax, [edx - 2]
cmp esi, edi
cmovge eax, dword [ebp - 0x1050]
cmovge edi, esi
mov dword [ebp - 0x1080], edi
mov edi, dword [ecx]
mov ecx, dword [ebp - 0x1024]
mov dword [ebp - 0x1064], eax
mov eax, dword [ebp - 0x1080]
cmp eax, edi
jge 0x47f7b9
dec edx
cmp eax, edi
mov dword [ebp - 0x1064], edx
mov ecx, dword [ecx + 4]
cmovge edi, eax
mov eax, dword [ebp - 0x1024]
cmp edi, ecx
mov esi, ecx
mov dword [ebp - 0x1080], edi
cmovge esi, edi
mov edx, dword [eax + 8]
cmp esi, edx
mov eax, dword [eax + 0xc]
mov edi, edx
cmovge edi, esi
mov dword [ebp - 0x101c], eax
cmp dword [ebp - 0x1080], ecx
mov eax, dword [ebp - 0x1020]
cmovge eax, dword [ebp - 0x1064]
mov ecx, dword [ebp - 0x1020]
inc ecx
cmp esi, edx
mov edx, dword [ebp - 0x1020]
mov esi, dword [ebp - 0x101c]
cmovge ecx, eax
cmp edi, esi
lea eax, [edx + 2]
cmovge eax, ecx
mov ecx, dword [ebp - 0x1024]
add edx, 5
mov dword [ebp - 0x1050], eax
add ecx, 0x14
mov dword [ebp - 0x1020], edx
cmp edi, esi
mov dword [ebp - 0x1024], ecx
lea eax, [edx - 2]
cmovge esi, edi
cmp eax, 0x14
jl 0x47f780
mov edi, dword [ebp - 0x106c]
xor edx, edx
mov esi, dword [ebp - 0x1050]
jmp 0x47f863
mov esi, dword [ebp - 0x103c]
mov dword [ebp - 0x1050], esi
test esi, esi
jns 0x47f8a3
lea eax, [ebp - 0x418]
push str.Use_ingots_to_make_weapons.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov eax, dword [ebp - 0x1028]
mov ecx, dword [eax + 0x11c]
jmp 0x48128a
mov ecx, 0x5dbb6c
lea eax, [edi + 0x260]
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x1009], dl
mov edx, 0
jne 0x47f8ee
cmp byte [ebp - 0x1009], dl
je 0x47f8ea
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x1009], dl
mov edx, 0
jne 0x47f8ee
add eax, 2
add ecx, 2
cmp byte [ebp - 0x1009], dl
jne 0x47f8b0
xor eax, eax
jmp 0x47f8f3
sbb eax, eax
or eax, 1
test eax, eax
je 0x47f9bc
lea ecx, [ebp - 0xf5c]
mov dword [ebp + esi*4 - 0xf60], 0
mov edi, 2
mov dword [ebp - 0x1080], ecx
mov esi, dword [ecx - 4]
cmp edx, esi
mov ecx, dword [ecx]
cmovge esi, edx
mov dword [ebp - 0x1064], esi
lea esi, [edi - 2]
cmovge esi, dword [ebp - 0x1034]
mov eax, dword [ebp - 0x1064]
cmp eax, ecx
jge 0x47f93e
lea esi, [edi - 1]
cmovge ecx, eax
mov eax, dword [ebp - 0x1080]
mov edx, dword [eax + 4]
cmp ecx, edx
cmovge edx, ecx
cmovl esi, edi
mov dword [ebp - 0x1064], esi
lea ecx, [edi + 2]
mov esi, dword [eax + 8]
cmp edx, esi
mov eax, dword [eax + 0xc]
cmovge esi, edx
mov dword [ebp - 0x101c], eax
mov edx, dword [ebp - 0x101c]
lea eax, [edi + 1]
cmovge eax, dword [ebp - 0x1064]
cmp esi, edx
cmovge ecx, eax
add edi, 5
mov dword [ebp - 0x1034], ecx
mov ecx, dword [ebp - 0x1080]
add ecx, 0x14
cmp esi, edx
lea eax, [edi - 2]
mov dword [ebp - 0x1080], ecx
cmovge edx, esi
cmp eax, 0x14
jl 0x47f917
mov eax, dword [ebp - 0x1034]
mov edi, dword [ebp - 0x106c]
mov dword [ebp - 0x1034], eax
imul eax, dword [edi + 0x188], 0x980
mov dword [ebp - 0x1020], 0
mov ecx, dword [eax + edi + 0x2e0]
add ecx, 8
call fcn.0044e540
mov esi, eax
test esi, esi
je 0x481219
nop dword [eax]
mov ecx, esi
call fcn.0044ce00
lea ecx, [edi + 0x260]
nop dword [eax]
mov dl, byte [ecx]
cmp dl, byte [eax]
jne 0x47fa20
test dl, dl
je 0x47fa1c
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x47fa20
add ecx, 2
add eax, 2
test dl, dl
jne 0x47fa00
xor eax, eax
jmp 0x47fa25
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47fa35
mov eax, dword [esi + 0x11c]
mov dword [ebp - 0x1020], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e0]
add ecx, 8
call fcn.0044e5f0
mov esi, eax
test esi, esi
jne 0x47f9f0
mov esi, dword [ebp - 0x1020]
test esi, esi
je 0x481219
call fcn.0056eac9
mov ecx, edi
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x5dd3a4]
divss xmm0, dword [0x5d95d0]
addss xmm0, dword [0x5dd374]
movss dword [ebp - 0x1064], xmm0
call fcn.00481c00
push dword [esi + 0xc]
cdq
push dword [esi + 8]
push edx
push eax
call fcn.00560560
mov esi, edx
mov ecx, eax
shld esi, eax, 2
shl eax, 2
add ecx, eax
adc edx, esi
shld edx, ecx, 2
shl ecx, 2
call fcn.0055f7d0
mov esi, dword [ebp - 0x1028]
mov ecx, 0x637628
cvtsd2ss xmm0, xmm0
push esi
push 1
mulss xmm0, dword [ebp - 0x1064]
movss dword [ebp - 0x1024], xmm0
call fcn.005358c0
test eax, eax
je 0x47fb1e
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.00536390
test eax, eax
je 0x47fb1e
movss xmm0, dword [ebp - 0x1024]
mulss xmm0, dword [0x5dd38c]
movss dword [ebp - 0x1024], xmm0
push esi
push 0
mov ecx, 0x637628
call fcn.005358c0
test eax, eax
je 0x47fb64
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.00536390
test eax, eax
je 0x47fb64
movss xmm0, dword [ebp - 0x1024]
mulss xmm0, dword [0x5dd38c]
movss dword [ebp - 0x1024], xmm0
push esi
push 2
mov ecx, 0x637628
call fcn.005358c0
test eax, eax
je 0x47fbac
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.00536390
movss xmm1, dword [ebp - 0x1024]
test eax, eax
je 0x47fbb4
mulss xmm1, dword [0x5dd38c]
movss dword [ebp - 0x1024], xmm1
jmp 0x47fbb4
movss xmm1, dword [ebp - 0x1024]
mov eax, dword [edi + 0x14f60]
test eax, eax
jle 0x47fbe1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x5dd364]
addss xmm0, dword [0x5d9058]
mulss xmm0, xmm1
movss dword [ebp - 0x1024], xmm0
movss xmm0, dword [ebp - 0x1038]
lea eax, [ebp - 0x418]
cvtps2pd xmm0, xmm0
sub esp, 8
movsd qword [esp], xmm0
push str.Task_difficulty_is__4.2f.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x20
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
movss xmm0, dword [ebp - 0x1024]
lea eax, [ebp - 0x418]
cvtps2pd xmm0, xmm0
sub esp, 8
movsd qword [esp], xmm0
push str.Your_work_value_was__4.2f.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x20
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
imul ecx, dword [edi + 0x188], 0x980
movss xmm0, dword [ebp - 0x1024]
mov ecx, dword [ecx + edi + 0x2dc]
add ecx, 8
comiss xmm0, dword [ebp - 0x1038]
jb 0x480e7d
call fcn.0044e540
mov esi, eax
test esi, esi
je 0x47fdd4
nop dword [eax]
mov ecx, 0x5dbb6c
lea eax, [edi + 0x260]
nop dword [eax + eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x47fd10
test dl, dl
je 0x47fd0c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x47fd10
add eax, 2
add ecx, 2
test dl, dl
jne 0x47fcf0
xor eax, eax
jmp 0x47fd15
sbb eax, eax
or eax, 1
mov ecx, dword [esi + 0x110]
test eax, eax
je 0x47fd84
cmp ecx, 4
jne 0x47fd59
mov eax, dword [esi + 0x118]
cmp eax, 0x20
jle 0x47fd3d
add eax, 0xffffffe0
mov dword [esi + 0x118], eax
jmp 0x47fdb1
imul eax, dword [edi + 0x188], 0x980
push esi
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e730
jmp 0x47fda7
cmp ecx, 8
jne 0x47fdb1
mov ecx, dword [esi + 0x118]
cmp ecx, 1
jle 0x47fd3d
mov eax, dword [esi + 0x11c]
mov eax, dword [eax]
sub eax, 5
cmp eax, 8
ja 0x47fd3d
lea eax, [ecx - 1]
mov dword [esi + 0x118], eax
jmp 0x47fdb1
cmp ecx, 0xe
jne 0x47fdb1
imul eax, dword [edi + 0x188], 0x980
push esi
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e730
test esi, esi
je 0x47fdb1
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e5f0
mov esi, eax
test esi, esi
jne 0x47fce0
mov edi, dword [ebp - 0x102c]
mov ecx, 0x5dbb6c
mov eax, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x47fe01
test dl, dl
je 0x47fdfd
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x47fe01
add eax, 2
add ecx, 2
test dl, dl
jne 0x47fde1
xor eax, eax
jmp 0x47fe06
sbb eax, eax
or eax, 1
test eax, eax
je 0x47fe9f
mov eax, dword [ebp - 0x1050]
lea esi, [ebp - 0x918]
shl eax, 6
lea ecx, [ebp - 0x418]
add eax, esi
mov esi, dword [ebp - 0x1034]
cmp esi, 0xffffffff
jle 0x47fe8b
push ecx
push 0x5d8428
push eax
call fcn.0043dd20
lea ecx, [ebp - 0x418]
add esp, 0xc
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x47fe48
sub ecx, edx
lea eax, [ebp - 0x418]
add eax, ecx
push str.__WXZQPNS
push eax
call fcn.0043d380
lea ecx, [ebp - 0x418]
add esp, 8
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x47fe70
sub ecx, edx
shl esi, 6
lea eax, [ebp - 0x918]
add eax, esi
lea ecx, [ebp + ecx - 0x418]
push ecx
push 0x5d8428
push eax
call fcn.0043dd20
add esp, 0xc
jmp 0x47ff3c
lea eax, [ebp - 0x418]
push eax
imul eax, dword [ebp - 0x1050], 0x13
push 0x5d8428
add eax, 0x619288
push eax
call fcn.0043dd20
mov esi, dword [ebp - 0x1014]
add esp, 0xc
test esi, esi
jle 0x47ff28
lea ecx, [ebp - 0x418]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x47fed3
sub ecx, edx
lea eax, [ebp - 0x418]
add eax, ecx
push 0x5dbe94
push eax
call fcn.0043d380
lea ecx, [ebp - 0x418]
add esp, 8
lea edx, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x47ff00
mov eax, esi
sub ecx, edx
shl eax, 4
lea eax, [eax + str.Fire]
add eax, esi
push eax
lea eax, [ebp - 0x418]
add eax, ecx
push eax
call fcn.0043d380
add esp, 8
mov eax, dword [ebp - 0x1040]
cmp eax, 0xc
jle 0x47ff3c
sub eax, 6
mov dword [ebp - 0x1040], eax
lea ecx, [ebp - 0x418]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x47ff45
sub ecx, edx
lea eax, [ebp - 0x418]
add eax, ecx
push 0x5dbe94
push eax
call fcn.0043d380
add esp, 8
mov ecx, 0x5dbb6c
mov eax, edi
nop dword [eax + eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x47ff90
test dl, dl
je 0x47ff8c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x47ff90
add eax, 2
add ecx, 2
test dl, dl
jne 0x47ff70
xor eax, eax
jmp 0x47ff95
sbb eax, eax
or eax, 1
test eax, eax
je 0x47ffcf
mov edx, dword [ebp - 0x1030]
xor ecx, ecx
lea eax, [ecx + ecx*8]
cmp dword [eax*8 + 0x618c28], edx
jg 0x47ffb9
mov eax, 3
inc ecx
cmp ecx, eax
jl 0x47ffa1
jmp 0x47ffbc
lea eax, [ecx - 1]
xor esi, esi
test eax, eax
cmovns esi, eax
cmp esi, 2
jle 0x47ffd5
mov esi, 2
jmp 0x47ffd5
mov esi, dword [ebp - 0x1044]
mov ecx, 0x5dbb10
mov eax, edi
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x480000
test dl, dl
je 0x47fffc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x480000
add eax, 2
add ecx, 2
test dl, dl
jne 0x47ffe0
xor eax, eax
jmp 0x480005
sbb eax, eax
or eax, 1
test eax, eax
jne 0x480028
lea ecx, [ebp - 0x418]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x480012
lea eax, [esi + esi*8]
lea eax, [eax*8 + str.Tanto]
jmp 0x4801b3
mov ecx, 0x5dbb5c
mov eax, edi
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x480050
test dl, dl
je 0x48004c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x480050
add eax, 2
add ecx, 2
test dl, dl
jne 0x480030
xor eax, eax
jmp 0x480055
sbb eax, eax
or eax, 1
test eax, eax
jne 0x480078
lea ecx, [ebp - 0x418]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x480062
lea eax, [esi + esi*8]
lea eax, [eax*8 + str.Talon]
jmp 0x4801b3
mov ecx, 0x5dbb24
mov eax, edi
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4800a0
test dl, dl
je 0x48009c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4800a0
add eax, 2
add ecx, 2
test dl, dl
jne 0x480080
xor eax, eax
jmp 0x4800a5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4800c8
lea ecx, [ebp - 0x418]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4800b2
lea eax, [esi + esi*8]
lea eax, [eax*8 + str.Chaos_Knife]
jmp 0x4801b3
mov ecx, 0x5dbb44
mov eax, edi
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4800f0
test dl, dl
je 0x4800ec
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4800f0
add eax, 2
add ecx, 2
test dl, dl
jne 0x4800d0
xor eax, eax
jmp 0x4800f5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x480118
lea ecx, [ebp - 0x418]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x480102
lea eax, [esi + esi*8]
lea eax, [eax*8 + str.Edgestaff]
jmp 0x4801b3
mov ecx, 0x5dbb34
mov eax, edi
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x480140
test dl, dl
je 0x48013c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x480140
add eax, 2
add ecx, 2
test dl, dl
jne 0x480120
xor eax, eax
jmp 0x480145
sbb eax, eax
or eax, 1
test eax, eax
jne 0x480165
lea ecx, [ebp - 0x418]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x480152
lea eax, [esi + esi*8]
lea eax, [eax*8 + str.Small_Mace]
jmp 0x4801b3
mov ecx, 0x5dbb6c
mov eax, edi
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x480190
test dl, dl
je 0x48018c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x480190
add eax, 2
add ecx, 2
test dl, dl
jne 0x480170
xor eax, eax
jmp 0x480195
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4801c7
lea ecx, [ebp - 0x418]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4801a2
lea eax, [esi + esi*8]
lea eax, [eax*8 + str.Pine_Scythe]
push eax
sub ecx, edx
lea eax, [ebp - 0x418]
add eax, ecx
push eax
call fcn.0043d380
add esp, 8
push 0x120
call fcn.0055f3ea
add esp, 4
mov dword [ebp - 0x1014], eax
mov byte [ebp - 4], 2
test eax, eax
je 0x4801f6
lea ecx, [ebp - 0x418]
push ecx
push 0
push 1
mov ecx, eax
call fcn.00512b90
jmp 0x4801f8
xor eax, eax
mov edi, dword [eax + 0x11c]
mov ecx, 0x5dbb6c
mov dword [ebp - 0x1050], eax
mov eax, dword [ebp - 0x102c]
mov byte [ebp - 4], 0
mov dword [ebp - 0x1034], edi
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x102c]
jne 0x480262
cmp byte [ebp - 0x1009], 0
je 0x48025e
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x102c]
jne 0x480262
add eax, 2
add ecx, 2
cmp byte [ebp - 0x1009], 0
jne 0x480220
xor eax, eax
jmp 0x480267
sbb eax, eax
or eax, 1
test eax, eax
je 0x4802c0
movd xmm0, dword [ebp - 0x1030]
lea eax, [esi + esi*8]
movd xmm1, dword [eax*8 + 0x618c2c]
cvtdq2ps xmm1, xmm1
mov esi, dword [ebp - 0x104c]
cvtdq2ps xmm0, xmm0
mulss xmm1, dword [ebp - 0x10a0]
divss xmm1, xmm0
mulss xmm1, dword [0x5d95bc]
cvttss2si ecx, xmm1
mov dword [edi], ecx
mov eax, dword [esi + 0x11c]
mov eax, dword [eax]
cdq
sub eax, edx
mov edx, dword [ebp - 0x102c]
sar eax, 1
add eax, ecx
jmp 0x4802ce
mov esi, dword [ebp - 0x104c]
mov eax, dword [esi + 0x11c]
mov eax, dword [eax]
mov ecx, edi
mov dword [ecx], eax
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 4]
add eax, dword [ebp - 0xea4]
mov dword [edi + 4], eax
mov eax, dword [ebp - 0x1030]
add eax, 0x20
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x5db148]
cvtps2pd xmm0, xmm0
addsd xmm0, qword [0x5d9060]
cvtpd2ps xmm1, xmm0
comiss xmm1, dword [0x5d9e68]
movss dword [edi + 8], xmm1
movaps xmm0, xmm1
jbe 0x4803b5
mov ecx, 0x5dbb6c
mov eax, edx
nop word [eax + eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x102c]
jne 0x480372
cmp byte [ebp - 0x1009], 0
je 0x48036e
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x102c]
jne 0x480372
add eax, 2
add ecx, 2
cmp byte [ebp - 0x1009], 0
jne 0x480330
xor eax, eax
jmp 0x480377
sbb eax, eax
or eax, 1
movaps xmm0, xmm1
test eax, eax
jne 0x4803b5
mulss xmm1, dword [0x5db144]
cvttss2si eax, xmm1
movss xmm1, dword [0x5dd428]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm0, dword [0x5d9084]
comiss xmm0, xmm1
movss dword [edi + 8], xmm0
jbe 0x4803b5
mov dword [edi + 8], 0x41c80000
movaps xmm0, xmm1
mov ecx, 0x5dbb6c
mov eax, edx
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x102c]
jne 0x480402
cmp byte [ebp - 0x1009], 0
je 0x4803fe
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x102c]
jne 0x480402
add eax, 2
add ecx, 2
cmp byte [ebp - 0x1009], 0
jne 0x4803c0
xor eax, eax
jmp 0x480407
sbb eax, eax
or eax, 1
test eax, eax
je 0x480418
mulss xmm0, dword [0x5dd37c]
movss dword [edi + 8], xmm0
mov ecx, 0x5dbb6c
mov eax, edx
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x102c]
jne 0x480462
cmp byte [ebp - 0x1009], 0
je 0x48045e
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x102c]
jne 0x480462
add eax, 2
add ecx, 2
cmp byte [ebp - 0x1009], 0
jne 0x480420
xor eax, eax
jmp 0x480467
sbb eax, eax
or eax, 1
test eax, eax
je 0x48057f
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x40]
add eax, dword [ebp - 0xe68]
mov dword [edi + 0x40], eax
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x44]
add eax, dword [ebp - 0xe64]
mov dword [edi + 0x44], eax
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x48]
add eax, dword [ebp - 0xe60]
mov dword [edi + 0x48], eax
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x4c]
add eax, dword [ebp - 0xe5c]
mov dword [edi + 0x4c], eax
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x50]
add eax, dword [ebp - 0xe58]
mov dword [edi + 0x50], eax
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x54]
add eax, dword [ebp - 0xe54]
mov dword [edi + 0x54], eax
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x58]
add eax, dword [ebp - 0xe50]
mov dword [edi + 0x58], eax
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x5c]
add eax, dword [ebp - 0xe4c]
mov dword [edi + 0x5c], eax
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x60]
add eax, dword [ebp - 0xe48]
mov dword [edi + 0x60], eax
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x64]
add eax, dword [ebp - 0xe44]
mov dword [edi + 0x64], eax
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x68]
add eax, dword [ebp - 0xe40]
mov dword [edi + 0x68], eax
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x6c]
add eax, dword [ebp - 0xe3c]
mov dword [edi + 0x6c], eax
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x70]
add eax, dword [ebp - 0xe38]
mov dword [edi + 0x70], eax
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x74]
add eax, dword [ebp - 0xe34]
mov dword [edi + 0x74], eax
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x78]
add eax, dword [ebp - 0xe30]
jmp 0x480720
mov eax, dword [ebp - 0x1044]
test eax, eax
jne 0x48058e
lea ecx, [eax + 1]
jmp 0x4805c7
cmp eax, 1
jne 0x480598
lea ecx, [eax + 1]
jmp 0x4805c7
cmp eax, 2
jne 0x4805a2
lea ecx, [eax + 2]
jmp 0x4805c7
cmp eax, 3
jne 0x4805ac
lea ecx, [eax + 5]
jmp 0x4805c7
cmp eax, 4
jne 0x4805b6
lea ecx, [eax + 0xc]
jmp 0x4805c7
mov ecx, dword [ebp - 0x1014]
cmp eax, 5
mov eax, 0x20
cmove ecx, eax
mov eax, dword [ebp - 0x103c]
test eax, eax
jne 0x4805e4
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x40]
add eax, ecx
mov dword [edi + 0x40], eax
jmp 0x480723
cmp eax, 1
jne 0x4805fc
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x44]
add eax, ecx
mov dword [edi + 0x44], eax
jmp 0x480723
cmp eax, 2
jne 0x480614
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x48]
add eax, ecx
mov dword [edi + 0x48], eax
jmp 0x480723
cmp eax, 3
jne 0x48062c
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x4c]
add eax, ecx
mov dword [edi + 0x4c], eax
jmp 0x480723
cmp eax, 4
jne 0x480644
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x50]
add eax, ecx
mov dword [edi + 0x50], eax
jmp 0x480723
cmp eax, 5
jne 0x48065c
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x54]
add eax, ecx
mov dword [edi + 0x54], eax
jmp 0x480723
cmp eax, 6
jne 0x480674
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x58]
add eax, ecx
mov dword [edi + 0x58], eax
jmp 0x480723
cmp eax, 7
jne 0x48068c
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x5c]
add eax, ecx
mov dword [edi + 0x5c], eax
jmp 0x480723
cmp eax, 8
jne 0x4806a4
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x60]
add eax, ecx
mov dword [edi + 0x60], eax
jmp 0x480723
cmp eax, 9
jne 0x4806bc
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x64]
add eax, ecx
mov dword [edi + 0x64], eax
jmp 0x480723
cmp eax, 0xa
jne 0x4806d1
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x68]
add eax, ecx
mov dword [edi + 0x68], eax
jmp 0x480723
cmp eax, 0xb
jne 0x4806e6
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x6c]
add eax, ecx
mov dword [edi + 0x6c], eax
jmp 0x480723
cmp eax, 0xc
jne 0x4806fb
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x70]
add eax, ecx
mov dword [edi + 0x70], eax
jmp 0x480723
cmp eax, 0xd
jne 0x480710
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x74]
add eax, ecx
mov dword [edi + 0x74], eax
jmp 0x480723
cmp eax, 0xe
jne 0x480723
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x78]
add eax, ecx
mov dword [edi + 0x78], eax
mov eax, dword [esi + 0x11c]
mov ecx, 0x5dbb6c
mov esi, dword [eax + 0x38]
mov eax, 0x2710
cmp esi, eax
cmovg esi, eax
mov eax, edx
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x102c]
jne 0x480782
cmp byte [ebp - 0x1009], 0
je 0x48077e
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x102c]
jne 0x480782
add eax, 2
add ecx, 2
cmp byte [ebp - 0x1009], 0
jne 0x480740
xor eax, eax
jmp 0x480787
sbb eax, eax
or eax, 1
test eax, eax
je 0x4807b9
movd xmm1, esi
cvtdq2pd xmm1, xmm1
movd xmm0, dword [edi]
divsd xmm1, qword [0x5dd418]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm1
addsd xmm1, qword [0x5dd3e8]
mulsd xmm1, xmm0
cvttsd2si eax, xmm1
mov dword [edi], eax
mov ecx, 0x5dbb10
mov eax, edx
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x102c]
jne 0x480802
cmp byte [ebp - 0x1009], 0
je 0x4807fe
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x102c]
jne 0x480802
add eax, 2
add ecx, 2
cmp byte [ebp - 0x1009], 0
jne 0x4807c0
xor eax, eax
jmp 0x480807
sbb eax, eax
or eax, 1
test eax, eax
jne 0x48081b
mov dword [edi + 0x3c], 1
add dword [edi + 4], 0x14
jmp 0x4809e3
mov ecx, 0x5dbb5c
mov eax, edx
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x102c]
jne 0x480864
cmp byte [ebp - 0x1009], 0
je 0x480860
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x102c]
jne 0x480864
add eax, 2
add ecx, 2
cmp byte [ebp - 0x1009], 0
jne 0x480822
xor eax, eax
jmp 0x480869
sbb eax, eax
or eax, 1
test eax, eax
jne 0x480879
mov dword [edi + 0x3c], 4
jmp 0x4809e3
mov ecx, 0x5dbb24
mov eax, edx
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x102c]
jne 0x4808c2
cmp byte [ebp - 0x1009], 0
je 0x4808be
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x102c]
jne 0x4808c2
add eax, 2
add ecx, 2
cmp byte [ebp - 0x1009], 0
jne 0x480880
xor eax, eax
jmp 0x4808c7
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4808d7
mov dword [edi + 0x3c], 3
jmp 0x4809e3
mov ecx, 0x5dbb44
mov eax, edx
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x102c]
jne 0x480922
cmp byte [ebp - 0x1009], 0
je 0x48091e
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x102c]
jne 0x480922
add eax, 2
add ecx, 2
cmp byte [ebp - 0x1009], 0
jne 0x4808e0
xor eax, eax
jmp 0x480927
sbb eax, eax
or eax, 1
test eax, eax
jne 0x480937
mov dword [edi + 0x3c], 5
jmp 0x4809e3
mov ecx, 0x5dbb6c
mov eax, edx
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x102c]
jne 0x480982
cmp byte [ebp - 0x1009], 0
je 0x48097e
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x102c]
jne 0x480982
add eax, 2
add ecx, 2
cmp byte [ebp - 0x1009], 0
jne 0x480940
xor eax, eax
jmp 0x480987
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4809a2
mov eax, dword [ebp - 0x1040]
add eax, 6
mov dword [edi + 0x3c], eax
mov eax, dword [ebp - 0x107c]
mov dword [edi + 0x38], eax
jmp 0x4809e3
mov ecx, 0x5dbb34
mov eax, edx
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4809d0
test dl, dl
je 0x4809cc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4809d0
add eax, 2
add ecx, 2
test dl, dl
jne 0x4809b0
xor eax, eax
jmp 0x4809d5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4809e3
mov dword [edi + 0x3c], 2
add dword [edi], 0x1e
movss xmm0, dword [ebp - 0x10a4]
mov eax, dword [ebp - 0x1050]
mulss xmm0, dword [0x5dd3a0]
mov esi, dword [ebp - 0x104c]
mov ecx, dword [ebp - 0x1030]
movss dword [eax + 0x10c], xmm0
addss xmm0, dword [esi + 0x10c]
movss dword [eax + 0x10c], xmm0
mov eax, dword [ebp - 0x1084]
cdq
idiv ecx
mov dword [edi + 0x10], eax
mov eax, dword [ebp - 0x1074]
cdq
idiv ecx
mov dword [edi + 0x14], eax
mov eax, dword [ebp - 0x1010]
cdq
idiv ecx
mov ecx, 0x5dbb6c
mov dword [edi + 0x18], eax
mov eax, dword [ebp - 0x102c]
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x480a70
test dl, dl
je 0x480a6c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x480a70
add eax, 2
add ecx, 2
test dl, dl
jne 0x480a50
xor eax, eax
jmp 0x480a75
sbb eax, eax
or eax, 1
test eax, eax
jne 0x480a9d
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x10]
mov dword [edi + 0x10], eax
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x14]
mov dword [edi + 0x14], eax
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x18]
mov dword [edi + 0x18], eax
mov eax, dword [esi + 0x11c]
mov dword [ebp - 0x1014], 0xffffffff
mov esi, dword [eax + 0x20]
add esi, dword [ebp - 0xea0]
mov eax, dword [ebp - 0x104c]
mov dword [edi + 0x20], esi
mov eax, dword [eax + 0x11c]
mov edx, dword [eax + 0x2c]
add edx, dword [ebp - 0xea8]
mov eax, dword [ebp - 0x104c]
mov dword [edi + 0x2c], edx
mov eax, dword [eax + 0x11c]
mov edi, dword [eax + 0x28]
add edi, dword [ebp - 0xe98]
mov eax, dword [ebp - 0x1034]
mov dword [eax + 0x28], edi
mov eax, dword [ebp - 0x104c]
mov eax, dword [eax + 0x11c]
mov ecx, dword [eax + 0x24]
mov eax, dword [ebp - 0xe9c]
add eax, ecx
mov ecx, dword [ebp - 0x1034]
mov dword [ebp - 0x1064], eax
mov dword [ecx + 0x24], eax
mov eax, dword [ebp - 0x104c]
mov eax, dword [eax + 0x11c]
mov eax, dword [eax + 0x30]
add eax, dword [ebp - 0xe6c]
mov dword [ecx + 0x30], eax
mov eax, dword [ebp - 0x104c]
mov eax, dword [eax + 0x11c]
mov eax, dword [eax + 0x34]
add eax, dword [ebp - 0xe70]
mov dword [ecx + 0x34], eax
xor ecx, ecx
test esi, esi
mov eax, esi
cmovle eax, ecx
mov ecx, edx
cmp edx, eax
cmovle ecx, eax
test esi, esi
mov esi, 2
cmovle esi, dword [ebp - 0x1014]
mov dword [ebp - 0x1080], esi
xor esi, esi
cmp edx, eax
mov eax, 4
cmovle esi, dword [ebp - 0x1080]
cmp edi, ecx
cmovg esi, eax
cmovle edi, ecx
mov ecx, dword [ebp - 0x1064]
mov eax, 3
cmp ecx, edi
cmovg esi, eax
cmovle ecx, edi
mov eax, dword [ebp - 0x104c]
mov eax, dword [eax + 0x11c]
mov eax, dword [eax + 4]
add eax, dword [ebp - 0xea4]
cmp eax, ecx
jg case.0x480bc7.1
mov eax, ecx
cmp esi, 0xffffffff
jle 0x480c58
mov edi, eax
cmp esi, 4
ja case.0x480bc7.1
jmp dword [esi*4 + 0x481308]
mov ecx, dword [ebp - 0x1034]
mov edx, 0x11
mov eax, edi
mov dword [ecx + 0x1c], 0x11
jmp 0x480c3b
mov ecx, dword [ebp - 0x1034]
mov edx, 0x15
mov eax, edi
mov dword [ecx + 0x1c], 0x15
jmp 0x480c3b
mov ecx, dword [ebp - 0x1034]
mov edx, 9
mov eax, edi
mov dword [ecx + 0x1c], 9
jmp 0x480c3b
mov ecx, dword [ebp - 0x1034]
mov edx, 0xd
mov eax, edi
mov dword [ecx + 0x1c], 0xd
jmp 0x480c3b
mov ecx, dword [ebp - 0x1034]
mov edx, 1
mov dword [ecx + 0x1c], 1
cmp eax, 1
jle 0x480c44
inc edx
mov dword [ecx + 0x1c], edx
cmp eax, 4
jle 0x480c4d
inc edx
mov dword [ecx + 0x1c], edx
cmp eax, 9
jle 0x480c58
lea eax, [edx + 1]
mov dword [ecx + 0x1c], eax
mov eax, 5
nop dword [eax]
cmp dword [ebp + eax*4 - 0xea8], 0
jg 0x480c75
inc eax
or ecx, 0xffffffff
cmp eax, 0xd
jle 0x480c60
jmp 0x480c78
lea ecx, [eax - 5]
mov esi, dword [ebp - 0x1034]
cmp ecx, 0xffffffff
jle 0x480c9c
lea eax, [ecx + 0x19]
mov dword [esi + 0x1c], eax
mov eax, 0x66666667
imul dword [esi]
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
add dword [esi], eax
mov edi, dword [ebp - 0x102c]
mov ecx, 0x5dbb6c
mov eax, edi
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x480cd0
test dl, dl
je 0x480ccc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x480cd0
add eax, 2
add ecx, 2
test dl, dl
jne 0x480cb0
xor eax, eax
jmp 0x480cd5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x480cf0
mov eax, dword [ebp - 0x104c]
mov eax, dword [eax + 0x11c]
mov eax, dword [eax + 0x1c]
cmp eax, 0x19
jl 0x480cf0
mov dword [esi + 0x1c], eax
lea eax, [ebp - 0x418]
push str.You_have_created_a
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov esi, dword [ebp - 0x1028]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov ecx, dword [esi + 0x11c]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
mov ecx, dword [ebp - 0x1050]
call fcn.0044ce00
push eax
lea eax, [ebp - 0x418]
push 0x5dbeac
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x1c
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
movss xmm0, dword [ebp - 0x1024]
push edi
mov edi, dword [ebp - 0x106c]
sub esp, 8
mov ecx, edi
movss dword [esp + 4], xmm0
movss xmm0, dword [ebp - 0x1038]
movss dword [esp], xmm0
push dword [ebp - 0x1050]
push esi
call fcn.00488fc0
imul ecx, dword [edi + 0x188], 0x980
push dword [ebp - 0x1050]
mov ecx, dword [ecx + edi + 0x2d8]
call fcn.005137e0
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e540
mov esi, eax
test esi, esi
je 0x480f93
nop
cmp dword [esi + 0x110], 1
jne 0x480e59
cmp dword [ebp - 0x104c], esi
jne 0x480e59
mov eax, dword [esi + 0x118]
cmp eax, 1
jne 0x480e52
imul eax, dword [edi + 0x188], 0x980
push esi
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e730
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
jmp 0x480e59
dec eax
mov dword [esi + 0x118], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e5f0
mov esi, eax
test esi, esi
jne 0x480e10
jmp 0x480f93
call fcn.0044e540
mov esi, eax
test esi, esi
je 0x480f93
movss xmm0, dword [ebp - 0x1024]
divss xmm0, dword [ebp - 0x1038]
movss dword [ebp - 0x1014], xmm0
call fcn.0056eac9
movd xmm0, eax
cvtdq2ps xmm0, xmm0
divss xmm0, dword [0x5d95d0]
addss xmm0, dword [0x5d9054]
comiss xmm0, dword [ebp - 0x1014]
jbe 0x480f70
mov eax, dword [esi + 0x110]
cmp eax, 4
je 0x480f2f
cmp eax, 8
jne 0x480f70
mov eax, dword [esi + 0x11c]
mov eax, dword [eax]
cmp eax, 5
jl 0x480f2f
add eax, 0xfffffffb
cmp eax, 0xa
ja 0x480f70
call fcn.0056eac9
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x5d9e68]
divss xmm0, dword [0x5d95d0]
addss xmm0, dword [0x5d9054]
ucomiss xmm0, dword [0x5d9068]
lahf
test ah, 0x44
jp 0x480f70
cmp dword [esi + 0x110], 1
je 0x480f70
mov eax, dword [esi + 0x118]
cmp eax, 1
jle 0x480f4c
dec eax
mov dword [esi + 0x118], eax
jmp 0x480f70
imul eax, dword [edi + 0x188], 0x980
push esi
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e730
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e5f0
mov esi, eax
test esi, esi
jne 0x480ea4
mov esi, dword [ebp - 0x1020]
mov ecx, dword [esi + 0xc]
mov eax, dword [esi + 8]
mov dword [ebp - 0x1010], eax
mov dword [ebp - 0x1064], ecx
test ecx, ecx
ja 0x4812a6
jb 0x480fc0
cmp eax, 0x5dc
jae 0x4812a6
movss xmm1, dword [ebp - 0x1024]
movaps xmm0, xmm1
movss xmm2, dword [ebp - 0x1038]
divss xmm0, dword [0x5dd430]
comiss xmm2, xmm0
jbe 0x4812a6
mov eax, dword [0x636bc0]
mov edx, dword [esi + 4]
mov ecx, dword [esi]
movd xmm0, dword [eax + 0x98]
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
movss dword [ebp - 0x1014], xmm0
call fcn.0055f7d0
movss xmm1, dword [ebp - 0x1014]
cvtsd2ss xmm0, xmm0
addss xmm1, xmm0
xorps xmm0, xmm0
movlpd qword [ebp - 0x1078], xmm0
movss xmm0, dword [0x5dd45c]
comiss xmm1, xmm0
jb 0x481051
subss xmm1, xmm0
comiss xmm0, xmm1
jbe 0x481051
mov esi, dword [ebp - 0x1078]
mov eax, dword [ebp - 0x1074]
add esi, 0
adc eax, 0x80000000
jmp 0x48105d
mov eax, dword [ebp - 0x1074]
mov esi, dword [ebp - 0x1078]
movaps xmm0, xmm1
mov dword [ebp - 0x1014], eax
call fcn.0055f550
mov ecx, dword [ebp - 0x1020]
mov edi, eax
add edi, esi
mov eax, edx
adc eax, dword [ebp - 0x1014]
mov dword [ecx], edi
mov dword [ecx + 4], eax
mov ecx, dword [ebp - 0x1064]
push ecx
mov dword [ebp - 0x1014], eax
mov eax, dword [ebp - 0x1010]
push eax
push ecx
push eax
call fcn.00560560
mov ecx, eax
mov esi, 0xbb8
mov eax, edx
mul esi
mov esi, eax
mov eax, ecx
mov ecx, 0xbb8
mul ecx
mov ecx, dword [ebp - 0x1014]
add esi, edx
cmp esi, ecx
ja 0x4812a6
jb 0x4810cd
cmp eax, edi
ja 0x4812a6
mov eax, edi
mov edx, 0x671529a5
mul edx
mov eax, edi
mov esi, edx
mov edx, 0xaec33e1f
mul edx
mov edi, eax
mov dword [ebp - 0x1010], edx
mov eax, ecx
mov ecx, 0x671529a5
mul ecx
mov dword [ebp - 0x1064], edx
mov ecx, eax
mov eax, dword [ebp - 0x1014]
mov edx, 0xaec33e1f
mul edx
add ecx, esi
mov dword [ebp - 0x1074], edx
mov edx, dword [ebp - 0x1064]
adc edx, 0
mov dword [ebp - 0x1014], eax
mov esi, eax
add edi, ecx
mov ecx, dword [ebp - 0x1010]
adc ecx, 0
xor eax, eax
add edx, ecx
mov ecx, dword [ebp - 0x1074]
adc eax, eax
add esi, edx
adc ecx, eax
shrd esi, ecx, 0xb
shr ecx, 0xb
mov edx, ecx
mov ecx, esi
call fcn.0055f7d0
xorps xmm1, xmm1
ucomisd xmm1, xmm0
ja 0x48115a
sqrtsd xmm0, xmm0
jmp 0x48115f
call fcn.0059b9c0
movaps xmm1, xmm0
xorps xmm0, xmm0
addsd xmm1, qword [0x5d9060]
movlpd qword [ebp - 0x1018], xmm0
movsd xmm0, qword [0x5dd448]
comisd xmm1, xmm0
jb 0x4811a4
subsd xmm1, xmm0
comisd xmm0, xmm1
jbe 0x4811a4
mov esi, dword [ebp - 0x1018]
mov edi, dword [ebp - 0x1014]
add esi, 0
adc edi, 0x80000000
jmp 0x4811b0
mov edi, dword [ebp - 0x1014]
mov esi, dword [ebp - 0x1018]
movaps xmm0, xmm1
call fcn.0055f720
mov ecx, dword [ebp - 0x1020]
add eax, esi
push str.You_gained_a_skill_level__
adc edx, edi
mov dword [ecx + 8], eax
lea eax, [ebp - 0x418]
push eax
mov dword [ecx + 0xc], edx
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov ecx, dword [ebp - 0x106c]
imul eax, dword [ecx + 0x188], 0x980
movss xmm0, dword [eax + ecx + 0x300]
addss xmm0, dword [0x5dacc0]
jmp 0x47739f
lea eax, [ebp - 0x418]
push str.BUG:_Cannot_find_skill_for_level.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov eax, dword [ebp - 0x1028]
mov ecx, dword [eax + 0x11c]
jmp 0x48128a
push str.You_must_sacrifice_one_blade_to_make_this.
jmp 0x48125e
push str.You_must_first_learn_to_create_swords.
lea eax, [ebp - 0x418]
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d2f0
mov ecx, dword [esi + 0x11c]
add esp, 0x18
mov eax, dword [ecx]
lea edx, [ebp - 0x105c]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
lea ecx, [ebp - 0x105c]
call fcn.00473980
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.0055f428
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret 4