Function at 0x474f50
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 0x5c1747
mov eax, dword fs:[0]
push eax
push ebx
mov eax, 0x10c0
call fcn.00556ea0
mov eax, dword [0x626734]
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 - 0x1064], edi
mov esi, dword [ebx + 8]
mov dword [ebp - 0x1024], esi
mov dword [ebp - 0x1060], 0
mov dword [ebp - 0x105c], 0
mov dword [ebp - 0x1058], 0
mov ecx, dword [edi + 0x180]
mov eax, ecx
sar eax, 8
mov byte [ebp - 0x101f], al
mov eax, ecx
sar eax, 0x10
mov byte [ebp - 0x1020], cl
sar ecx, 0x18
mov byte [ebp - 0x101e], al
lea eax, [ebp - 0x1020]
mov byte [ebp - 0x101d], cl
lea ecx, [ebp - 0x1060]
push eax
mov dword [ebp - 4], 0
mov byte [ebp - 0x101c], 0
call fcn.00491860
lea edx, [edi + 0x260]
mov byte [ebp - 0xfc8], 0x17
mov dword [ebp - 0x1018], edx
mov ecx, 0x5d1ab4
mov eax, edx
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x1009], dl
lea edx, [edi + 0x260]
jne 0x475072
cmp byte [ebp - 0x1009], 0
je 0x47506e
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x1009], dl
lea edx, [edi + 0x260]
jne 0x475072
add eax, 2
add ecx, 2
cmp byte [ebp - 0x1009], 0
jne 0x475030
xor eax, eax
jmp 0x475077
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47638c
xorps xmm0, xmm0
mov dword [ebp - 0x1044], eax
mov dword [ebp - 0x102c], eax
xor esi, esi
mov dword [ebp - 0x1050], eax
mov byte [ebp - 0x1049], al
imul eax, dword [edi + 0x188], 0x980
mov dword [ebp - 0x1014], esi
mov dword [ebp - 0x1040], esi
movss dword [ebp - 0x107c], xmm0
movss dword [ebp - 0x1048], xmm0
movss dword [ebp - 0x1054], xmm0
movups xmmword [ebp - 0xea8], xmm0
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
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.0044e330
mov edx, eax
mov dword [ebp - 0x1028], edx
test edx, edx
je 0x475447
nop dword [eax + eax]
mov eax, dword [edx + 0x110]
cmp eax, 8
jne 0x4751e7
mov eax, dword [edx + 0x11c]
mov ecx, dword [eax]
test ecx, ecx
js 0x47540b
cmp ecx, 0x10
jg 0x47540b
lea eax, [ecx - 5]
cmp eax, 8
ja 0x4751b3
cmp byte [ebp - 0x1049], 0
jne 0x4753cf
cmp dword [edx + 0x118], 1
jne 0x4753cf
inc dword [ebp + ecx*4 - 0xea8]
inc dword [ebp - 0x1050]
mov byte [ebp - 0x1049], 1
jmp 0x47536e
mov eax, dword [ebp - 0x1050]
mov edx, dword [edx + 0x118]
add eax, edx
add dword [ebp + ecx*4 - 0xea8], edx
mov dword [ebp - 0x1050], eax
cmp ecx, 0xe
jne 0x47536e
add eax, edx
lea eax, [eax + edx*2]
mov dword [ebp - 0x1050], eax
jmp 0x47536e
cmp eax, 4
jne 0x47536e
mov ecx, dword [edx + 0x118]
mov eax, 0x40
cmp ecx, 0x40
mov edi, dword [ebp - 0x1064]
cmovg ecx, eax
add esi, ecx
mov dword [ebp - 0x1018], ecx
mov dword [ebp - 0x1014], esi
mov esi, dword [edx + 0x11c]
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
mov dword [ebp - 0x106c], esi
mov eax, dword [esi]
imul eax, ecx
movaps xmm0, xmm1
mulss xmm0, dword [esi + 0x10]
add dword [ebp - 0x1040], eax
addss xmm0, dword [ebp - 0x1054]
mov eax, dword [esi + 4]
imul eax, ecx
movss dword [ebp - 0x1054], xmm0
movaps xmm0, xmm1
mulss xmm0, dword [esi + 0xc]
add dword [ebp - 0x1044], eax
mulss xmm1, dword [edx + 0x10c]
mov eax, dword [esi + 8]
addss xmm0, dword [ebp - 0x107c]
imul eax, ecx
addss xmm1, dword [ebp - 0x1048]
movss dword [ebp - 0x107c], xmm0
add dword [ebp - 0x102c], eax
xor esi, esi
movss dword [ebp - 0x1048], xmm1
nop word [eax + eax]
mov edx, dword [ebp + esi*4 - 0xf00]
mov eax, esi
shl eax, 6
mov dword [ebp - 0x1010], eax
test edx, edx
jle 0x47531a
mov ecx, dword [ebp - 0x1028]
call fcn.0044ccd0
mov ecx, dword [ebp - 0x1010]
lea ecx, [ebp + ecx - 0xe18]
nop
mov dl, byte [ecx]
cmp dl, byte [eax]
jne 0x4752f0
test dl, dl
je 0x4752ec
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x4752f0
add ecx, 2
add eax, 2
test dl, dl
jne 0x4752d0
xor eax, eax
jmp 0x4752f5
sbb eax, eax
or eax, 1
mov ecx, dword [ebp - 0x1018]
test eax, eax
jne 0x47531c
mov eax, dword [ebp - 0x106c]
mov dword [ebp + esi*4 - 0xf00], ecx
cvttss2si eax, dword [eax + 0x10]
mov dword [ebp + eax*4 - 0xe6c], ecx
jmp 0x47531c
je 0x475328
inc esi
cmp esi, 0x14
jl 0x4752a0
jmp 0x475368
mov dword [ebp + esi*4 - 0xf00], ecx
mov ecx, dword [ebp - 0x1028]
call fcn.0044ccd0
push eax
lea eax, [ebp - 0xe18]
add eax, dword [ebp - 0x1010]
push eax
call fcn.0043d370
mov eax, dword [ebp - 0x106c]
add esp, 8
mov ecx, dword [ebp - 0x1018]
cvttss2si eax, dword [eax + 0x10]
mov dword [ebp + eax*4 - 0xe6c], ecx
mov esi, dword [ebp - 0x1014]
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e3e0
mov edx, eax
mov dword [ebp - 0x1028], eax
test edx, edx
jne 0x475150
movss xmm2, dword [ebp - 0x1054]
cmp esi, 0x40
jle 0x47544f
lea eax, [esi - 0x40]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x5d1110]
addss xmm0, dword [0x5cf058]
mulss xmm0, xmm2
addss xmm2, xmm0
jmp 0x47544f
lea eax, [ebp - 0x418]
push str.You_can_only_have_one_shard_in_your_workbench_when_you_craft.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov eax, dword [ebp - 0x1024]
mov ecx, dword [eax + 0x11c]
jmp 0x47fc6b
lea eax, [ebp - 0x418]
push str.Ingredient_type_out_of_bounds___Please_report_this_bug.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov eax, dword [ebp - 0x1024]
mov ecx, dword [eax + 0x11c]
jmp 0x47fc6b
movss xmm2, dword [ebp - 0x1054]
movd xmm0, dword [ebp - 0x1050]
movaps xmm1, xmm2
divss xmm1, dword [0x5cfe68]
xor edi, edi
xor esi, esi
mov dword [ebp - 0x1028], 0xffffffff
mov dword [ebp - 0x1010], edi
mov dword [ebp - 0x1050], esi
cvtdq2ps xmm0, xmm0
mulss xmm1, xmm0
movss xmm0, dword [ebp - 0x1048]
addss xmm1, xmm2
movss dword [ebp - 0x1034], xmm1
movss xmm1, dword [ebp - 0x107c]
nop
mov eax, dword [ebp - 0x102c]
mov ecx, dword [ebp + esi*4 - 0xf00]
cmp edi, ecx
mov dword [ebp - 0x102c], eax
mov eax, dword [ebp - 0x1044]
mov dword [ebp - 0x1044], eax
mov eax, dword [ebp - 0x1040]
mov dword [ebp - 0x1040], eax
mov eax, dword [ebp - 0x1014]
mov dword [ebp - 0x1014], eax
mov eax, ecx
cmovge eax, edi
mov dword [ebp - 0x101c], ecx
mov edi, dword [ebp + esi*4 - 0xefc]
mov edx, edi
mov esi, dword [ebp + esi*4 - 0xef8]
cmp eax, edi
mov ecx, dword [ebp - 0x1050]
cmovge edx, eax
mov dword [ebp - 0x103c], eax
cmp edx, esi
mov dword [ebp - 0x1074], edx
mov eax, esi
cmovge eax, edx
mov edx, dword [ebp + ecx*4 - 0xef4]
cmp eax, edx
mov dword [ebp - 0x106c], eax
mov ecx, edx
cmovge ecx, eax
mov dword [ebp - 0x1080], ecx
mov ecx, dword [ebp - 0x1050]
mov eax, dword [ebp + ecx*4 - 0xef0]
mov dword [ebp - 0x1078], eax
mov eax, ecx
mov ecx, dword [ebp - 0x101c]
cmp dword [ebp - 0x1010], ecx
mov ecx, dword [ebp - 0x1050]
cmovge eax, dword [ebp - 0x1028]
inc ecx
cmp dword [ebp - 0x103c], edi
cmovge ecx, eax
mov eax, dword [ebp - 0x1050]
add eax, 2
cmp dword [ebp - 0x1074], esi
mov esi, dword [ebp - 0x1050]
cmovge eax, ecx
cmp dword [ebp - 0x106c], edx
mov edx, dword [ebp - 0x1080]
lea ecx, [esi + 3]
cmovge ecx, eax
lea edi, [esi + 4]
mov eax, dword [ebp - 0x1078]
cmp edx, eax
cmovge edi, ecx
add esi, 5
mov dword [ebp - 0x1028], edi
cmp edx, eax
mov edi, eax
mov dword [ebp - 0x1050], esi
cmovge edi, edx
mov dword [ebp - 0x1010], edi
cmp esi, 0x14
jl 0x4754a0
mov eax, dword [ebp - 0x1028]
test eax, eax
jns 0x475607
lea eax, [ebp - 0x418]
push str.Use_ingots_to_make_blades.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov eax, dword [ebp - 0x1024]
mov ecx, dword [eax + 0x11c]
jmp 0x47fc6b
mov ecx, dword [ebp - 0x1014]
xor edx, edx
xor esi, esi
mov dword [ebp + eax*4 - 0xf00], 0
mov dword [ebp - 0x1050], 0xffffffff
mov dword [ebp - 0x1010], edx
mov dword [ebp - 0x1054], esi
mov eax, dword [ebp - 0x102c]
mov dword [ebp - 0x102c], eax
mov eax, dword [ebp - 0x1044]
mov dword [ebp - 0x1044], eax
mov eax, dword [ebp - 0x1040]
mov dword [ebp - 0x1040], eax
mov dword [ebp - 0x1014], ecx
mov ecx, dword [ebp + esi*4 - 0xf00]
cmp edx, ecx
mov esi, dword [ebp + esi*4 - 0xefc]
mov eax, ecx
cmovge eax, edx
mov edi, esi
cmp eax, esi
mov dword [ebp - 0x101c], eax
cmovge edi, eax
mov eax, dword [ebp - 0x1054]
mov edx, dword [ebp + eax*4 - 0xef8]
cmp edi, edx
cmovge edx, edi
cmp dword [ebp - 0x1010], ecx
mov ecx, dword [ebp - 0x1054]
mov dword [ebp - 0x1018], edx
mov edx, dword [ebp + eax*4 - 0xef4]
cmovge eax, dword [ebp - 0x1050]
inc ecx
cmp dword [ebp - 0x101c], esi
mov esi, dword [ebp - 0x1054]
cmovge ecx, eax
mov dword [ebp - 0x103c], edx
cmp edi, dword [ebp + esi*4 - 0xef8]
lea eax, [esi + 2]
cmovge eax, ecx
mov dword [ebp - 0x101c], eax
mov eax, edx
mov edx, dword [ebp - 0x1018]
cmp edx, eax
jge 0x475720
mov ecx, dword [ebp - 0x1014]
lea edi, [esi + 3]
mov esi, dword [ebp - 0x1040]
mov dword [ebp - 0x1040], esi
mov esi, dword [ebp - 0x1044]
mov dword [ebp - 0x1044], esi
mov esi, dword [ebp - 0x102c]
mov dword [ebp - 0x102c], esi
mov esi, dword [ebp - 0x1054]
mov dword [ebp - 0x1014], ecx
jmp 0x475726
mov edi, dword [ebp - 0x101c]
cmovge eax, edx
lea ecx, [esi + 4]
mov edx, dword [ebp + esi*4 - 0xef0]
cmp eax, edx
cmovge ecx, edi
add esi, 5
cmp eax, edx
mov dword [ebp - 0x1050], ecx
mov ecx, dword [ebp - 0x1014]
cmovge edx, eax
mov dword [ebp - 0x1054], esi
mov dword [ebp - 0x1010], edx
cmp esi, 0x14
jl 0x475632
mov edi, dword [ebp - 0x1064]
xor eax, eax
mov dword [ebp - 0x1054], eax
movss dword [ebp - 0x107c], xmm1
movss dword [ebp - 0x1048], xmm0
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e0]
add ecx, 4
call fcn.0044e330
mov esi, eax
test esi, esi
je 0x476350
mov ecx, esi
call fcn.0044ccd0
lea ecx, [edi + 0x260]
nop
mov dl, byte [ecx]
cmp dl, byte [eax]
jne 0x4757d0
test dl, dl
je 0x4757cc
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x4757d0
add ecx, 2
add eax, 2
test dl, dl
jne 0x4757b0
xor eax, eax
jmp 0x4757d5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4757e5
mov eax, dword [esi + 0x11c]
mov dword [ebp - 0x1054], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e0]
add ecx, 4
call fcn.0044e3e0
mov esi, eax
test esi, esi
jne 0x4757a2
mov esi, dword [ebp - 0x1054]
test esi, esi
je 0x476350
call fcn.00565cd7
mov ecx, edi
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x5d3330]
divss xmm0, dword [0x5cf5d0]
addss xmm0, dword [0x5d3300]
movss dword [ebp - 0x101c], xmm0
call fcn.004805a0
push dword [esi + 0xc]
cdq
push dword [esi + 8]
push edx
push eax
call fcn.00557850
mov ecx, eax
call fcn.00556a60
mov esi, dword [ebp - 0x1024]
mov ecx, 0x62b580
cvtsd2ss xmm0, xmm0
push esi
push 1
mulss xmm0, dword [ebp - 0x101c]
movss dword [ebp - 0x1038], xmm0
call fcn.0052d960
test eax, eax
je 0x4758ba
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.0052e430
test eax, eax
je 0x4758ba
movss xmm0, dword [ebp - 0x1038]
mulss xmm0, dword [0x5d3318]
movss dword [ebp - 0x1038], xmm0
push esi
push 0
mov ecx, 0x62b580
call fcn.0052d960
test eax, eax
je 0x475900
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.0052e430
test eax, eax
je 0x475900
movss xmm0, dword [ebp - 0x1038]
mulss xmm0, dword [0x5d3318]
movss dword [ebp - 0x1038], xmm0
push esi
push 2
mov ecx, 0x62b580
call fcn.0052d960
test eax, eax
je 0x475948
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.0052e430
movss xmm1, dword [ebp - 0x1038]
test eax, eax
je 0x475950
mulss xmm1, dword [0x5d3318]
movss dword [ebp - 0x1038], xmm1
jmp 0x475950
movss xmm1, dword [ebp - 0x1038]
mov eax, dword [edi + 0x14f38]
test eax, eax
jle 0x47597d
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x5d32f0]
addss xmm0, dword [0x5cf058]
mulss xmm0, xmm1
movss dword [ebp - 0x1038], 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.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x1060]
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 - 0x1038]
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.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x1060]
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 - 0x1038]
mov ecx, dword [ecx + edi + 0x2dc]
add ecx, 4
comiss xmm0, dword [ebp - 0x1034]
jb 0x476041
mov byte [ebp - 0x1049], 0
call fcn.0044e330
mov esi, eax
test esi, esi
je 0x475b46
nop dword [eax]
mov eax, dword [esi + 0x110]
cmp eax, 4
jne 0x475aa4
mov eax, dword [esi + 0x118]
cmp eax, 0x40
jle 0x475aff
add eax, 0xffffffc0
mov dword [esi + 0x118], eax
jmp 0x475b23
cmp eax, 8
jne 0x475b23
mov edx, dword [esi + 0x118]
mov cl, byte [ebp - 0x1049]
cmp edx, 1
jle 0x475ae4
mov eax, dword [esi + 0x11c]
mov eax, dword [eax]
sub eax, 5
cmp eax, 8
ja 0x475ae4
test cl, cl
jne 0x475ae4
lea eax, [edx - 1]
mov byte [ebp - 0x1049], 1
mov dword [esi + 0x118], eax
jmp 0x475b23
mov eax, dword [esi + 0x11c]
mov eax, dword [eax]
sub eax, 5
cmp eax, 8
ja 0x475aff
test cl, cl
jne 0x475b23
mov byte [ebp - 0x1049], 1
imul eax, dword [edi + 0x188], 0x980
push esi
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e520
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, 4
call fcn.0044e3e0
mov esi, eax
test esi, esi
jne 0x475a80
mov eax, dword [ebp - 0x1028]
lea esi, [ebp - 0xe18]
shl eax, 6
lea ecx, [ebp - 0x418]
add eax, esi
mov esi, dword [ebp - 0x1050]
cmp esi, 0xffffffff
jle 0x475bc3
push ecx
push 0x5ce428
push eax
call fcn.0043dd00
lea ecx, [ebp - 0x418]
add esp, 0xc
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x475b80
sub ecx, edx
lea eax, [ebp - 0x418]
add eax, ecx
push str.__WXZQPNS
push eax
call fcn.0043d370
lea ecx, [ebp - 0x418]
add esp, 8
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x475ba8
sub ecx, edx
shl esi, 6
lea eax, [ebp - 0xe18]
add eax, esi
lea ecx, [ebp + ecx - 0x418]
push ecx
push 0x5ce428
push eax
call fcn.0043dd00
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 0x475be0
sub ecx, edx
lea eax, [ebp - 0x418]
add eax, ecx
push 0x5d1dbc
push eax
call fcn.0043d370
mov edx, dword [ebp - 0x1014]
add esp, 8
xor ecx, ecx
nop word [eax + eax]
lea eax, [ecx + ecx*8]
cmp dword [eax*8 + 0x60ca50], edx
jg 0x475c28
mov eax, 6
inc ecx
cmp ecx, eax
jl 0x475c10
jmp 0x475c2b
lea eax, [ecx - 1]
xor edx, edx
lea ecx, [ebp - 0x418]
test eax, eax
lea esi, [ecx + 1]
cmovns edx, eax
mov eax, 5
cmp edx, eax
cmovg edx, eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x475c45
lea eax, [edx + edx*8]
sub ecx, esi
shl eax, 3
mov dword [ebp - 0x101c], eax
lea eax, [eax + str.Dirk]
push eax
lea eax, [ebp - 0x418]
add eax, ecx
push eax
call fcn.0043d370
push 0x120
call fcn.00556676
add esp, 0xc
mov dword [ebp - 0x103c], eax
mov byte [ebp - 4], 1
test eax, eax
je 0x475c9e
lea ecx, [ebp - 0x418]
push ecx
push 0
push 1
mov ecx, eax
call fcn.0050b040
jmp 0x475ca0
xor eax, eax
mov ecx, dword [ebp - 0x101c]
mov edi, dword [ebp - 0x1014]
mov esi, dword [eax + 0x11c]
mov dword [ebp - 0x1050], eax
movd xmm0, dword [ecx + 0x60ca54]
cvtdq2ps xmm0, xmm0
mov dword [ebp - 0x1030], esi
mov byte [ebp - 4], 0
movd xmm1, edi
mulss xmm0, dword [ebp - 0x107c]
cvtdq2ps xmm1, xmm1
divss xmm0, xmm1
mulss xmm1, dword [0x5d1114]
cvttss2si ecx, xmm0
movss xmm0, dword [ebp - 0x1048]
mulss xmm0, dword [0x5d332c]
mov dword [esi], ecx
mov ecx, dword [ebp - 0xea8]
movss dword [eax + 0x10c], xmm0
mov eax, dword [ebp - 0x1040]
cdq
idiv edi
cvtps2pd xmm0, xmm1
mov dword [esi + 0x10], eax
mov eax, dword [ebp - 0x1044]
cdq
idiv edi
addsd xmm0, qword [0x5cf060]
mov dword [esi + 0x14], eax
mov eax, dword [ebp - 0x102c]
cdq
idiv edi
mov edx, dword [ebp - 0xea4]
mov dword [esi + 0x18], eax
mov edi, dword [ebp - 0xe98]
cvtpd2ps xmm0, xmm0
lea eax, [edx + 1]
mov dword [ebp - 0x1028], edi
mov dword [esi + 4], eax
mov eax, dword [ebp - 0x1030]
movss dword [esi + 8], xmm0
mov esi, dword [ebp - 0xea0]
mov dword [eax + 0x20], esi
mov dword [eax + 0x2c], ecx
mov dword [eax + 0x28], edi
mov edi, dword [ebp - 0xe9c]
mov dword [eax + 0x24], edi
mov edi, dword [ebp - 0x1030]
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
xor edi, edi
test ecx, ecx
mov eax, 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.0x475e77.4
mov dword [ebp - 0x1028], edx
cmp ecx, 0xffffffff
jle 0x475efa
cmp ecx, 4
ja case.0x475e77.1
mov dword [ebp - 0x1028], edx
jmp dword [ecx*4 + 0x47fcb4]
mov ecx, dword [ebp - 0x1030]
mov eax, 0x11
mov dword [ecx + 0x1c], 0x11
jmp 0x475edf
mov ecx, dword [ebp - 0x1030]
mov eax, 0x15
mov dword [ecx + 0x1c], 0x15
jmp 0x475edf
mov ecx, dword [ebp - 0x1030]
mov eax, 9
mov dword [ecx + 0x1c], 9
jmp 0x475edf
mov ecx, dword [ebp - 0x1030]
mov eax, 0xd
mov dword [ecx + 0x1c], 0xd
jmp 0x475ed9
mov ecx, dword [ebp - 0x1030]
mov eax, edi
mov dword [ecx + 0x1c], edi
mov edx, dword [ebp - 0x1028]
cmp edx, 1
jle 0x475ee8
inc eax
mov dword [ecx + 0x1c], eax
cmp edx, 4
jle 0x475ef1
inc eax
mov dword [ecx + 0x1c], eax
cmp edx, 9
jle 0x475efa
inc eax
mov dword [ecx + 0x1c], eax
mov edi, dword [ebp - 0x1064]
mov eax, 5
cmp dword [ebp + eax*4 - 0xea8], 0
jg 0x475f1a
inc eax
or ecx, 0xffffffff
cmp eax, 0xd
jle 0x475f05
jmp 0x475f1d
lea ecx, [eax - 5]
cmp ecx, 0xffffffff
jle 0x475f41
mov esi, dword [ebp - 0x1030]
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.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov esi, dword [ebp - 0x1024]
lea edx, [ebp - 0x1060]
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.0044ccd0
push eax
lea eax, [ebp - 0x418]
push 0x5d1dd4
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x1060]
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 - 0x1038]
lea eax, [edi + 0x260]
push eax
sub esp, 8
mov ecx, edi
movss dword [esp + 4], xmm0
movss xmm0, dword [ebp - 0x1034]
movss dword [esp], xmm0
push dword [ebp - 0x1050]
push esi
call fcn.00487590
imul ecx, dword [edi + 0x188], 0x980
push dword [ebp - 0x1050]
mov ecx, dword [ecx + edi + 0x2d8]
call fcn.0050b900
jmp 0x47618f
call fcn.0044e330
mov esi, eax
test esi, esi
je 0x47618f
movss xmm0, dword [ebp - 0x1038]
divss xmm0, dword [ebp - 0x1034]
movss dword [ebp - 0x101c], xmm0
call fcn.00565cd7
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x5cfe68]
divss xmm0, dword [0x5cf5d0]
addss xmm0, dword [0x5cf054]
cvttss2si eax, xmm0
mov dword [ebp - 0x103c], eax
call fcn.00565cd7
movd xmm0, eax
cvtdq2ps xmm0, xmm0
divss xmm0, dword [0x5cf5d0]
addss xmm0, dword [0x5cf054]
comiss xmm0, dword [ebp - 0x101c]
jbe 0x47616c
mov eax, dword [esi + 0x110]
cmp eax, 4
je 0x4760f9
cmp eax, 8
jne 0x47616c
mov eax, dword [esi + 0x11c]
mov eax, dword [eax]
cmp eax, 5
jl 0x4760f9
add eax, 0xfffffffb
cmp eax, 0xa
ja 0x47616c
cmp dword [ebp - 0x103c], 2
jne 0x47616c
mov ecx, dword [edi + 0x188]
mov edx, ecx
imul eax, ecx, 0x980
cmp dword [eax + edi + 0x2f0], 9
jle 0x476138
cmp dword [esi + 0x110], 8
jne 0x476138
mov eax, dword [esi + 0x11c]
mov eax, dword [eax]
cmp eax, 5
jl 0x476138
cmp eax, 0xe
jge 0x476138
inc dword [esi + 0x118]
mov edx, dword [edi + 0x188]
mov eax, dword [esi + 0x118]
cmp eax, 1
jle 0x47614c
dec eax
mov dword [esi + 0x118], eax
jmp 0x47616c
imul eax, edx, 0x980
push esi
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e520
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, 4
call fcn.0044e3e0
mov esi, eax
test esi, esi
jne 0x476068
mov ecx, dword [ebp - 0x1054]
mov edx, dword [ecx + 0xc]
mov eax, dword [ecx + 8]
mov dword [ebp - 0x106c], eax
mov dword [ebp - 0x1078], edx
test edx, edx
ja 0x47fc87
jb 0x4761bc
cmp eax, 0x7530
jae 0x47fc87
movss xmm1, dword [ebp - 0x1038]
movaps xmm0, xmm1
movss xmm2, dword [ebp - 0x1034]
divss xmm0, dword [0x5cf5c8]
comiss xmm2, xmm0
jbe 0x47fc87
mov eax, dword [0x62aadc]
mov edx, dword [ecx + 4]
mov ecx, dword [ecx]
movd xmm0, dword [eax + 0x98]
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
movss dword [ebp - 0x101c], xmm0
call fcn.00556a60
movss xmm1, dword [ebp - 0x101c]
cvtsd2ss xmm0, xmm0
addss xmm1, xmm0
xorps xmm0, xmm0
movlpd qword [ebp - 0x1020], xmm0
movss xmm0, dword [0x5d33cc]
comiss xmm1, xmm0
jb 0x47624d
subss xmm1, xmm0
comiss xmm0, xmm1
jbe 0x47624d
mov edi, dword [ebp - 0x1020]
mov eax, dword [ebp - 0x101c]
add edi, 0
adc eax, 0x80000000
jmp 0x476259
mov eax, dword [ebp - 0x101c]
mov edi, dword [ebp - 0x1020]
movaps xmm0, xmm1
mov dword [ebp - 0x1010], eax
call fcn.005567e0
mov ecx, eax
mov esi, edx
mov eax, dword [ebp - 0x1054]
add ecx, edi
mov dword [ebp - 0x103c], ecx
adc esi, dword [ebp - 0x1010]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x1078]
push ecx
mov dword [eax + 4], esi
mov eax, dword [ebp - 0x106c]
push eax
push ecx
push eax
call fcn.00557850
mov edi, eax
mov ecx, edx
shld ecx, edi, 4
shl edi, 4
sub edi, eax
mov eax, edi
mov dword [ebp - 0x101c], edi
mov edi, dword [ebp - 0x1064]
sbb ecx, edx
shld ecx, eax, 1
add eax, eax
cmp ecx, esi
ja 0x47fc87
jb 0x4762d2
cmp eax, dword [ebp - 0x103c]
ja 0x47fc87
mov eax, dword [ebp - 0x1054]
mov ecx, dword [ebp - 0x106c]
mov edx, dword [ebp - 0x1078]
add ecx, 1
push str.You_gained_a_skill_level__
adc edx, 0
mov dword [eax + 8], ecx
mov dword [eax + 0xc], edx
lea eax, [ebp - 0x418]
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
imul eax, dword [edi + 0x188], 0x980
movss xmm0, dword [eax + edi + 0x300]
addss xmm0, dword [0x5d32ec]
movss dword [eax + edi + 0x300], xmm0
mov eax, dword [ebp - 0x1024]
mov ecx, dword [eax + 0x11c]
jmp 0x47fc6b
lea eax, [ebp - 0x418]
push str.BUG:_Cannot_find_skill_for_level.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov eax, dword [ebp - 0x1024]
mov ecx, dword [eax + 0x11c]
jmp 0x47fc6b
mov ecx, 0x5d1ad4
mov eax, edx
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x1009], dl
lea edx, [edi + 0x260]
jne 0x4763d5
cmp byte [ebp - 0x1009], 0
je 0x4763d1
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x1009], dl
lea edx, [edi + 0x260]
jne 0x4763d5
add eax, 2
add ecx, 2
cmp byte [ebp - 0x1009], 0
jne 0x476393
xor eax, eax
jmp 0x4763da
sbb eax, eax
or eax, 1
test eax, eax
je 0x47d689
mov ecx, 0x5d1b20
mov eax, edx
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x1009], dl
lea edx, [edi + 0x260]
jne 0x476432
cmp byte [ebp - 0x1009], 0
je 0x47642e
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x1009], dl
lea edx, [edi + 0x260]
jne 0x476432
add eax, 2
add ecx, 2
cmp byte [ebp - 0x1009], 0
jne 0x4763f0
xor eax, eax
jmp 0x476437
sbb eax, eax
or eax, 1
test eax, eax
je 0x47d689
mov ecx, 0x5d1ae8
mov eax, edx
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x1009], dl
lea edx, [edi + 0x260]
jne 0x476488
cmp byte [ebp - 0x1009], 0
je 0x476484
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x1009], dl
lea edx, [edi + 0x260]
jne 0x476488
add eax, 2
add ecx, 2
cmp byte [ebp - 0x1009], 0
jne 0x476446
xor eax, eax
jmp 0x47648d
sbb eax, eax
or eax, 1
test eax, eax
je 0x47d689
mov ecx, 0x5d1b08
mov eax, edx
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x1009], dl
lea edx, [edi + 0x260]
jne 0x4764e2
cmp byte [ebp - 0x1009], 0
je 0x4764de
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x1009], dl
lea edx, [edi + 0x260]
jne 0x4764e2
add eax, 2
add ecx, 2
cmp byte [ebp - 0x1009], 0
jne 0x4764a0
xor eax, eax
jmp 0x4764e7
sbb eax, eax
or eax, 1
test eax, eax
je 0x47d689
mov ecx, str.Scythe_Expertise
mov eax, edx
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x1009], dl
lea edx, [edi + 0x260]
jne 0x476538
cmp byte [ebp - 0x1009], 0
je 0x476534
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x1009], dl
lea edx, [edi + 0x260]
jne 0x476538
add eax, 2
add ecx, 2
cmp byte [ebp - 0x1009], 0
jne 0x4764f6
xor eax, eax
jmp 0x47653d
sbb eax, eax
or eax, 1
test eax, eax
je 0x47d689
mov ecx, 0x5d1af8
mov eax, edx
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x1009], dl
lea edx, [edi + 0x260]
jne 0x476592
cmp byte [ebp - 0x1009], 0
je 0x47658e
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x1009], dl
lea edx, [edi + 0x260]
jne 0x476592
add eax, 2
add ecx, 2
cmp byte [ebp - 0x1009], 0
jne 0x476550
xor eax, eax
jmp 0x476597
sbb eax, eax
or eax, 1
test eax, eax
je 0x47d689
mov ecx, str.Explosives
mov eax, edx
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x1009], dl
lea edx, [edi + 0x260]
jne 0x4765e8
cmp byte [ebp - 0x1009], 0
je 0x4765e4
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x1009], dl
lea edx, [edi + 0x260]
jne 0x4765e8
add eax, 2
add ecx, 2
cmp byte [ebp - 0x1009], 0
jne 0x4765a6
xor eax, eax
jmp 0x4765ed
sbb eax, eax
or eax, 1
test eax, eax
jne 0x477075
mov dword [ebp - 0x10a4], 0x3f800000
xorps xmm0, xmm0
mov dword [ebp - 0x10a0], 0x3f800000
mov dword [ebp - 0x109c], 0x3f800000
mov dword [ebp - 0x1010], eax
mov dword [ebp - 0x106c], eax
imul eax, dword [edi + 0x188], 0x980
movss dword [ebp - 0x1028], xmm0
movss dword [ebp - 0x1018], xmm0
movss dword [ebp - 0x1030], xmm0
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e330
mov ecx, eax
test ecx, ecx
je 0x476778
xor esi, esi
nop
mov eax, dword [ecx + 0x110]
cmp eax, 0xb
jne 0x4766b2
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 - 0x1018]
addss xmm0, dword [ebp - 0x1028]
movss dword [ebp - 0x1018], xmm1
movss dword [ebp - 0x1028], xmm0
jmp 0x476749
cmp eax, 0xa
jne 0x476749
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 - 0x101c], eax
cmp eax, 0x163
jle 0x47670d
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 - 0x101c]
add eax, ecx
lea ecx, [ebp - 0x10a4]
movd xmm0, eax
push ecx
lea ecx, [ebp - 0x10a0]
push ecx
lea ecx, [ebp - 0x109c]
push ecx
sub esp, 0xc
cvtdq2ps xmm0, xmm0
mov dword [esp + 8], 0x3f800000
mov dword [esp + 4], 0x3f800000
movss dword [esp], xmm0
call fcn.0044d390
add esp, 0x18
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e3e0
mov ecx, eax
test ecx, ecx
jne 0x476660
mov dword [ebp - 0x1010], esi
mov esi, dword [ebp - 0x1024]
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e330
test eax, eax
je 0x4767f3
xor esi, esi
cmp dword [eax + 0x110], 0xc
jne 0x4767ca
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 - 0x1030]
movss dword [ebp - 0x1030], xmm0
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e3e0
test eax, eax
jne 0x476797
mov dword [ebp - 0x106c], esi
mov esi, dword [ebp - 0x1024]
cmp dword [ebp - 0x1010], 0
movss xmm0, dword [ebp - 0x1030]
addss xmm0, dword [0x5cf058]
mulss xmm0, dword [ebp - 0x1018]
movss dword [ebp - 0x1030], xmm0
jg 0x476826
push str.Use_explosive_material_to_make_a_bomb.
jmp 0x47fc3f
imul eax, dword [edi + 0x188], 0x980
mov dword [ebp - 0x1034], 0
mov ecx, dword [eax + edi + 0x2e0]
add ecx, 4
call fcn.0044e330
mov dword [ebp - 0x101c], eax
test eax, eax
je 0x47706b
mov esi, eax
nop dword [eax]
mov ecx, esi
call fcn.0044ccd0
lea ecx, [edi + 0x260]
nop dword [eax]
mov dl, byte [ecx]
cmp dl, byte [eax]
jne 0x476890
test dl, dl
je 0x47688c
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x476890
add ecx, 2
add eax, 2
test dl, dl
jne 0x476870
xor eax, eax
jmp 0x476895
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4768a5
mov eax, dword [esi + 0x11c]
mov dword [ebp - 0x1034], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e0]
add ecx, 4
call fcn.0044e3e0
mov esi, eax
test esi, esi
jne 0x476860
mov esi, dword [ebp - 0x1024]
cmp dword [ebp - 0x1034], eax
je 0x47706b
mov ecx, edi
call fcn.004805a0
mov ecx, dword [ebp - 0x1034]
cdq
push dword [ecx + 0xc]
push dword [ecx + 8]
push edx
push eax
call fcn.00557850
mov ecx, eax
call fcn.00556a60
cvtsd2ss xmm0, xmm0
sub esp, 8
mov dword [esp + 4], 0x3fa66666
movss dword [ebp - 0x101c], xmm0
mov dword [esp], 0x3f333333
call fcn.004918b0
fmul dword [ebp - 0x101c]
add esp, 8
mov ecx, 0x62b580
push esi
push 3
fstp dword [ebp - 0x1010]
call fcn.0052d960
test eax, eax
je 0x47696a
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.0052e430
test eax, eax
je 0x47696a
movss xmm0, dword [ebp - 0x1010]
mulss xmm0, dword [0x5d3318]
jmp 0x476972
movss xmm0, dword [ebp - 0x1010]
push esi
push 4
mov ecx, 0x62b580
movss dword [ebp - 0x1014], xmm0
call fcn.0052d960
test eax, eax
je 0x4769c0
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.0052e430
test eax, eax
je 0x4769c0
movss xmm0, dword [ebp - 0x1014]
mulss xmm0, dword [0x5d3318]
movss dword [ebp - 0x1014], xmm0
push esi
push 5
mov ecx, 0x62b580
call fcn.0052d960
test eax, eax
je 0x476a08
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.0052e430
movss xmm1, dword [ebp - 0x1014]
test eax, eax
je 0x476a10
mulss xmm1, dword [0x5d3318]
movss dword [ebp - 0x1014], xmm1
jmp 0x476a10
movss xmm1, dword [ebp - 0x1014]
mov eax, dword [edi + 0x14f38]
test eax, eax
jle 0x476a3d
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x5d32f0]
addss xmm0, dword [0x5cf058]
mulss xmm0, xmm1
movss dword [ebp - 0x1014], xmm0
movss xmm0, dword [ebp - 0x1030]
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.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x1060]
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 - 0x1014]
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.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x1060]
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 - 0x1014]
mov ecx, dword [ecx + edi + 0x2dc]
add ecx, 4
comiss xmm0, dword [ebp - 0x1030]
jb 0x476f4f
call fcn.0044e330
mov dword [ebp - 0x101c], eax
test eax, eax
je 0x476b98
mov esi, eax
nop word [eax + eax]
mov eax, dword [esi + 0x110]
cmp eax, 0xb
je 0x476b55
cmp eax, 0xc
je 0x476b55
cmp eax, 0xa
jne 0x476b79
imul eax, dword [edi + 0x188], 0x980
push esi
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e520
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, 4
call fcn.0044e3e0
mov esi, eax
test esi, esi
jne 0x476b40
movss xmm0, dword [ebp - 0x1028]
xor esi, esi
divss xmm0, dword [0x5cf5c4]
cvttss2si ecx, xmm0
nop
mov eax, 0x66666667
inc esi
imul ecx
sar edx, 2
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
test ecx, ecx
jg 0x476bb0
mov eax, 0xe
cmp esi, eax
cmovg esi, eax
lea eax, [esi + esi*4]
lea eax, [eax*4 + str.Tiny]
push eax
lea eax, [ebp - 0x418]
push str._s_Bomb
push eax
call fcn.0043d370
push 0x120
call fcn.00556676
add esp, 0x10
mov dword [ebp - 0x101c], eax
mov byte [ebp - 4], 3
test eax, eax
je 0x476c23
lea ecx, [ebp - 0x418]
push ecx
push 0
push 0xd
mov ecx, eax
call fcn.0050b040
mov esi, eax
mov dword [ebp - 0x1010], eax
jmp 0x476c2b
xor esi, esi
mov dword [ebp - 0x1010], esi
imul ecx, dword [edi + 0x188], 0x980
push esi
mov byte [ebp - 4], 0
mov ecx, dword [ecx + edi + 0x2d8]
call fcn.0050b900
movss xmm0, dword [ebp - 0x1030]
movss xmm1, dword [ebp - 0x1014]
addss xmm0, xmm0
mov ecx, dword [esi + 0x11c]
mov eax, dword [ebp - 0x106c]
movss xmm2, dword [ebp - 0x1028]
mov esi, dword [ebp - 0x1024]
divss xmm1, xmm0
lea eax, [eax + eax*2]
movss dword [ecx], xmm2
xorps xmm0, xmm0
comiss xmm0, xmm1
mov dword [ecx + 0xc], eax
movss dword [ecx + 4], xmm1
jbe 0x476c99
mov dword [ecx + 4], 0
xorps xmm1, xmm1
comiss xmm1, dword [0x5cf058]
jbe 0x476ca9
mov dword [ecx + 4], 0x3f800000
cmp eax, 1
jge 0x476cb5
mov dword [ecx + 4], 0x3f800000
mov edi, dword [ebp - 0x1010]
addss xmm2, xmm2
movss xmm1, dword [0x5d01b8]
push str.You_have_created_a
movss dword [edi + 0x10c], xmm2
movss xmm0, dword [ebp - 0x109c]
mulss xmm0, xmm1
cvttss2si eax, xmm0
mov dword [ecx + 0x14], eax
movss xmm0, dword [ebp - 0x10a0]
mulss xmm0, xmm1
cvttss2si eax, xmm0
mov dword [ecx + 0x18], eax
movss xmm0, dword [ebp - 0x10a4]
mulss xmm0, xmm1
cvttss2si eax, xmm0
mov dword [ecx + 0x1c], eax
lea eax, [ebp - 0x418]
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x1060]
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, edi
call fcn.0044ccd0
push eax
lea eax, [ebp - 0x418]
push 0x5d1dd4
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x1060]
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
mov eax, dword [0x62aadc]
mov esi, dword [ebp - 0x1034]
movd xmm0, dword [eax + 0x9c]
mov edx, dword [esi + 4]
mov ecx, dword [esi]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [ebp - 0x1030]
movss dword [ebp - 0x101c], xmm0
call fcn.00556a60
movss xmm1, dword [ebp - 0x101c]
cvtsd2ss xmm0, xmm0
addss xmm1, xmm0
xorps xmm0, xmm0
movlpd qword [ebp - 0x1020], xmm0
movss xmm0, dword [0x5d33cc]
comiss xmm1, xmm0
jb 0x476e2d
subss xmm1, xmm0
comiss xmm0, xmm1
jbe 0x476e2d
mov eax, dword [ebp - 0x1020]
add eax, 0
mov dword [ebp - 0x1010], eax
mov eax, dword [ebp - 0x101c]
adc eax, 0x80000000
mov dword [ebp - 0x106c], eax
jmp 0x476e45
mov eax, dword [ebp - 0x101c]
mov dword [ebp - 0x106c], eax
mov eax, dword [ebp - 0x1020]
mov dword [ebp - 0x1010], eax
movaps xmm0, xmm1
call fcn.005567e0
add eax, dword [ebp - 0x1010]
mov edi, edx
mov dword [esi], eax
adc edi, dword [ebp - 0x106c]
mov dword [esi + 4], edi
mov ecx, dword [esi + 0xc]
push ecx
mov dword [ebp - 0x101c], eax
mov eax, dword [esi + 8]
push eax
push ecx
push eax
mov dword [ebp - 0x103c], eax
mov dword [ebp - 0x1074], ecx
call fcn.00557850
mov ecx, eax
mov esi, 0x64
mov eax, edx
mul esi
mov esi, eax
mov eax, ecx
mov ecx, 0x64
mul ecx
add esi, edx
cmp esi, edi
ja 0x47fc87
jb 0x476eaf
cmp eax, dword [ebp - 0x101c]
ja 0x47fc87
mov eax, dword [ebp - 0x1034]
mov ecx, dword [ebp - 0x103c]
mov edx, dword [ebp - 0x1074]
add ecx, 1
push str.You_gained_a_skill_level__
adc edx, 0
mov dword [eax + 8], ecx
mov dword [eax + 0xc], edx
lea eax, [ebp - 0x418]
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov eax, dword [ebp - 0x1024]
lea edx, [ebp - 0x1060]
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 edi, dword [ebp - 0x1064]
imul eax, dword [edi + 0x188], 0x980
movss xmm0, dword [eax + edi + 0x300]
addss xmm0, dword [0x5d32f4]
movss dword [eax + edi + 0x300], xmm0
jmp 0x47fc87
mov dword [ebp - 0x1034], 0
call fcn.0044e330
mov dword [ebp - 0x101c], eax
test eax, eax
je 0x476fdb
mov esi, eax
nop word [eax + eax]
mov eax, dword [esi + 0x110]
cmp eax, 0xb
je 0x476f80
cmp eax, 0xc
jne 0x476fb6
imul eax, dword [edi + 0x188], 0x980
push esi
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e520
mov eax, dword [ebp - 0x1034]
mov ecx, esi
add eax, dword [esi + 0x118]
mov dword [ebp - 0x1034], 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, 4
call fcn.0044e3e0
mov esi, eax
test esi, esi
jne 0x476f70
mov esi, dword [ebp - 0x1024]
mov byte [ebp - 0x10cc], 0x46
mov ecx, esi
mov eax, dword [edi + 0x180]
mov dword [ebp - 0x10cb], eax
mov eax, 0x66666667
imul dword [ebp - 0x1034]
mov dword [ebp - 0x10c5], 0
sar edx, 2
mov eax, edx
mov dword [ebp - 0x10c1], 0
shr eax, 0x1f
add edx, 5
add eax, edx
push 0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x10bd], xmm0
mov al, byte [edi + 0x108]
mov byte [ebp - 0x10c7], al
mov al, byte [edi + 0x10c]
mov byte [ebp - 0x10c6], al
cvttss2si eax, xmm0
push eax
lea eax, [ebp - 0x10cc]
push eax
push 0x13
push dword [edi + 0x10c]
push dword [edi + 0x108]
push 0
call fcn.00529cd0
jmp 0x47fc87
push str.BUG:_Cannot_find_skill_for_level.
jmp 0x47fc3f
mov ecx, 0x5d1ac0
mov eax, edx
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x1009], dl
lea edx, [edi + 0x260]
jne 0x4770c2
cmp byte [ebp - 0x1009], 0
je 0x4770be
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x1009], dl
lea edx, [edi + 0x260]
jne 0x4770c2
add eax, 2
add ecx, 2
cmp byte [ebp - 0x1009], 0
jne 0x477080
xor eax, eax
jmp 0x4770c7
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4790de
mov dword [ebp - 0x1050], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e330
test eax, eax
je 0x4790d4
xor esi, esi
nop dword [eax + eax]
cmp dword [eax + 0x110], 1
jne 0x47712e
add esi, dword [eax + 0x118]
mov dword [ebp - 0x1050], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e3a0
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e3e0
test eax, eax
jne 0x477100
cmp esi, 1
mov esi, dword [ebp - 0x1024]
jl 0x4790d4
mov eax, dword [ebp - 0x1050]
cmp dword [eax + 0x118], 1
mov esi, dword [eax + 0x11c]
mov dword [ebp - 0x102c], esi
jle 0x477205
push 0x120
call fcn.00556676
add esp, 4
mov dword [ebp - 0x101c], eax
mov byte [ebp - 4], 4
test eax, eax
je 0x4771ae
push str.UNNAMED
push 0
push 0
mov ecx, eax
call fcn.0050b040
mov edx, eax
mov dword [ebp - 0x1010], eax
jmp 0x4771b6
xor edx, edx
mov dword [ebp - 0x1010], edx
mov ecx, dword [ebp - 0x1050]
push edx
mov byte [ebp - 4], 0
mov eax, dword [ecx]
mov eax, dword [eax + 0x18]
call eax
mov ecx, dword [ebp - 0x1050]
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, 4
call fcn.0044e440
lea eax, [ebp - 0x103c]
mov ecx, edi
push eax
lea eax, [ebp - 0x101c]
push eax
push esi
call fcn.004805c0
mov ecx, esi
call fcn.00481960
mov ecx, esi
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x106c], xmm0
call fcn.00481960
cmp dword [esi + 0x1c], 0x19
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x103c], xmm0
movd xmm0, dword [esi]
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x1028], xmm0
jl 0x477274
mulss xmm0, dword [0x5cf5c4]
divss xmm0, dword [0x5d339c]
movss dword [ebp - 0x1028], xmm0
cmp dword [esi + 0x3c], 2
jne 0x47728a
subss xmm0, dword [0x5d33a4]
movss dword [ebp - 0x1028], xmm0
mov eax, dword [ebp - 0x101c]
add eax, 2
movss xmm0, dword [ebp - 0x106c]
addss xmm0, dword [0x5cf058]
mov dword [ebp - 0x1040], 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, 4
movss dword [ebp - 0x107c], xmm1
call fcn.0044e330
mov dword [ebp - 0x101c], eax
test eax, eax
je 0x476350
mov esi, eax
nop dword [eax]
mov ecx, esi
call fcn.0044ccd0
lea ecx, [edi + 0x260]
nop dword [eax]
mov dl, byte [ecx]
cmp dl, byte [eax]
jne 0x4773a0
test dl, dl
je 0x47739c
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x4773a0
add ecx, 2
add eax, 2
test dl, dl
jne 0x477380
xor eax, eax
jmp 0x4773a5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4773b5
mov eax, dword [esi + 0x11c]
mov dword [ebp - 0x1040], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e0]
add ecx, 4
call fcn.0044e3e0
mov esi, eax
test esi, esi
jne 0x477370
mov esi, dword [ebp - 0x102c]
cmp dword [ebp - 0x1040], eax
je 0x476350
mov ecx, edi
call fcn.004805a0
mov ecx, dword [ebp - 0x1040]
cdq
push dword [ecx + 0xc]
push dword [ecx + 8]
push edx
push eax
call fcn.00557850
mov ecx, eax
call fcn.00556a60
cvtsd2ss xmm0, xmm0
sub esp, 8
mov dword [esp + 4], 0x3f8ccccd
movss dword [ebp - 0x101c], xmm0
mov dword [esp], 0x3f666666
call fcn.004918b0
fmul dword [ebp - 0x101c]
add esp, 8
mov eax, dword [ebp - 0x1024]
mov ecx, 0x62b580
push eax
fmul dword [0x5cfff8]
push 1
fstp dword [ebp - 0x1010]
call fcn.0052d960
test eax, eax
je 0x47748a
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [ebp - 0x1024]
add eax, 0x2a0
add eax, edi
push eax
call fcn.0052e430
test eax, eax
je 0x47748a
movss xmm0, dword [ebp - 0x1010]
mulss xmm0, dword [0x5d3318]
jmp 0x477492
movss xmm0, dword [ebp - 0x1010]
push dword [ebp - 0x1024]
mov ecx, 0x62b580
movss dword [ebp - 0x1038], xmm0
push 0
call fcn.0052d960
test eax, eax
je 0x4774e9
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [ebp - 0x1024]
add eax, 0x2a0
add eax, edi
push eax
call fcn.0052e430
test eax, eax
je 0x4774e9
movss xmm0, dword [ebp - 0x1038]
mulss xmm0, dword [0x5d3318]
movss dword [ebp - 0x1038], xmm0
push dword [ebp - 0x1024]
mov ecx, 0x62b580
push 2
call fcn.0052d960
test eax, eax
je 0x47753a
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [ebp - 0x1024]
add eax, 0x2a0
add eax, edi
push eax
call fcn.0052e430
movss xmm1, dword [ebp - 0x1038]
test eax, eax
je 0x477542
mulss xmm1, dword [0x5d3318]
movss dword [ebp - 0x1038], xmm1
jmp 0x477542
movss xmm1, dword [ebp - 0x1038]
mov eax, dword [edi + 0x14f38]
test eax, eax
jle 0x47756f
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x5d32f0]
addss xmm0, dword [0x5cf058]
mulss xmm0, xmm1
movss dword [ebp - 0x1038], xmm0
movss xmm0, dword [ebp - 0x107c]
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.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov eax, dword [ebp - 0x1024]
lea edx, [ebp - 0x1060]
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 - 0x1038]
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.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov eax, dword [ebp - 0x1024]
lea edx, [ebp - 0x1060]
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 0x477ecb
push 0x40
push 0
push dword [esi + 0x78]
call fcn.0044cf50
push 0x40
mov dword [esi + 0x78], eax
push 0
push dword [esi + 0x74]
call fcn.0044cf50
push 0x40
mov dword [esi + 0x74], eax
push 0
push dword [esi + 0x70]
call fcn.0044cf50
push 0x40
mov dword [esi + 0x70], eax
push 0
push dword [esi + 0x6c]
call fcn.0044cf50
push 0x40
mov dword [esi + 0x6c], eax
push 0
push dword [esi + 0x68]
call fcn.0044cf50
push 0x40
mov dword [esi + 0x68], eax
push 0
push dword [esi + 0x64]
call fcn.0044cf50
add esp, 0x48
mov dword [esi + 0x64], eax
push 0x40
push 0
push dword [esi + 0x60]
call fcn.0044cf50
push 0x40
mov dword [esi + 0x60], eax
push 0
push dword [esi + 0x5c]
call fcn.0044cf50
push 0x40
mov dword [esi + 0x5c], eax
push 0
push dword [esi + 0x58]
call fcn.0044cf50
push 0x40
mov dword [esi + 0x58], eax
push 0
push dword [esi + 0x54]
call fcn.0044cf50
push 0x40
mov dword [esi + 0x54], eax
push 0
push dword [esi + 0x50]
call fcn.0044cf50
push 0x40
mov dword [esi + 0x50], eax
push 0
push dword [esi + 0x4c]
call fcn.0044cf50
add esp, 0x48
mov dword [esi + 0x4c], eax
push 0x40
push 0
push dword [esi + 0x48]
call fcn.0044cf50
push 0x40
mov dword [esi + 0x48], eax
push 0
push dword [esi + 0x44]
call fcn.0044cf50
push 0x40
mov dword [esi + 0x44], eax
push 0
push dword [esi + 0x40]
call fcn.0044cf50
add esp, 0x24
mov dword [esi + 0x40], eax
cmp dword [esi + 0x3c], 5
jle 0x477ecb
movss xmm0, dword [ebp - 0x1038]
divss xmm0, dword [0x5d1118]
movss xmm1, dword [ebp - 0x107c]
divss xmm0, xmm1
comiss xmm0, dword [0x5cf058]
jb 0x477ed3
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 - 0x101c], edx
mov edx, dword [esi + 0x44]
cmp edx, eax
jl 0x4777aa
mov dword [ebp - 0x1010], ecx
mov ecx, 1
cmp dword [esi + 0x44], eax
mov dword [ebp - 0x1018], ecx
cmovl edx, eax
cmovl eax, dword [ebp - 0x101c]
cmp dword [esi + 0x48], edx
jl 0x4777c9
mov eax, edx
mov ecx, 2
mov edi, dword [esi + 0x48]
cmp edi, edx
mov esi, dword [ebp - 0x1018]
cmovl esi, dword [ebp - 0x1010]
mov dword [ebp - 0x1018], esi
mov esi, dword [ebp - 0x102c]
mov dword [ebp - 0x1028], ecx
cmp dword [esi + 0x48], edx
cmovl edi, edx
mov edx, edi
mov dword [ebp - 0x101c], edi
cmp dword [esi + 0x4c], edx
jl 0x477807
mov eax, edx
mov ecx, 3
mov edi, dword [esi + 0x4c]
cmp edi, edx
mov esi, dword [ebp - 0x1028]
cmovl esi, dword [ebp - 0x1018]
mov dword [ebp - 0x1028], esi
mov esi, dword [ebp - 0x102c]
mov dword [ebp - 0x1034], ecx
cmp dword [esi + 0x4c], edx
cmovl edi, edx
mov edx, edi
mov dword [ebp - 0x101c], edi
cmp dword [esi + 0x50], edx
jl 0x477845
mov eax, edx
mov ecx, 4
mov edi, dword [esi + 0x50]
cmp edi, edx
mov esi, dword [ebp - 0x1034]
cmovl esi, dword [ebp - 0x1028]
mov dword [ebp - 0x1034], esi
mov esi, dword [ebp - 0x102c]
mov dword [ebp - 0x1018], ecx
cmp dword [esi + 0x50], edx
cmovl edi, edx
mov edx, edi
mov dword [ebp - 0x101c], edi
cmp dword [esi + 0x54], edx
jl 0x477883
mov eax, edx
mov ecx, 5
mov edi, dword [esi + 0x54]
cmp edi, edx
mov esi, dword [ebp - 0x1018]
cmovl esi, dword [ebp - 0x1034]
mov dword [ebp - 0x1018], esi
mov esi, dword [ebp - 0x102c]
mov dword [ebp - 0x1028], ecx
cmp dword [esi + 0x54], edx
cmovl edi, edx
mov edx, edi
mov dword [ebp - 0x101c], edi
cmp dword [esi + 0x58], edx
jl 0x4778c1
mov eax, edx
mov ecx, 6
mov edi, dword [esi + 0x58]
cmp edi, edx
mov esi, dword [ebp - 0x1028]
cmovl esi, dword [ebp - 0x1018]
mov dword [ebp - 0x1028], esi
mov esi, dword [ebp - 0x102c]
mov dword [ebp - 0x1034], ecx
cmp dword [esi + 0x58], edx
cmovl edi, edx
mov edx, edi
mov dword [ebp - 0x101c], edi
cmp dword [esi + 0x5c], edx
jl 0x4778ff
mov eax, edx
mov ecx, 7
mov edi, dword [esi + 0x5c]
cmp edi, edx
mov esi, dword [ebp - 0x1034]
cmovl esi, dword [ebp - 0x1028]
mov dword [ebp - 0x1034], esi
mov esi, dword [ebp - 0x102c]
mov dword [ebp - 0x1018], ecx
cmp dword [esi + 0x5c], edx
cmovl edi, edx
mov edx, edi
mov dword [ebp - 0x101c], edi
cmp dword [esi + 0x60], edx
jl 0x47793d
mov eax, edx
mov ecx, 8
mov edi, dword [esi + 0x60]
cmp edi, edx
mov esi, dword [ebp - 0x1018]
cmovl esi, dword [ebp - 0x1034]
mov dword [ebp - 0x1018], esi
mov esi, dword [ebp - 0x102c]
mov dword [ebp - 0x1028], ecx
cmp dword [esi + 0x60], edx
cmovl edi, edx
mov edx, edi
mov dword [ebp - 0x101c], edi
cmp dword [esi + 0x64], edx
jl 0x47797b
mov eax, edx
mov ecx, 9
mov edi, dword [esi + 0x64]
cmp edi, edx
mov esi, dword [ebp - 0x1028]
cmovl esi, dword [ebp - 0x1018]
mov dword [ebp - 0x1028], esi
mov esi, dword [ebp - 0x102c]
mov dword [ebp - 0x1034], ecx
cmp dword [esi + 0x64], edx
cmovl edi, edx
mov edx, edi
mov dword [ebp - 0x101c], edi
cmp dword [esi + 0x68], edx
jl 0x4779b9
mov eax, edx
mov ecx, 0xa
mov edi, dword [esi + 0x68]
cmp edi, edx
mov esi, dword [ebp - 0x1034]
cmovl esi, dword [ebp - 0x1028]
mov dword [ebp - 0x1034], esi
mov esi, dword [ebp - 0x102c]
mov dword [ebp - 0x1018], ecx
cmp dword [esi + 0x68], edx
cmovl edi, edx
mov edx, edi
mov dword [ebp - 0x101c], edi
cmp dword [esi + 0x6c], edx
jl 0x4779f7
mov eax, edx
mov ecx, 0xb
mov edi, dword [esi + 0x6c]
cmp edi, edx
mov esi, dword [ebp - 0x1018]
cmovl esi, dword [ebp - 0x1034]
mov dword [ebp - 0x1018], esi
mov esi, dword [ebp - 0x102c]
mov dword [ebp - 0x1054], ecx
cmp dword [esi + 0x6c], edx
cmovl edi, edx
mov edx, edi
mov dword [ebp - 0x101c], edi
cmp dword [esi + 0x70], edx
jl 0x477a35
mov eax, edx
mov ecx, 0xc
mov edi, dword [esi + 0x70]
cmp edi, edx
mov esi, dword [ebp - 0x1054]
cmovl esi, dword [ebp - 0x1018]
mov dword [ebp - 0x1054], esi
mov esi, dword [ebp - 0x102c]
mov dword [ebp - 0x1034], ecx
cmp dword [esi + 0x70], edx
cmovl edi, edx
mov edx, edi
mov dword [ebp - 0x1028], edi
cmp dword [esi + 0x74], edx
jl 0x477a73
mov eax, edx
mov ecx, 0xd
mov edi, dword [esi + 0x74]
cmp edi, dword [ebp - 0x1028]
mov edx, dword [ebp - 0x1034]
cmovl edx, dword [ebp - 0x1054]
cmp edi, dword [ebp - 0x1028]
mov dword [ebp - 0x1034], edx
mov edx, ecx
cmovl edi, dword [ebp - 0x1028]
mov dword [ebp - 0x102c], ecx
mov dword [ebp - 0x1010], edi
cmp dword [esi + 0x78], edi
jl 0x477ab6
mov eax, edi
mov ecx, 0xe
mov edi, dword [esi + 0x78]
cmp edi, dword [ebp - 0x1010]
cmovl edx, dword [ebp - 0x1034]
cmp edi, eax
mov edi, dword [ebp - 0x1064]
mov dword [ebp - 0x102c], edx
jle 0x477aef
mov dword [ebp - 0x102c], edx
cmp ecx, 0xe
je 0x477aef
mov eax, dword [esi + 0x78]
mov edx, 0xe
mov dword [ebp - 0x102c], edx
cmp dword [esi + 0x74], eax
jle 0x477b07
cmp ecx, 0xd
je 0x477b07
mov eax, dword [esi + 0x74]
mov edx, 0xd
mov dword [ebp - 0x102c], edx
cmp dword [esi + 0x70], eax
jle 0x477b1f
cmp ecx, 0xc
je 0x477b1f
mov eax, dword [esi + 0x70]
mov edx, 0xc
mov dword [ebp - 0x102c], edx
cmp dword [esi + 0x6c], eax
jle 0x477b37
cmp ecx, 0xb
je 0x477b37
mov eax, dword [esi + 0x6c]
mov edx, 0xb
mov dword [ebp - 0x102c], edx
cmp dword [esi + 0x68], eax
jle 0x477b4f
cmp ecx, 0xa
je 0x477b4f
mov eax, dword [esi + 0x68]
mov edx, 0xa
mov dword [ebp - 0x102c], edx
cmp dword [esi + 0x64], eax
jle 0x477b67
cmp ecx, 9
je 0x477b67
mov eax, dword [esi + 0x64]
mov edx, 9
mov dword [ebp - 0x102c], edx
cmp dword [esi + 0x60], eax
jle 0x477b7f
cmp ecx, 8
je 0x477b7f
mov eax, dword [esi + 0x60]
mov edx, 8
mov dword [ebp - 0x102c], edx
cmp dword [esi + 0x5c], eax
jle 0x477b97
cmp ecx, 7
je 0x477b97
mov eax, dword [esi + 0x5c]
mov edx, 7
mov dword [ebp - 0x102c], edx
cmp dword [esi + 0x58], eax
jle 0x477baf
cmp ecx, 6
je 0x477baf
mov eax, dword [esi + 0x58]
mov edx, 6
mov dword [ebp - 0x102c], edx
cmp dword [esi + 0x54], eax
jle 0x477bc7
cmp ecx, 5
je 0x477bc7
mov eax, dword [esi + 0x54]
mov edx, 5
mov dword [ebp - 0x102c], edx
cmp dword [esi + 0x50], eax
jle 0x477bdf
cmp ecx, 4
je 0x477bdf
mov eax, dword [esi + 0x50]
mov edx, 4
mov dword [ebp - 0x102c], edx
cmp dword [esi + 0x4c], eax
jle 0x477bf7
cmp ecx, 3
je 0x477bf7
mov eax, dword [esi + 0x4c]
mov edx, 3
mov dword [ebp - 0x102c], edx
cmp dword [esi + 0x48], eax
jle 0x477c0f
cmp ecx, 2
je 0x477c0f
mov eax, dword [esi + 0x48]
mov edx, 2
mov dword [ebp - 0x102c], edx
cmp dword [esi + 0x44], eax
jle 0x477c27
cmp ecx, 1
je 0x477c27
mov eax, dword [esi + 0x44]
mov edx, 1
mov dword [ebp - 0x102c], edx
cmp dword [esi + 0x40], eax
jle 0x477c38
test ecx, ecx
je 0x477c48
xor edx, edx
mov dword [ebp - 0x102c], edx
test ecx, ecx
jns 0x477c48
xor ecx, ecx
mov dword [esi + 0x34], ecx
mov dword [esi + 4], 1
imul eax, ecx, 0x13
lea ecx, [ebp - 0x418]
lea eax, [eax + 0x60d298]
cmp edx, 0xffffffff
jle 0x477cbc
push ecx
push 0x5ce428
push eax
call fcn.0043dd00
lea ecx, [ebp - 0x418]
add esp, 0xc
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x477c74
sub ecx, edx
lea eax, [ebp - 0x418]
add eax, ecx
push str.__WXZQPNS
push eax
call fcn.0043d370
lea ecx, [ebp - 0x418]
add esp, 8
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x477ca0
imul eax, dword [ebp - 0x102c], 0x13
sub ecx, edx
lea ecx, [ebp + ecx - 0x418]
add eax, 0x60d298
push ecx
push 0x5ce428
push eax
call fcn.0043dd00
lea ecx, [ebp - 0x418]
add esp, 0xc
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x477cd4
sub ecx, edx
lea eax, [ebp - 0x418]
add eax, ecx
push 0x5d1dbc
push eax
call fcn.0043d370
add esp, 8
xor ecx, ecx
nop word [eax + eax]
lea eax, [ecx + ecx*8]
cmp dword [eax*8 + 0x60ca50], 0x40
jg 0x477d19
mov eax, 6
inc ecx
cmp ecx, eax
jl 0x477d00
jmp 0x477d1c
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 - 0x101c], eax
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x477d40
sub ecx, dword [ebp - 0x101c]
lea eax, [edx + edx*8]
lea eax, [eax*8 + str.Dirk]
push eax
lea eax, [ebp - 0x418]
add eax, ecx
push eax
call fcn.0043d370
push 0x120
call fcn.00556676
add esp, 0xc
mov dword [ebp - 0x101c], eax
mov byte [ebp - 4], 5
test eax, eax
je 0x477d97
lea ecx, [ebp - 0x418]
push ecx
push 0
push 1
mov ecx, eax
call fcn.0050b040
mov edx, eax
jmp 0x477d99
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 - 0x1050]
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.0050b900
lea eax, [ebp - 0x418]
push str.You_have_recovered_the_greatsword.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov esi, dword [ebp - 0x1024]
lea edx, [ebp - 0x1060]
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 0x478e1f
movss xmm1, dword [ebp - 0x107c]
movss xmm2, dword [ebp - 0x106c]
movaps xmm0, xmm2
mulss xmm0, dword [0x5d3310]
cvttss2si eax, xmm0
movaps xmm0, xmm2
mulss xmm0, dword [0x5cf5bc]
push eax
cvttss2si eax, xmm0
movss xmm0, dword [ebp - 0x1038]
divss xmm0, dword [0x5cfe68]
push eax
divss xmm0, xmm1
mulss xmm0, xmm2
cvttss2si eax, xmm0
push eax
call fcn.0044cf50
xorps xmm0, xmm0
movsd xmm1, qword [0x5d3358]
movups xmmword [ebp - 0xf10], xmm0
mov ecx, eax
add esp, 0xc
movups xmmword [ebp - 0xf00], xmm0
mov dword [ebp - 0x101c], 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 - 0x106c], 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 0x4782d1
mov eax, dword [esi + 0x78]
test eax, eax
je 0x4780ba
dec eax
mov ecx, 0xf
mov dword [esi + 0x78], eax
jmp 0x4781cd
mov eax, dword [esi + 0x74]
test eax, eax
je 0x4780cf
dec eax
mov ecx, 0xe
mov dword [esi + 0x74], eax
jmp 0x4781cd
mov eax, dword [esi + 0x70]
test eax, eax
je 0x4780e4
dec eax
mov ecx, 0xd
mov dword [esi + 0x70], eax
jmp 0x4781cd
mov eax, dword [esi + 0x6c]
test eax, eax
je 0x4780f9
dec eax
mov ecx, 0xc
mov dword [esi + 0x6c], eax
jmp 0x4781cd
mov eax, dword [esi + 0x68]
test eax, eax
je 0x47810e
dec eax
mov ecx, 0xb
mov dword [esi + 0x68], eax
jmp 0x4781cd
mov eax, dword [esi + 0x64]
test eax, eax
je 0x478123
dec eax
mov ecx, 0xa
mov dword [esi + 0x64], eax
jmp 0x4781cd
mov eax, dword [esi + 0x60]
test eax, eax
je 0x478138
dec eax
mov ecx, 9
mov dword [esi + 0x60], eax
jmp 0x4781cd
mov eax, dword [esi + 0x5c]
test eax, eax
je 0x47814d
dec eax
mov ecx, 8
mov dword [esi + 0x5c], eax
jmp 0x4781cd
mov eax, dword [esi + 0x58]
test eax, eax
je 0x47815f
dec eax
mov ecx, 7
mov dword [esi + 0x58], eax
jmp 0x4781cd
mov eax, dword [esi + 0x54]
test eax, eax
je 0x478171
dec eax
mov ecx, 6
mov dword [esi + 0x54], eax
jmp 0x4781cd
mov eax, dword [esi + 0x50]
test eax, eax
je 0x478183
dec eax
mov ecx, 5
mov dword [esi + 0x50], eax
jmp 0x4781cd
mov eax, dword [esi + 0x4c]
test eax, eax
je 0x478195
dec eax
mov ecx, 4
mov dword [esi + 0x4c], eax
jmp 0x4781cd
mov eax, dword [esi + 0x48]
test eax, eax
je 0x4781a7
dec eax
mov ecx, 3
mov dword [esi + 0x48], eax
jmp 0x4781cd
mov eax, dword [esi + 0x44]
test eax, eax
je 0x4781b9
dec eax
mov ecx, 2
mov dword [esi + 0x44], eax
jmp 0x4781cd
mov eax, dword [esi + 0x40]
test eax, eax
je 0x4782d1
dec eax
mov ecx, 1
mov dword [esi + 0x40], eax
imul eax, ecx, 0x13
mov dword [ebp - 0x1044], ecx
lea eax, [eax + 0x60d285]
push eax
lea eax, [ebp - 0x418]
push str._s_Ingot
push eax
call fcn.0043d370
push 0x120
call fcn.00556676
add esp, 0x10
mov dword [ebp - 0x1074], eax
mov byte [ebp - 4], 6
test eax, eax
je 0x47821d
lea ecx, [ebp - 0x418]
push ecx
push 0
push 4
mov ecx, eax
call fcn.0050b040
jmp 0x47821f
xor eax, eax
mov edx, dword [eax + 0x11c]
mov dword [ebp - 0x1010], eax
mov eax, dword [ebp - 0x1044]
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 + 0x60d3ec]
mov dword [edx], eax
mov eax, dword [ecx*4 + 0x60d3f0]
mov dword [edx + 4], eax
mov eax, dword [ecx*4 + 0x60d3f4]
mov ecx, dword [ebp - 0x1010]
mov dword [edx + 8], eax
mov eax, dword [ebp - 0x1044]
push ecx
mov dword [ecx + 0x108], 0x3f800000
movd xmm0, dword [eax*4 + 0x60d3b4]
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.0050b900
mov ecx, dword [ebp - 0x106c]
inc ecx
mov dword [ebp - 0x106c], ecx
cmp ecx, dword [ebp - 0x101c]
jl 0x4780a5
mov edi, dword [ebp - 0x1024]
lea eax, [ebp - 0xf10]
mov esi, 0x60d298
mov dword [ebp - 0x1010], eax
mov ecx, dword [eax]
test ecx, ecx
jle 0x478343
push esi
push ecx
lea eax, [ebp - 0x418]
push str.You_recover__d__s_Ingots.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov ecx, dword [edi + 0x11c]
lea edx, [ebp - 0x1060]
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, 0x60d473
jl 0x4782e8
movss xmm2, dword [ebp - 0x1038]
divss xmm2, dword [0x5cf5c4]
mov esi, dword [ebp - 0x102c]
mov dword [ebp - 0x1030], 0
movd xmm1, dword [esi + 0x24]
divss xmm2, dword [ebp - 0x107c]
cvtdq2ps xmm1, xmm1
movss dword [ebp - 0x1048], xmm2
movaps xmm0, xmm1
mulss xmm0, dword [0x5d3310]
cvttss2si eax, xmm0
movaps xmm0, xmm1
mulss xmm0, dword [0x5d3300]
push eax
cvttss2si eax, xmm0
movaps xmm0, xmm2
mulss xmm0, xmm1
push eax
cvttss2si eax, xmm0
push eax
call fcn.0044cf50
mov edi, dword [ebp - 0x1064]
add esp, 0xc
movd xmm0, eax
mov eax, dword [esi + 0x24]
cvtdq2ps xmm0, xmm0
mov dword [ebp - 0x1014], eax
comiss xmm0, dword [0x5cf058]
movss dword [ebp - 0x101c], xmm0
jb 0x4784d3
push 0x120
call fcn.00556676
add esp, 4
mov dword [ebp - 0x1074], eax
mov byte [ebp - 4], 7
test eax, eax
je 0x47841d
push 0x5d0d00
push 0
push 8
mov ecx, eax
call fcn.0050b040
mov ecx, eax
jmp 0x47841f
xor ecx, ecx
mov eax, dword [ecx + 0x11c]
cvttss2si esi, dword [ebp - 0x101c]
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.0050b900
push esi
lea eax, [ebp - 0x418]
mov dword [ebp - 0x1030], 1
push str.You_recover__d_Glowing_White_Dust.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov eax, dword [ebp - 0x1024]
lea edx, [ebp - 0x1060]
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 [0x5d3310]
cvttss2si eax, xmm0
movaps xmm0, xmm1
mulss xmm1, dword [ebp - 0x1048]
push eax
mulss xmm0, dword [0x5d3300]
cvttss2si eax, xmm0
push eax
cvttss2si eax, xmm1
push eax
call fcn.0044cf50
add esp, 0xc
movd xmm0, eax
mov eax, dword [ebp - 0x1014]
add eax, dword [esi + 0x28]
cvtdq2ps xmm0, xmm0
mov dword [ebp - 0x1014], eax
comiss xmm0, dword [0x5cf058]
movss dword [ebp - 0x101c], xmm0
jb 0x478620
push 0x120
call fcn.00556676
add esp, 4
mov dword [ebp - 0x1074], eax
mov byte [ebp - 4], 8
test eax, eax
je 0x47856a
push 0x5d0cd8
push 0
push 8
mov ecx, eax
call fcn.0050b040
mov ecx, eax
jmp 0x47856c
xor ecx, ecx
mov eax, dword [ecx + 0x11c]
cvttss2si esi, dword [ebp - 0x101c]
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.0050b900
push esi
lea eax, [ebp - 0x418]
mov dword [ebp - 0x1030], 1
push str.You_recover__d_Glowing_Red_Dust.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov eax, dword [ebp - 0x1024]
lea edx, [ebp - 0x1060]
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 [0x5d3310]
cvttss2si eax, xmm0
movaps xmm0, xmm1
mulss xmm1, dword [ebp - 0x1048]
push eax
mulss xmm0, dword [0x5d3300]
cvttss2si eax, xmm0
push eax
cvttss2si eax, xmm1
push eax
call fcn.0044cf50
add esp, 0xc
movd xmm0, eax
mov eax, dword [ebp - 0x1014]
add eax, dword [esi + 0x2c]
cvtdq2ps xmm0, xmm0
mov dword [ebp - 0x1014], eax
comiss xmm0, dword [0x5cf058]
movss dword [ebp - 0x101c], xmm0
jb 0x47876d
push 0x120
call fcn.00556676
add esp, 4
mov dword [ebp - 0x1074], eax
mov byte [ebp - 4], 9
test eax, eax
je 0x4786b7
push 0x5d0cec
push 0
push 8
mov ecx, eax
call fcn.0050b040
mov ecx, eax
jmp 0x4786b9
xor ecx, ecx
mov eax, dword [ecx + 0x11c]
cvttss2si esi, dword [ebp - 0x101c]
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.0050b900
push esi
lea eax, [ebp - 0x418]
mov dword [ebp - 0x1030], 1
push str.You_recover__d_Glowing_Green_Dust.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov eax, dword [ebp - 0x1024]
lea edx, [ebp - 0x1060]
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 [0x5d3310]
cvttss2si eax, xmm0
movaps xmm0, xmm1
mulss xmm1, dword [ebp - 0x1048]
push eax
mulss xmm0, dword [0x5d3300]
cvttss2si eax, xmm0
push eax
cvttss2si eax, xmm1
push eax
call fcn.0044cf50
add esp, 0xc
movd xmm0, eax
mov eax, dword [ebp - 0x1014]
add eax, dword [esi + 0x20]
cvtdq2ps xmm0, xmm0
mov dword [ebp - 0x1014], eax
comiss xmm0, dword [0x5cf058]
movss dword [ebp - 0x101c], xmm0
jb 0x4788ba
push 0x120
call fcn.00556676
add esp, 4
mov dword [ebp - 0x1074], eax
mov byte [ebp - 4], 0xa
test eax, eax
je 0x478804
push 0x5d0d14
push 0
push 8
mov ecx, eax
call fcn.0050b040
mov ecx, eax
jmp 0x478806
xor ecx, ecx
mov eax, dword [ecx + 0x11c]
cvttss2si esi, dword [ebp - 0x101c]
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.0050b900
push esi
lea eax, [ebp - 0x418]
mov dword [ebp - 0x1030], 1
push str.You_recover__d_Glowing_Black_Dust.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov eax, dword [ebp - 0x1024]
lea edx, [ebp - 0x1060]
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 - 0x1048]
mulss xmm0, dword [0x5d3300]
cvttss2si eax, xmm0
push eax
cvttss2si eax, xmm1
push eax
call fcn.0044cf50
add esp, 0xc
movd xmm0, eax
mov eax, dword [ebp - 0x1014]
add eax, dword [esi + 0x34]
cvtdq2ps xmm0, xmm0
mov dword [ebp - 0x1014], eax
comiss xmm0, dword [0x5cf058]
movss dword [ebp - 0x101c], xmm0
jb 0x4789fa
push 0x120
call fcn.00556676
add esp, 4
mov dword [ebp - 0x1074], eax
mov byte [ebp - 4], 0xb
test eax, eax
je 0x478944
push 0x5d2194
push 0
push 8
mov ecx, eax
call fcn.0050b040
mov ecx, eax
jmp 0x478946
xor ecx, ecx
mov eax, dword [ecx + 0x11c]
cvttss2si esi, dword [ebp - 0x101c]
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.0050b900
push esi
lea eax, [ebp - 0x418]
mov dword [ebp - 0x1030], 1
push str.You_recover__d_Glowing_Gold_Dust.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov eax, dword [ebp - 0x1024]
lea edx, [ebp - 0x1060]
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 0x478a08
add eax, 0xffffffeb
jmp 0x478a09
dec eax
movd xmm1, eax
cvtdq2ps xmm1, xmm1
movaps xmm0, xmm1
mulss xmm0, dword [0x5d3308]
cvttss2si eax, xmm0
movaps xmm0, xmm1
mulss xmm1, dword [ebp - 0x1048]
push eax
mulss xmm0, dword [0x5d0c8c]
cvttss2si eax, xmm0
push eax
cvttss2si eax, xmm1
push eax
call fcn.0044cf50
add esp, 0xc
movd xmm0, eax
mov eax, dword [ebp - 0x1014]
cvtdq2ps xmm0, xmm0
cvttss2si ecx, xmm0
add eax, ecx
mov dword [ebp - 0x1010], ecx
comiss xmm0, dword [0x5cf058]
mov dword [ebp - 0x1014], eax
jb 0x478b59
push 0x120
call fcn.00556676
add esp, 4
mov dword [ebp - 0x101c], eax
mov byte [ebp - 4], 0xc
test eax, eax
je 0x478aa0
push 0x5d0cc4
push 0
push 8
mov ecx, eax
call fcn.0050b040
mov ecx, eax
jmp 0x478aa2
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.0050b900
push dword [ebp - 0x1010]
lea eax, [ebp - 0x418]
mov dword [ebp - 0x1030], 1
push str.You_recover__d_Glowing_Blue_Dust.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov eax, dword [ebp - 0x1024]
lea edx, [ebp - 0x1060]
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 - 0x1014]
movss xmm0, dword [ebp - 0x1038]
divss xmm0, dword [0x5d1118]
add eax, dword [esi + 0x30]
mov dword [ebp - 0x1014], eax
push 1
push 0
divss xmm0, dword [ebp - 0x107c]
cvttss2si eax, xmm0
push eax
call fcn.0044cf50
mov ecx, dword [esi + 0x38]
add esp, 0xc
xor edx, edx
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x1010], xmm0
cmp ecx, 0x55f0
jl 0x478bc1
add ecx, 0xffffaa10
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 - 0x1014], 5
cmovge ecx, edx
cmp dword [ebp - 0x1014], 0xe
mov dword [ebp - 0x1018], ecx
jle 0x478bef
mov dword [ebp - 0x1018], ecx
test ecx, ecx
je 0x478bef
lea eax, [ecx + 0xa]
mov dword [ebp - 0x1018], eax
call fcn.00565cd7
movss xmm0, dword [ebp - 0x1010]
mov ecx, 0x64
cdq
xorps xmm1, xmm1
idiv ecx
comiss xmm0, xmm1
jbe 0x478d71
cmp dword [esi + 0x38], 0x55f0
jl 0x478d71
cmp dword [ebp - 0x1030], 0
je 0x478d71
cmp edx, dword [ebp - 0x1018]
jge 0x478d71
movss xmm0, dword [ebp - 0x1028]
comiss xmm0, dword [0x5d33ac]
jb 0x478d71
call fcn.00565cd7
mov esi, eax
and esi, 0x80000007
jns 0x478c5f
dec esi
or esi, 0xfffffff8
inc esi
push 0x120
add esi, 5
call fcn.00556676
add esp, 4
mov dword [ebp - 0x101c], eax
mov byte [ebp - 4], 0xd
test eax, eax
je 0x478c98
mov ecx, esi
shl ecx, 6
add ecx, str.Glowing_Green_Dust
push ecx
push 0
push 8
mov ecx, eax
call fcn.0050b040
mov ecx, eax
jmp 0x478c9a
xor ecx, ecx
mov eax, dword [ecx + 0x11c]
push ecx
mov byte [ebp - 4], 0
mov dword [eax], esi
mov dword [eax + 4], 1
mov dword [ecx + 0x108], 0
mov dword [ecx + 0x10c], 0x447a0000
mov dword [ecx + 0x118], 1
imul ecx, dword [edi + 0x188], 0x980
mov ecx, dword [ecx + edi + 0x2d8]
call fcn.0050b900
lea eax, [ebp - 0x418]
push str.You_find_something_special_inside_the_weapon.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov esi, dword [ebp - 0x1024]
lea edx, [ebp - 0x1060]
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.0043d370
lea eax, [ebp - 0x418]
push eax
push str.ShardCreationLog.txt
call fcn.004a26d0
add esp, 0x14
jmp 0x478e1f
mov eax, dword [0x62aadc]
cmp dword [eax + 0x7c], 0
je 0x478e19
call fcn.00565cd7
movss xmm0, dword [ebp - 0x1010]
mov ecx, 0xa
cdq
xorps xmm1, xmm1
idiv ecx
comiss xmm0, xmm1
jbe 0x478e19
cmp dword [esi + 0x38], 0x55f0
jl 0x478e19
cmp dword [ebp - 0x1030], 0
je 0x478e19
cmp edx, 1
jne 0x478e19
movss xmm0, dword [ebp - 0x103c]
comiss xmm0, dword [0x5d33b0]
jb 0x478e19
call fcn.00565cd7
mov esi, eax
and esi, 0x80000007
jns 0x478dd9
dec esi
or esi, 0xfffffff8
inc esi
push 0x120
add esi, 5
call fcn.00556676
add esp, 4
mov dword [ebp - 0x101c], eax
mov byte [ebp - 4], 0xe
test eax, eax
je 0x478c98
mov ecx, esi
shl ecx, 6
add ecx, str.Glowing_Green_Dust
push ecx
push 0
push 8
mov ecx, eax
call fcn.0050b040
mov ecx, eax
jmp 0x478c9a
mov esi, dword [ebp - 0x1024]
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e330
mov dword [ebp - 0x101c], eax
test eax, eax
je 0x478ec6
mov esi, eax
cmp dword [ebp - 0x1050], esi
jne 0x478ea1
mov eax, dword [esi + 0x118]
cmp eax, 1
jle 0x478e64
dec eax
mov dword [esi + 0x118], eax
jmp 0x478e88
imul eax, dword [edi + 0x188], 0x980
push esi
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e520
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, 4
call fcn.0044e3a0
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e3e0
mov esi, eax
test esi, esi
jne 0x478e48
mov esi, dword [ebp - 0x1024]
lea eax, [ebp - 0x418]
push str.You_dismantle_the_weapon.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x1060]
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 - 0x1040]
mov ecx, dword [esi + 0xc]
mov eax, dword [esi + 8]
mov dword [ebp - 0x106c], eax
mov dword [ebp - 0x1078], ecx
test ecx, ecx
ja 0x47fc87
jb 0x478f40
cmp eax, 0x7530
jae 0x47fc87
movss xmm1, dword [ebp - 0x1038]
movaps xmm0, xmm1
movss xmm2, dword [ebp - 0x107c]
divss xmm0, dword [0x5cf5c4]
comiss xmm2, xmm0
jbe 0x47fc87
mov eax, dword [0x62aadc]
mov edx, dword [esi + 4]
mov ecx, dword [esi]
movd xmm0, dword [eax + 0x98]
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
movss dword [ebp - 0x101c], xmm0
call fcn.00556a60
movss xmm1, dword [ebp - 0x101c]
cvtsd2ss xmm0, xmm0
addss xmm1, xmm0
xorps xmm0, xmm0
movlpd qword [ebp - 0x1020], xmm0
movss xmm0, dword [0x5d33cc]
comiss xmm1, xmm0
jb 0x478fd1
subss xmm1, xmm0
comiss xmm0, xmm1
jbe 0x478fd1
mov edi, dword [ebp - 0x1020]
mov eax, dword [ebp - 0x101c]
add edi, 0
adc eax, 0x80000000
jmp 0x478fdd
mov eax, dword [ebp - 0x101c]
mov edi, dword [ebp - 0x1020]
movaps xmm0, xmm1
mov dword [ebp - 0x1010], eax
call fcn.005567e0
mov ecx, eax
mov esi, edx
mov eax, dword [ebp - 0x1040]
add ecx, edi
mov dword [ebp - 0x103c], ecx
adc esi, dword [ebp - 0x1010]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x1078]
push ecx
mov dword [eax + 4], esi
mov eax, dword [ebp - 0x106c]
push eax
push ecx
push eax
call fcn.00557850
mov edi, eax
mov ecx, edx
shld ecx, edi, 4
shl edi, 4
sub edi, eax
mov eax, edi
mov dword [ebp - 0x101c], edi
mov edi, dword [ebp - 0x1064]
sbb ecx, edx
shld ecx, eax, 1
add eax, eax
cmp ecx, esi
ja 0x47fc87
jb 0x479056
cmp eax, dword [ebp - 0x103c]
ja 0x47fc87
mov edx, dword [ebp - 0x1040]
mov eax, dword [ebp - 0x106c]
mov ecx, dword [ebp - 0x1078]
add eax, 1
push str.You_gained_a_skill_level__
mov dword [edx + 8], eax
adc ecx, 0
lea eax, [ebp - 0x418]
mov dword [edx + 0xc], ecx
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
imul eax, dword [edi + 0x188], 0x980
movss xmm0, dword [eax + edi + 0x300]
addss xmm0, dword [0x5d32ec]
movss dword [eax + edi + 0x300], xmm0
mov eax, dword [ebp - 0x1024]
mov ecx, dword [eax + 0x11c]
jmp 0x47fc6b
push str.Put_a_weapon_in_the_workbench_to_dismantle_it.
jmp 0x47fc3f
mov ecx, 0x5d2264
mov eax, edx
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x1009], dl
lea edx, [edi + 0x260]
jne 0x479127
cmp byte [ebp - 0x1009], 0
je 0x479123
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x1009], dl
lea edx, [edi + 0x260]
jne 0x479127
add eax, 2
add ecx, 2
cmp byte [ebp - 0x1009], 0
jne 0x4790e5
xor eax, eax
jmp 0x47912c
sbb eax, eax
or eax, 1
test eax, eax
jne 0x479a6e
mov dword [ebp - 0x1030], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e330
test eax, eax
je 0x479a64
xor esi, esi
nop dword [eax]
cmp dword [eax + 0x110], 0xd
jne 0x47918e
add esi, dword [eax + 0x118]
mov dword [ebp - 0x1030], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e3a0
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e3e0
test eax, eax
jne 0x479160
cmp esi, 1
mov esi, dword [ebp - 0x1024]
jl 0x479a64
mov eax, dword [ebp - 0x1030]
cmp dword [eax + 0x118], 1
mov ecx, dword [eax + 0x11c]
mov dword [ebp - 0x1028], ecx
jle 0x47926b
push 0x120
call fcn.00556676
add esp, 4
mov dword [ebp - 0x101c], eax
mov byte [ebp - 4], 0xf
test eax, eax
je 0x47920e
push str.UNNAMED
push 0
push 0
mov ecx, eax
call fcn.0050b040
mov edx, eax
mov dword [ebp - 0x1010], eax
jmp 0x479216
xor edx, edx
mov dword [ebp - 0x1010], edx
mov ecx, dword [ebp - 0x1030]
push edx
mov byte [ebp - 4], 0
mov eax, dword [ecx]
mov eax, dword [eax + 0x18]
call eax
mov ecx, dword [ebp - 0x1030]
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, 4
call fcn.0044e440
mov ecx, dword [ebp - 0x1028]
movss xmm1, dword [0x5cf058]
divss xmm1, dword [ecx + 4]
mov eax, dword [ecx + 0xc]
inc eax
mov dword [ebp - 0x1048], 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, 4
mulss xmm1, xmm0
movss dword [ebp - 0x1018], xmm1
call fcn.0044e330
mov dword [ebp - 0x101c], eax
test eax, eax
je 0x47706b
mov esi, eax
mov ecx, esi
call fcn.0044ccd0
lea ecx, [edi + 0x260]
mov dl, byte [ecx]
cmp dl, byte [eax]
jne 0x4792f3
test dl, dl
je 0x4792ef
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x4792f3
add ecx, 2
add eax, 2
test dl, dl
jne 0x4792d3
xor eax, eax
jmp 0x4792f8
sbb eax, eax
or eax, 1
test eax, eax
jne 0x479308
mov eax, dword [esi + 0x11c]
mov dword [ebp - 0x1048], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e0]
add ecx, 4
call fcn.0044e3e0
mov esi, eax
test esi, esi
jne 0x4792c6
mov esi, dword [ebp - 0x1024]
cmp dword [ebp - 0x1048], eax
je 0x47706b
mov ecx, edi
call fcn.004805a0
mov ecx, dword [ebp - 0x1048]
cdq
push dword [ecx + 0xc]
push dword [ecx + 8]
push edx
push eax
call fcn.00557850
mov ecx, eax
call fcn.00556a60
cvtsd2ss xmm0, xmm0
sub esp, 8
mov dword [esp + 4], 0x3f8ccccd
movss dword [ebp - 0x101c], xmm0
mov dword [esp], 0x3f666666
call fcn.004918b0
fmul dword [ebp - 0x101c]
add esp, 8
mov ecx, 0x62b580
push esi
fmul dword [0x5cfff8]
push 1
fstp dword [ebp - 0x1010]
call fcn.0052d960
test eax, eax
je 0x4793d3
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.0052e430
test eax, eax
je 0x4793d3
movss xmm0, dword [ebp - 0x1010]
mulss xmm0, dword [0x5d3318]
jmp 0x4793db
movss xmm0, dword [ebp - 0x1010]
push esi
push 0
mov ecx, 0x62b580
movss dword [ebp - 0x1014], xmm0
call fcn.0052d960
test eax, eax
je 0x479429
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.0052e430
test eax, eax
je 0x479429
movss xmm0, dword [ebp - 0x1014]
mulss xmm0, dword [0x5d3318]
movss dword [ebp - 0x1014], xmm0
push esi
push 2
mov ecx, 0x62b580
call fcn.0052d960
test eax, eax
je 0x479471
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.0052e430
movss xmm1, dword [ebp - 0x1014]
test eax, eax
je 0x479479
mulss xmm1, dword [0x5d3318]
movss dword [ebp - 0x1014], xmm1
jmp 0x479479
movss xmm1, dword [ebp - 0x1014]
mov eax, dword [edi + 0x14f38]
test eax, eax
jle 0x4794a6
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x5d32f0]
addss xmm0, dword [0x5cf058]
mulss xmm0, xmm1
movss dword [ebp - 0x1014], xmm0
movss xmm0, dword [ebp - 0x1018]
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.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x1060]
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 - 0x1014]
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.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x1060]
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 - 0x1014]
movss xmm1, dword [ebp - 0x1018]
comiss xmm0, xmm1
jb 0x479729
mov eax, dword [ebp - 0x1030]
movss xmm0, dword [eax + 0x10c]
mov eax, dword [ebp - 0x1028]
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, 4
movss dword [ebp - 0x103c], xmm1
call fcn.0044e330
mov dword [ebp - 0x101c], eax
test eax, eax
je 0x47965e
mov esi, eax
nop dword [eax + eax]
cmp dword [ebp - 0x1030], esi
jne 0x479639
mov eax, dword [esi + 0x118]
cmp eax, 1
jle 0x4795fc
dec eax
mov dword [esi + 0x118], eax
jmp 0x479620
imul eax, dword [edi + 0x188], 0x980
push esi
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e520
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, 4
call fcn.0044e3a0
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e3e0
mov esi, eax
test esi, esi
jne 0x4795e0
mov esi, dword [ebp - 0x1024]
push 0x120
call fcn.00556676
add esp, 4
mov dword [ebp - 0x101c], eax
mov byte [ebp - 4], 0x10
test eax, eax
je 0x47968b
push str.Disarmed_Bomb
push 0
push 0
mov ecx, eax
call fcn.0050b040
jmp 0x47968d
xor eax, eax
movss xmm0, dword [ebp - 0x103c]
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.0050b900
lea eax, [ebp - 0x418]
push str.You_disarmed_the_bomb.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x1060]
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 - 0x1014]
movss xmm1, dword [ebp - 0x1018]
mov eax, dword [ebp - 0x1048]
mov ecx, dword [eax + 8]
mov eax, dword [eax + 0xc]
mov dword [ebp - 0x1078], ecx
mov dword [ebp - 0x1080], eax
test eax, eax
ja 0x4798ba
jb 0x479757
cmp ecx, 0x7530
jae 0x4798ba
comiss xmm0, xmm1
jb 0x4798ba
mov eax, dword [0x62aadc]
mov edi, dword [ebp - 0x1048]
movd xmm0, dword [eax + 0x9c]
mov edx, dword [edi + 4]
mov ecx, dword [edi]
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
movss dword [ebp - 0x101c], xmm0
call fcn.00556a60
movss xmm1, dword [ebp - 0x101c]
cvtsd2ss xmm0, xmm0
addss xmm1, xmm0
xorps xmm0, xmm0
movlpd qword [ebp - 0x1020], xmm0
movss xmm0, dword [0x5d33cc]
comiss xmm1, xmm0
jb 0x4797df
subss xmm1, xmm0
comiss xmm0, xmm1
jbe 0x4797df
mov eax, dword [ebp - 0x1020]
add eax, 0
mov dword [ebp - 0x1010], eax
mov eax, dword [ebp - 0x101c]
adc eax, 0x80000000
mov dword [ebp - 0x106c], eax
jmp 0x4797f7
mov eax, dword [ebp - 0x101c]
mov dword [ebp - 0x106c], eax
mov eax, dword [ebp - 0x1020]
mov dword [ebp - 0x1010], eax
movaps xmm0, xmm1
call fcn.005567e0
add eax, dword [ebp - 0x1010]
mov esi, edx
mov ecx, dword [ebp - 0x1080]
adc esi, dword [ebp - 0x106c]
push ecx
mov dword [edi], eax
mov dword [ebp - 0x103c], eax
mov eax, dword [ebp - 0x1078]
push eax
push ecx
push eax
mov dword [edi + 4], esi
call fcn.00557850
mov edi, eax
mov ecx, edx
shld ecx, edi, 4
shl edi, 4
sub edi, eax
mov eax, edi
mov dword [ebp - 0x101c], edi
mov edi, dword [ebp - 0x1048]
sbb ecx, edx
shld ecx, eax, 1
add eax, eax
cmp ecx, esi
ja 0x47fc87
jb 0x479866
cmp eax, dword [ebp - 0x103c]
ja 0x47fc87
mov eax, dword [ebp - 0x1078]
mov ecx, dword [ebp - 0x1080]
add eax, 1
mov dword [edi + 8], eax
lea eax, [ebp - 0x418]
adc ecx, 0
push str.You_gained_a_skill_level__
push eax
mov dword [edi + 0xc], ecx
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov eax, dword [ebp - 0x1024]
mov ecx, dword [eax + 0x11c]
jmp 0x47fc6b
lea eax, [ebp - 0x418]
push str.You_failed_to_disarm_the_bomb_
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x1060]
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.00556676
add esp, 4
mov dword [ebp - 0x101c], eax
mov byte [ebp - 4], 0x11
test eax, eax
je 0x479934
push edi
mov ecx, eax
call fcn.00491920
mov ecx, eax
mov dword [ebp - 0x1018], eax
jmp 0x47993c
xor ecx, ecx
mov dword [ebp - 0x1018], ecx
mov eax, dword [edi + 0x108]
mov edx, dword [ebp - 0x1028]
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 - 0x1018]
mov dword [ecx + 0x198], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e330
mov dword [ebp - 0x101c], eax
test eax, eax
je 0x479a4e
mov esi, eax
nop
cmp dword [ebp - 0x1030], esi
jne 0x479a29
mov eax, dword [esi + 0x118]
cmp eax, 1
jle 0x4799ec
dec eax
mov dword [esi + 0x118], eax
jmp 0x479a10
imul eax, dword [edi + 0x188], 0x980
push esi
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e520
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, 4
call fcn.0044e3a0
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e3e0
mov esi, eax
test esi, esi
jne 0x4799d0
mov esi, dword [ebp - 0x1024]
push dword [ebp - 0x1018]
mov ecx, dword [esi + 0x118]
call fcn.00513530
jmp 0x47fc87
push str.Put_a_bomb_in_the_workbench_to_attempt_to_disarm_it.
jmp 0x47fc3f
mov ecx, 0x5d1bb4
mov eax, edx
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x1009], dl
lea edx, [edi + 0x260]
jne 0x479ab7
cmp byte [ebp - 0x1009], 0
je 0x479ab3
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x1009], dl
lea edx, [edi + 0x260]
jne 0x479ab7
add eax, 2
add ecx, 2
cmp byte [ebp - 0x1009], 0
jne 0x479a75
xor eax, eax
jmp 0x479abc
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47a575
movss xmm0, dword [0x5cf058]
xor edx, edx
mov dword [ebp - 0x1028], eax
imul eax, dword [edi + 0x188], 0x980
mov dword [ebp - 0x106c], edx
mov dword [ebp - 0x1048], 0xffffffff
movss dword [ebp - 0x1040], xmm0
movss dword [ebp - 0x1054], xmm0
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e330
test eax, eax
je 0x47a56b
or esi, 0xffffffff
nop dword [eax + eax]
mov ecx, dword [ebp - 0x1048]
mov edx, esi
mov dword [ebp - 0x103c], ecx
mov ecx, dword [eax + 0x110]
mov dword [ebp - 0x101c], esi
cmp ecx, 0xa
jne 0x479b76
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 - 0x103c]
mov dword [ebp - 0x1048], ecx
cmp eax, 0x17
jg 0x479b6a
cmp eax, 0xfffffffe
jne 0x479bd6
mov dword [ebp - 0x106c], 1
jmp 0x479bd6
cmp ecx, 0x10
jne 0x479bd6
mov ecx, dword [eax + 0x11c]
mov edx, dword [ecx]
test edx, edx
jne 0x479bb1
mov eax, dword [eax + 0x118]
add dword [ebp - 0x1028], eax
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [ecx + 4]
addss xmm0, dword [ebp - 0x1040]
movss dword [ebp - 0x1040], xmm0
jmp 0x479bd6
cmp edx, 1
jne 0x479bd6
movd xmm0, dword [eax + 0x118]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [ecx + 4]
addss xmm0, dword [ebp - 0x1054]
movss dword [ebp - 0x1054], xmm0
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e3e0
test eax, eax
jne 0x479b20
mov dword [ebp - 0x1034], esi
cmp esi, 0xffffffff
mov esi, dword [ebp - 0x1024]
je 0x47a56b
cmp dword [ebp - 0x1028], 1
jge 0x479c1f
push str.An_EarthKey_requires_at_least_one_bead_to_power_it.
jmp 0x47fc3f
imul eax, dword [edi + 0x188], 0x980
mov dword [ebp - 0x1050], 0
mov ecx, dword [eax + edi + 0x2e0]
add ecx, 4
call fcn.0044e330
mov dword [ebp - 0x101c], eax
test eax, eax
je 0x47706b
mov esi, eax
mov ecx, esi
call fcn.0044ccd0
lea ecx, [edi + 0x260]
nop
mov dl, byte [ecx]
cmp dl, byte [eax]
jne 0x479c80
test dl, dl
je 0x479c7c
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x479c80
add ecx, 2
add eax, 2
test dl, dl
jne 0x479c60
xor eax, eax
jmp 0x479c85
sbb eax, eax
or eax, 1
test eax, eax
jne 0x479c95
mov eax, dword [esi + 0x11c]
mov dword [ebp - 0x1050], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e0]
add ecx, 4
call fcn.0044e3e0
mov esi, eax
test esi, esi
jne 0x479c52
mov esi, dword [ebp - 0x1024]
cmp dword [ebp - 0x1050], eax
je 0x47706b
mov ecx, edi
call fcn.00485990
mov ecx, dword [ebp - 0x1050]
cdq
push dword [ecx + 0xc]
push dword [ecx + 8]
push edx
push eax
call fcn.00557850
mov ecx, eax
call fcn.00556a60
cvtsd2ss xmm0, xmm0
sub esp, 8
mov dword [esp + 4], 0x3fa66666
mulss xmm0, dword [0x5d32fc]
mov dword [esp], 0x3f333333
movss dword [ebp - 0x101c], xmm0
call fcn.004918b0
fmul dword [ebp - 0x101c]
add esp, 8
mov ecx, 0x62b580
push esi
push 6
fstp dword [ebp - 0x1010]
call fcn.0052d960
test eax, eax
je 0x479d62
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.0052e430
test eax, eax
je 0x479d62
movss xmm0, dword [ebp - 0x1010]
mulss xmm0, dword [0x5d0398]
jmp 0x479d6a
movss xmm0, dword [ebp - 0x1010]
push esi
push 7
mov ecx, 0x62b580
movss dword [ebp - 0x1014], xmm0
call fcn.0052d960
test eax, eax
je 0x479dba
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.0052e430
movss xmm1, dword [ebp - 0x1014]
test eax, eax
je 0x479dc2
mulss xmm1, dword [0x5cf5c0]
movss dword [ebp - 0x1014], xmm1
jmp 0x479dc2
movss xmm1, dword [ebp - 0x1014]
mov eax, dword [edi + 0x14f34]
test eax, eax
jle 0x479def
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x5d32f0]
addss xmm0, dword [0x5cf058]
mulss xmm0, xmm1
movss dword [ebp - 0x1014], xmm0
mov eax, dword [ebp - 0x1028]
sub esp, 8
imul eax, eax
movd xmm0, eax
lea eax, [ebp - 0x418]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [ebp - 0x1054]
mulss xmm0, dword [0x5d3338]
movss dword [ebp - 0x1028], xmm0
cvtps2pd xmm0, xmm0
movsd qword [esp], xmm0
push str.Task_difficulty_is__4.2f.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x1060]
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 - 0x1014]
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.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x1060]
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 - 0x1014]
comiss xmm0, dword [ebp - 0x1028]
jb 0x47a44f
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e330
mov dword [ebp - 0x101c], eax
test eax, eax
je 0x479f69
mov esi, eax
nop dword [eax]
mov eax, dword [esi + 0x110]
cmp eax, 0xa
je 0x479f20
cmp eax, 0x10
jne 0x479f44
imul eax, dword [edi + 0x188], 0x980
push esi
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e520
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, 4
call fcn.0044e3e0
mov esi, eax
test esi, esi
jne 0x479f10
mov esi, dword [ebp - 0x1024]
movss xmm0, dword [ebp - 0x1040]
mulss xmm0, dword [ebp - 0x1054]
push 4
push 0
cvttss2si eax, xmm0
movss dword [ebp - 0x1040], xmm0
and eax, reloc.WS2_32.dll_closesocket
jns 0x479f95
dec eax
or eax, 0xfffffffc
inc eax
push eax
call fcn.0044cf50
movss xmm0, dword [ebp - 0x1040]
divss xmm0, dword [0x5cf5c4]
push 4
push 0
cvttss2si eax, xmm0
and eax, reloc.WS2_32.dll_closesocket
jns 0x479fbf
dec eax
or eax, 0xfffffffc
inc eax
push eax
call fcn.0044cf50
mov eax, dword [0x62aadc]
add esp, 0x18
cmp dword [eax + 0x7c], 0
jne 0x47a077
mov eax, dword [ebp - 0x1034]
cmp eax, 0x15
je 0x479ff1
cmp eax, 0x1b
je 0x479ff1
cmp eax, 0x1f
je 0x479ff1
cmp eax, 0x20
jne 0x479ffb
mov dword [ebp - 0x1034], 0
mov eax, dword [ebp - 0x1048]
cmp eax, 0x15
je 0x47a015
cmp eax, 0x1b
je 0x47a015
cmp eax, 0x1f
je 0x47a015
cmp eax, 0x20
jne 0x47a07d
movss xmm0, dword [ebp - 0x1040]
addss xmm0, dword [0x5cf5c8]
mov dword [ebp - 0x1048], 0
cvttss2si ecx, xmm0
push ecx
lea eax, [ebp - 0x418]
push str._dm_mixed_EarthKey
push eax
call fcn.0043d370
add esp, 0xc
push 0x120
call fcn.00556676
add esp, 4
mov dword [ebp - 0x101c], eax
mov byte [ebp - 4], 0x12
test eax, eax
je 0x47a0bc
lea ecx, [ebp - 0x418]
push ecx
push 0
push 0x11
mov ecx, eax
call fcn.0050b040
jmp 0x47a0be
mov eax, dword [ebp - 0x1048]
movss xmm0, dword [ebp - 0x1040]
addss xmm0, dword [0x5cf5c8]
cvttss2si ecx, xmm0
test eax, eax
jns 0x47a033
imul eax, dword [ebp - 0x1034], 0x258
add eax, str.Ghost
push eax
push ecx
lea eax, [ebp - 0x418]
push str._dm__s_EarthKey
push eax
call fcn.0043d370
add esp, 0x10
jmp 0x47a048
xor eax, eax
movss xmm1, dword [ebp - 0x1040]
movaps xmm0, xmm1
mov dword [eax + 0x108], 0
mulss xmm0, dword [0x5cfff8]
mov dword [ebp - 0x1018], eax
mov byte [ebp - 4], 0
addss xmm0, dword [0x5d33b4]
movss dword [eax + 0x10c], xmm0
mov dword [eax + 0x118], 1
mov ecx, dword [eax + 0x11c]
mov eax, dword [ebp - 0x1034]
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 - 0x1048]
mov dword [ecx + 0x10], eax
ja 0x47a134
sqrtsd xmm0, xmm0
jmp 0x47a139
call fcn.005924c0
divsd xmm0, qword [0x5d33d0]
mov ecx, 2
cvttsd2si eax, xmm0
sub ecx, eax
mov eax, dword [ebp - 0x1010]
lea ecx, [ecx + ecx*4]
mov dword [ebp - 0x1078], ecx
mov dword [eax], ecx
cmp ecx, 0xa
jge 0x47a172
mov dword [eax], 0xa
mov dword [ebp - 0x1078], 0xa
movss xmm0, dword [ebp - 0x1040]
xorps xmm1, xmm1
mulss xmm0, dword [0x5d330c]
cvtps2pd xmm0, xmm0
ucomisd xmm1, xmm0
ja 0x47a194
sqrtsd xmm0, xmm0
jmp 0x47a199
call fcn.005924c0
divsd xmm0, qword [0x5d33d0]
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 0x47a1c9
mov dword [eax + 4], 0xa
mov ecx, 0xa
cmp dword [ebp - 0x106c], 1
jne 0x47a1e1
mov edx, dword [ebp - 0x1078]
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.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x1060]
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 - 0x1018]
call fcn.0044ccd0
push eax
lea eax, [ebp - 0x418]
push 0x5d1dd4
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x1060]
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 - 0x1018]
mov ecx, dword [ecx + edi + 0x2d8]
call fcn.0050b900
mov ecx, dword [ebp - 0x1050]
mov edx, dword [ecx + 0xc]
mov eax, dword [ecx + 8]
mov dword [ebp - 0x106c], eax
mov dword [ebp - 0x1078], edx
test edx, edx
ja 0x47fc87
jb 0x47a2d0
cmp eax, 0x7530
jae 0x47fc87
movss xmm1, dword [ebp - 0x1014]
movaps xmm0, xmm1
movss xmm2, dword [ebp - 0x1028]
divss xmm0, dword [0x5cf5c8]
comiss xmm2, xmm0
jbe 0x47fc87
mov eax, dword [0x62aadc]
mov edx, dword [ecx + 4]
mov ecx, dword [ecx]
movd xmm0, dword [eax + 0xa0]
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
movss dword [ebp - 0x101c], xmm0
call fcn.00556a60
movss xmm1, dword [ebp - 0x101c]
cvtsd2ss xmm0, xmm0
addss xmm1, xmm0
xorps xmm0, xmm0
movlpd qword [ebp - 0x1020], xmm0
movss xmm0, dword [0x5d33cc]
comiss xmm1, xmm0
jb 0x47a361
subss xmm1, xmm0
comiss xmm0, xmm1
jbe 0x47a361
mov edi, dword [ebp - 0x1020]
mov eax, dword [ebp - 0x101c]
add edi, 0
adc eax, 0x80000000
jmp 0x47a36d
mov eax, dword [ebp - 0x101c]
mov edi, dword [ebp - 0x1020]
movaps xmm0, xmm1
mov dword [ebp - 0x1010], eax
call fcn.005567e0
mov ecx, eax
mov esi, edx
mov eax, dword [ebp - 0x1050]
add ecx, edi
mov dword [ebp - 0x103c], ecx
adc esi, dword [ebp - 0x1010]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x1078]
push ecx
mov dword [eax + 4], esi
mov eax, dword [ebp - 0x106c]
push eax
push ecx
push eax
call fcn.00557850
mov edi, eax
mov ecx, edx
shld ecx, edi, 4
shl edi, 4
sub edi, eax
mov eax, edi
mov dword [ebp - 0x101c], edi
mov edi, dword [ebp - 0x1064]
sbb ecx, edx
shld ecx, eax, 1
add eax, eax
cmp ecx, esi
ja 0x47fc87
jb 0x47a3e6
cmp eax, dword [ebp - 0x103c]
ja 0x47fc87
mov eax, dword [ebp - 0x1050]
mov ecx, dword [ebp - 0x106c]
mov edx, dword [ebp - 0x1078]
add ecx, 1
push str.You_gained_a_skill_level__
adc edx, 0
mov dword [eax + 8], ecx
mov dword [eax + 0xc], edx
lea eax, [ebp - 0x418]
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
imul eax, dword [edi + 0x188], 0x980
movss xmm0, dword [eax + edi + 0x300]
addss xmm0, dword [0x5d0c8c]
jmp 0x476336
lea eax, [ebp - 0x418]
push str.Your_Eye_of_the_Earth_fails_to_see.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x1060]
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, 4
call fcn.0044e330
mov esi, eax
test esi, esi
je 0x47fc87
movss xmm0, dword [ebp - 0x1014]
divss xmm0, dword [ebp - 0x1028]
movss dword [ebp - 0x1014], xmm0
call fcn.00565cd7
xorps xmm1, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
divss xmm0, dword [0x5cf5d0]
addss xmm0, xmm1
comiss xmm0, dword [ebp - 0x1014]
jbe 0x47a543
mov eax, dword [esi + 0x110]
cmp eax, 0xa
je 0x47a50b
cmp eax, 0x10
jne 0x47a543
mov eax, dword [esi + 0x118]
cmp eax, 1
jle 0x47a51f
dec eax
mov dword [esi + 0x118], eax
jmp 0x47a543
imul eax, dword [edi + 0x188], 0x980
push esi
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e520
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, 4
call fcn.0044e3e0
mov esi, eax
test esi, esi
jne 0x47a4d7
jmp 0x47fc87
push str.An_EarthKey_requires_the_flesh_of_a_monster.
jmp 0x47fc3f
mov ecx, 0x5d1bc0
mov eax, edx
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x47a5a0
test dl, dl
je 0x47a59c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x47a5a0
add eax, 2
add ecx, 2
test dl, dl
jne 0x47a580
xor eax, eax
jmp 0x47a5a5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47c2a1
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e330
test eax, eax
je 0x47c297
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, 4
call fcn.0044e3e0
test eax, eax
jne 0x47a5d0
mov dword [ebp - 0x1050], esi
test esi, esi
mov esi, dword [ebp - 0x1024]
je 0x47c297
mov dword [ebp - 0x1048], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e0]
add ecx, 4
call fcn.0044e330
mov dword [ebp - 0x101c], eax
test eax, eax
je 0x47706b
mov esi, eax
nop word [eax + eax]
mov ecx, esi
call fcn.0044ccd0
lea ecx, [edi + 0x260]
nop dword [eax]
mov dl, byte [ecx]
cmp dl, byte [eax]
jne 0x47a670
test dl, dl
je 0x47a66c
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x47a670
add ecx, 2
add eax, 2
test dl, dl
jne 0x47a650
xor eax, eax
jmp 0x47a675
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47a685
mov eax, dword [esi + 0x11c]
mov dword [ebp - 0x1048], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e0]
add ecx, 4
call fcn.0044e3e0
mov esi, eax
test esi, esi
jne 0x47a640
mov esi, dword [ebp - 0x1024]
cmp dword [ebp - 0x1048], eax
je 0x47706b
mov ecx, edi
call fcn.00485990
mov ecx, dword [ebp - 0x1048]
cdq
push dword [ecx + 0xc]
push dword [ecx + 8]
push edx
push eax
call fcn.00557850
mov ecx, eax
call fcn.00556a60
cvtsd2ss xmm0, xmm0
sub esp, 8
mov dword [esp + 4], 0x3fc00000
mulss xmm0, dword [0x5d32fc]
mov dword [esp], 0x3f4ccccd
movss dword [ebp - 0x101c], xmm0
call fcn.004918b0
fmul dword [ebp - 0x101c]
add esp, 8
mov ecx, 0x62b580
push esi
push 8
fstp dword [ebp - 0x1010]
call fcn.0052d960
test eax, eax
je 0x47a752
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.0052e430
test eax, eax
je 0x47a752
movss xmm2, dword [ebp - 0x1010]
mulss xmm2, dword [0x5d3314]
jmp 0x47a75a
movss xmm2, dword [ebp - 0x1010]
mov eax, dword [edi + 0x14f34]
movss xmm1, dword [0x5cf058]
movss dword [ebp - 0x1054], xmm2
test eax, eax
jle 0x47a793
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x5d32f0]
addss xmm0, xmm1
mulss xmm0, xmm2
movss dword [ebp - 0x1054], xmm0
mov ecx, dword [ebp - 0x1050]
mov edi, 9
mov dword [ebp - 0x1018], 0
mov edx, dword [ecx + 0x11c]
add edx, 0x1c
cvttss2si eax, dword [edx]
lea edx, [edx + 4]
add dword [ebp - 0x1018], eax
sub edi, 1
jne 0x47a7b1
mov eax, dword [ecx + 0x11c]
sub esp, 8
mov ecx, dword [eax + 4]
mov eax, dword [ebp - 0x1018]
imul ecx, ecx
lea eax, [eax + eax*4]
add eax, eax
lea eax, [eax + ecx*4]
movd xmm0, eax
lea eax, [ebp - 0x418]
cvtdq2ps xmm0, xmm0
maxss xmm1, xmm0
xorps xmm0, xmm0
cvtss2sd xmm0, xmm1
movss dword [ebp - 0x106c], xmm1
movsd qword [esp], xmm0
push str.Task_difficulty_is__4.2f.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x1060]
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 - 0x1054]
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.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x1060]
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 - 0x1054]
lea eax, [ebp - 0x418]
comiss xmm0, dword [ebp - 0x106c]
mov edi, dword [ebp - 0x1064]
jb 0x47c22f
push str.You_successfully_shatter_the_totem_with_magic___Its_power_engulfs_the_items_in_your_workbench.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x1060]
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 - 0x1050]
movss xmm1, dword [0x5d3398]
mov esi, dword [esi + 0x11c]
movss xmm0, dword [esi + 0x34]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x47ab3a
movss xmm0, dword [esi + 0x38]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x47ab3a
lea eax, [ebp - 0x418]
push str.The_released_power_wants_to_break_a_Heart_Gem_apart.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov eax, dword [ebp - 0x1024]
lea edx, [ebp - 0x1060]
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, 4
call fcn.0044e330
mov dword [ebp - 0x1010], eax
test eax, eax
je 0x47ab3a
nop dword [eax]
nop dword [eax + eax]
cmp dword [eax + 0x110], 0x10
jne 0x47ab13
mov ecx, dword [eax + 0x11c]
cmp dword [ecx], 1
jne 0x47ab13
movss xmm1, dword [esi + 0x3c]
movss xmm2, dword [0x5cf058]
comiss xmm1, xmm2
jbe 0x47ab13
movss xmm0, dword [ecx + 4]
comiss xmm0, xmm2
jbe 0x47ab13
comiss xmm1, xmm0
jb 0x47ab13
dec dword [eax + 0x118]
cmp dword [eax + 0x118], 1
jge 0x47aa48
push eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e520
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 - 0x101c], eax
movss dword [esi + 0x3c], xmm0
call fcn.00556676
add esp, 4
mov dword [ebp - 0x103c], eax
mov byte [ebp - 4], 0x13
test eax, eax
je 0x47aa98
push str.Plain_Heart_Gem
push 0
push 0x10
mov ecx, eax
call fcn.0050b040
jmp 0x47aa9a
xor eax, eax
push 8
mov dword [ebp - 0x1010], eax
mov byte [ebp - 4], 0
call fcn.00556676
add esp, 4
test eax, eax
je 0x47aabb
xorps xmm0, xmm0
movq qword [eax], xmm0
jmp 0x47aabd
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 - 0x101c]
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.0050b900
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e3e0
mov dword [ebp - 0x1010], eax
test eax, eax
jne 0x47a9d0
movss xmm0, dword [esi + 0x2c]
movss xmm1, dword [0x5cf068]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x47af4d
movss xmm0, dword [esi + 0x1c]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x47ad4c
lea eax, [ebp - 0x418]
push str.The_released_power_wants_to_turn_Green_Dust_into_White_Dust.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov eax, dword [ebp - 0x1024]
lea edx, [ebp - 0x1060]
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, 4
call fcn.0044e330
mov ecx, eax
mov dword [ebp - 0x1018], ecx
test ecx, ecx
je 0x47af45
cmp dword [ecx + 0x110], 8
jne 0x47ad1e
mov eax, dword [ecx + 0x11c]
cmp dword [eax], 0
jne 0x47ad1e
movss xmm1, dword [esi + 0x3c]
xorps xmm0, xmm0
comiss xmm1, xmm0
jbe 0x47ad1e
movd xmm0, dword [ecx + 0x118]
cvtdq2ps xmm0, xmm0
comiss xmm1, xmm0
jb 0x47ac67
imul eax, dword [edi + 0x188], 0x980
push ecx
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e520
mov eax, dword [ebp - 0x1018]
add eax, 8
push 0x5d0d00
push eax
call fcn.0043d370
mov ecx, dword [ebp - 0x1018]
add esp, 8
mov eax, dword [ecx + 0x11c]
mov dword [eax], 3
jmp 0x47ad07
subss xmm0, xmm1
push 0x120
cvttss2si eax, xmm0
mov dword [ecx + 0x118], eax
call fcn.00556676
add esp, 4
mov dword [ebp - 0x101c], eax
mov byte [ebp - 4], 0x14
test eax, eax
je 0x47aca2
push 0x5d0d00
push 0
push 8
mov ecx, eax
call fcn.0050b040
jmp 0x47aca4
xor eax, eax
push 8
mov dword [ebp - 0x1010], eax
mov byte [ebp - 4], 0
call fcn.00556676
mov edx, eax
add esp, 4
test edx, edx
je 0x47acc7
xorps xmm0, xmm0
movq qword [edx], xmm0
jmp 0x47acc9
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.0050b900
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e3e0
mov ecx, eax
mov dword [ebp - 0x1018], eax
test ecx, ecx
jne 0x47abe2
jmp 0x47af45
movss xmm0, dword [esi + 0x38]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x47af4d
lea eax, [ebp - 0x418]
push str.The_released_power_wants_to_turn_Black_Dust_into_Red_Dust.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov eax, dword [ebp - 0x1024]
lea edx, [ebp - 0x1060]
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, 4
call fcn.0044e330
mov ecx, eax
mov dword [ebp - 0x1018], ecx
test ecx, ecx
je 0x47af45
nop word [eax + eax]
cmp dword [ecx + 0x110], 8
jne 0x47af1c
mov eax, dword [ecx + 0x11c]
cmp dword [eax], 2
jne 0x47af1c
movss xmm1, dword [esi + 0x3c]
xorps xmm0, xmm0
comiss xmm1, xmm0
jbe 0x47af1c
movd xmm0, dword [ecx + 0x118]
cvtdq2ps xmm0, xmm0
comiss xmm1, xmm0
jb 0x47ae65
imul eax, dword [edi + 0x188], 0x980
push ecx
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e520
mov eax, dword [ebp - 0x1018]
add eax, 8
push 0x5d0cd8
push eax
call fcn.0043d370
mov ecx, dword [ebp - 0x1018]
add esp, 8
mov eax, dword [ecx + 0x11c]
mov dword [eax], 4
jmp 0x47af05
subss xmm0, xmm1
push 0x120
cvttss2si eax, xmm0
mov dword [ecx + 0x118], eax
call fcn.00556676
add esp, 4
mov dword [ebp - 0x101c], eax
mov byte [ebp - 4], 0x15
test eax, eax
je 0x47aea0
push 0x5d0cd8
push 0
push 8
mov ecx, eax
call fcn.0050b040
jmp 0x47aea2
xor eax, eax
push 8
mov dword [ebp - 0x1010], eax
mov byte [ebp - 4], 0
call fcn.00556676
mov edx, eax
add esp, 4
test edx, edx
je 0x47aec5
xorps xmm0, xmm0
movq qword [edx], xmm0
jmp 0x47aec7
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.0050b900
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e3e0
mov ecx, eax
mov dword [ebp - 0x1018], eax
test ecx, ecx
jne 0x47ade0
movss xmm1, dword [0x5cf068]
movss xmm0, dword [esi + 0x30]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x47b15d
movss xmm0, dword [esi + 0x38]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x47b15d
lea eax, [ebp - 0x418]
push str.The_released_power_wants_to_turn_White_into_Green_Dust.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov eax, dword [ebp - 0x1024]
lea edx, [ebp - 0x1060]
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, 4
call fcn.0044e330
mov ecx, eax
mov dword [ebp - 0x1018], ecx
test ecx, ecx
je 0x47b155
nop dword [eax]
cmp dword [ecx + 0x110], 8
jne 0x47b12c
mov eax, dword [ecx + 0x11c]
cmp dword [eax], 3
jne 0x47b12c
movss xmm1, dword [esi + 0x3c]
xorps xmm0, xmm0
comiss xmm1, xmm0
jbe 0x47b12c
movd xmm0, dword [ecx + 0x118]
cvtdq2ps xmm0, xmm0
comiss xmm1, xmm0
jb 0x47b075
imul eax, dword [edi + 0x188], 0x980
push ecx
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e520
mov eax, dword [ebp - 0x1018]
add eax, 8
push 0x5d0cec
push eax
call fcn.0043d370
mov ecx, dword [ebp - 0x1018]
add esp, 8
mov eax, dword [ecx + 0x11c]
mov dword [eax], 0
jmp 0x47b115
subss xmm0, xmm1
push 0x120
cvttss2si eax, xmm0
mov dword [ecx + 0x118], eax
call fcn.00556676
add esp, 4
mov dword [ebp - 0x101c], eax
mov byte [ebp - 4], 0x16
test eax, eax
je 0x47b0b0
push 0x5d0cec
push 0
push 8
mov ecx, eax
call fcn.0050b040
jmp 0x47b0b2
xor eax, eax
push 8
mov dword [ebp - 0x1010], eax
mov byte [ebp - 4], 0
call fcn.00556676
mov edx, eax
add esp, 4
test edx, edx
je 0x47b0d5
xorps xmm0, xmm0
movq qword [edx], xmm0
jmp 0x47b0d7
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.0050b900
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e3e0
mov ecx, eax
mov dword [ebp - 0x1018], eax
test ecx, ecx
jne 0x47aff0
movss xmm1, dword [0x5cf068]
movss xmm4, dword [esi + 0x34]
ucomiss xmm4, xmm1
lahf
test ah, 0x44
jp 0x47b36a
movss xmm0, dword [esi + 0x30]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x47b36a
lea eax, [ebp - 0x418]
push str.The_released_power_wants_to_turn_White_into_Black_Dust.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov eax, dword [ebp - 0x1024]
lea edx, [ebp - 0x1060]
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, 4
call fcn.0044e330
mov ecx, eax
mov dword [ebp - 0x1018], ecx
test ecx, ecx
je 0x47c041
nop dword [eax]
cmp dword [ecx + 0x110], 8
jne 0x47b33c
mov eax, dword [ecx + 0x11c]
cmp dword [eax], 3
jne 0x47b33c
movss xmm1, dword [esi + 0x3c]
xorps xmm0, xmm0
comiss xmm1, xmm0
jbe 0x47b33c
movd xmm0, dword [ecx + 0x118]
cvtdq2ps xmm0, xmm0
comiss xmm1, xmm0
jb 0x47b285
imul eax, dword [edi + 0x188], 0x980
push ecx
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e520
mov eax, dword [ebp - 0x1018]
add eax, 8
push 0x5d0d14
push eax
call fcn.0043d370
mov ecx, dword [ebp - 0x1018]
add esp, 8
mov eax, dword [ecx + 0x11c]
mov dword [eax], 2
jmp 0x47b325
subss xmm0, xmm1
push 0x120
cvttss2si eax, xmm0
mov dword [ecx + 0x118], eax
call fcn.00556676
add esp, 4
mov dword [ebp - 0x101c], eax
mov byte [ebp - 4], 0x17
test eax, eax
je 0x47b2c0
push 0x5d0d14
push 0
push 8
mov ecx, eax
call fcn.0050b040
jmp 0x47b2c2
xor eax, eax
push 8
mov dword [ebp - 0x1010], eax
mov byte [ebp - 4], 0
call fcn.00556676
mov edx, eax
add esp, 4
test edx, edx
je 0x47b2e5
xorps xmm0, xmm0
movq qword [edx], xmm0
jmp 0x47b2e7
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.0050b900
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e3e0
mov ecx, eax
mov dword [ebp - 0x1018], eax
test ecx, ecx
jne 0x47b200
jmp 0x47c041
movss xmm0, dword [esi + 0x24]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x47b77a
movss xmm0, dword [esi + 0x2c]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x47b57a
lea eax, [ebp - 0x418]
push str.The_released_power_wants_to_turn_Red_Dust_into_Black_Dust.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov eax, dword [ebp - 0x1024]
lea edx, [ebp - 0x1060]
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, 4
call fcn.0044e330
mov ecx, eax
mov dword [ebp - 0x1018], ecx
test ecx, ecx
je 0x47c041
nop word [eax + eax]
cmp dword [ecx + 0x110], 8
jne 0x47b54c
mov eax, dword [ecx + 0x11c]
cmp dword [eax], 4
jne 0x47b54c
movss xmm1, dword [esi + 0x3c]
xorps xmm0, xmm0
comiss xmm1, xmm0
jbe 0x47b54c
movd xmm0, dword [ecx + 0x118]
cvtdq2ps xmm0, xmm0
comiss xmm1, xmm0
jb 0x47b495
imul eax, dword [edi + 0x188], 0x980
push ecx
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e520
mov eax, dword [ebp - 0x1018]
add eax, 8
push 0x5d0d14
push eax
call fcn.0043d370
mov ecx, dword [ebp - 0x1018]
add esp, 8
mov eax, dword [ecx + 0x11c]
mov dword [eax], 2
jmp 0x47b535
subss xmm0, xmm1
push 0x120
cvttss2si eax, xmm0
mov dword [ecx + 0x118], eax
call fcn.00556676
add esp, 4
mov dword [ebp - 0x101c], eax
mov byte [ebp - 4], 0x18
test eax, eax
je 0x47b4d0
push 0x5d0d14
push 0
push 8
mov ecx, eax
call fcn.0050b040
jmp 0x47b4d2
xor eax, eax
push 8
mov dword [ebp - 0x1010], eax
mov byte [ebp - 4], 0
call fcn.00556676
mov edx, eax
add esp, 4
test edx, edx
je 0x47b4f5
xorps xmm0, xmm0
movq qword [edx], xmm0
jmp 0x47b4f7
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.0050b900
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e3e0
mov ecx, eax
mov dword [ebp - 0x1018], eax
test ecx, ecx
jne 0x47b410
jmp 0x47c041
movss xmm0, dword [esi + 0x38]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x47b77a
lea eax, [ebp - 0x418]
push str.The_released_power_wants_to_turn_Red_Dust_into_Green_Dust.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov eax, dword [ebp - 0x1024]
lea edx, [ebp - 0x1060]
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, 4
call fcn.0044e330
mov ecx, eax
mov dword [ebp - 0x1018], ecx
test ecx, ecx
je 0x47c041
nop dword [eax + eax]
cmp dword [ecx + 0x110], 8
jne 0x47b74c
mov eax, dword [ecx + 0x11c]
cmp dword [eax], 4
jne 0x47b74c
movss xmm1, dword [esi + 0x3c]
xorps xmm0, xmm0
comiss xmm1, xmm0
jbe 0x47b74c
movd xmm0, dword [ecx + 0x118]
cvtdq2ps xmm0, xmm0
comiss xmm1, xmm0
jb 0x47b695
imul eax, dword [edi + 0x188], 0x980
push ecx
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e520
mov eax, dword [ebp - 0x1018]
add eax, 8
push 0x5d0cec
push eax
call fcn.0043d370
mov ecx, dword [ebp - 0x1018]
add esp, 8
mov eax, dword [ecx + 0x11c]
mov dword [eax], 0
jmp 0x47b735
subss xmm0, xmm1
push 0x120
cvttss2si eax, xmm0
mov dword [ecx + 0x118], eax
call fcn.00556676
add esp, 4
mov dword [ebp - 0x101c], eax
mov byte [ebp - 4], 0x19
test eax, eax
je 0x47b6d0
push 0x5d0cec
push 0
push 8
mov ecx, eax
call fcn.0050b040
jmp 0x47b6d2
xor eax, eax
push 8
mov dword [ebp - 0x1010], eax
mov byte [ebp - 4], 0
call fcn.00556676
mov edx, eax
add esp, 4
test edx, edx
je 0x47b6f5
xorps xmm0, xmm0
movq qword [edx], xmm0
jmp 0x47b6f7
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.0050b900
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e3e0
mov ecx, eax
mov dword [ebp - 0x1018], eax
test ecx, ecx
jne 0x47b610
jmp 0x47c041
movss xmm2, dword [esi + 0x1c]
movss xmm1, dword [0x5cfe68]
ucomiss xmm2, xmm1
lahf
test ah, 0x44
jp 0x47b98c
movss xmm0, dword [esi + 0x38]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x47b98c
lea eax, [ebp - 0x418]
push str.The_released_power_wants_to_turn_Green_Dust_into_Blue_Dust.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov eax, dword [ebp - 0x1024]
lea edx, [ebp - 0x1060]
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, 4
call fcn.0044e330
mov ecx, eax
mov dword [ebp - 0x1018], ecx
test ecx, ecx
je 0x47c041
cmp dword [ecx + 0x110], 8
jne 0x47b95e
mov eax, dword [ecx + 0x11c]
cmp dword [eax], 0
jne 0x47b95e
movss xmm1, dword [esi + 0x3c]
xorps xmm0, xmm0
comiss xmm1, xmm0
jbe 0x47b95e
movd xmm0, dword [ecx + 0x118]
cvtdq2ps xmm0, xmm0
comiss xmm1, xmm0
jb 0x47b8a7
imul eax, dword [edi + 0x188], 0x980
push ecx
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e520
mov eax, dword [ebp - 0x1018]
add eax, 8
push 0x5d0cc4
push eax
call fcn.0043d370
mov ecx, dword [ebp - 0x1018]
add esp, 8
mov eax, dword [ecx + 0x11c]
mov dword [eax], 1
jmp 0x47b947
subss xmm0, xmm1
push 0x120
cvttss2si eax, xmm0
mov dword [ecx + 0x118], eax
call fcn.00556676
add esp, 4
mov dword [ebp - 0x101c], eax
mov byte [ebp - 4], 0x1a
test eax, eax
je 0x47b8e2
push 0x5d0cc4
push 0
push 8
mov ecx, eax
call fcn.0050b040
jmp 0x47b8e4
xor eax, eax
push 8
mov dword [ebp - 0x1010], eax
mov byte [ebp - 4], 0
call fcn.00556676
mov edx, eax
add esp, 4
test edx, edx
je 0x47b907
xorps xmm0, xmm0
movq qword [edx], xmm0
jmp 0x47b909
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.0050b900
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e3e0
mov ecx, eax
mov dword [ebp - 0x1018], eax
test ecx, ecx
jne 0x47b822
jmp 0x47c041
movss xmm1, dword [0x5d3398]
ucomiss xmm2, xmm1
lahf
test ah, 0x44
jp 0x47bb9a
movss xmm0, dword [esi + 0x38]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x47bb9a
lea eax, [ebp - 0x418]
push str.The_released_power_wants_to_turn_Black_Dust_into_Blue_Dust.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov eax, dword [ebp - 0x1024]
lea edx, [ebp - 0x1060]
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, 4
call fcn.0044e330
mov ecx, eax
mov dword [ebp - 0x1018], ecx
test ecx, ecx
je 0x47c041
nop
cmp dword [ecx + 0x110], 8
jne 0x47bb6c
mov eax, dword [ecx + 0x11c]
cmp dword [eax], 2
jne 0x47bb6c
movss xmm1, dword [esi + 0x3c]
xorps xmm0, xmm0
comiss xmm1, xmm0
jbe 0x47bb6c
movd xmm0, dword [ecx + 0x118]
cvtdq2ps xmm0, xmm0
comiss xmm1, xmm0
jb 0x47bab5
imul eax, dword [edi + 0x188], 0x980
push ecx
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e520
mov eax, dword [ebp - 0x1018]
add eax, 8
push 0x5d0cc4
push eax
call fcn.0043d370
mov ecx, dword [ebp - 0x1018]
add esp, 8
mov eax, dword [ecx + 0x11c]
mov dword [eax], 1
jmp 0x47bb55
subss xmm0, xmm1
push 0x120
cvttss2si eax, xmm0
mov dword [ecx + 0x118], eax
call fcn.00556676
add esp, 4
mov dword [ebp - 0x101c], eax
mov byte [ebp - 4], 0x1b
test eax, eax
je 0x47baf0
push 0x5d0cc4
push 0
push 8
mov ecx, eax
call fcn.0050b040
jmp 0x47baf2
xor eax, eax
push 8
mov dword [ebp - 0x1010], eax
mov byte [ebp - 4], 0
call fcn.00556676
mov edx, eax
add esp, 4
test edx, edx
je 0x47bb15
xorps xmm0, xmm0
movq qword [edx], xmm0
jmp 0x47bb17
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.0050b900
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e3e0
mov ecx, eax
mov dword [ebp - 0x1018], eax
test ecx, ecx
jne 0x47ba30
jmp 0x47c041
movss xmm3, dword [esi + 0x20]
movss xmm1, dword [0x5d338c]
ucomiss xmm3, xmm1
lahf
test ah, 0x44
jp 0x47bcca
movss xmm0, dword [esi + 0x28]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x47bcca
movss xmm0, dword [esi + 0x38]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x47bcca
lea eax, [ebp - 0x418]
push str.The_released_power_wants_to_change_a_shards_color.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov eax, dword [ebp - 0x1024]
lea edx, [ebp - 0x1060]
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, 4
call fcn.0044e330
mov ecx, eax
test ecx, ecx
je 0x47c041
nop
cmp dword [ecx + 0x110], 8
jne 0x47bc6b
mov edx, dword [ecx + 0x11c]
mov eax, dword [edx]
cmp eax, 5
jl 0x47bc6b
cmp eax, 0xd
jle 0x47bc8f
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e3e0
mov ecx, eax
test ecx, ecx
jne 0x47bc50
jmp 0x47c041
inc eax
mov dword [edx], eax
mov eax, dword [ecx + 0x11c]
cmp dword [eax], 0xd
jle 0x47bca3
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 0x47bcb7
jmp 0x47c041
movss xmm0, dword [0x5cf058]
ucomiss xmm3, xmm0
lahf
test ah, 0x44
jp 0x47c041
ucomiss xmm2, xmm0
lahf
test ah, 0x44
jp 0x47c041
ucomiss xmm4, xmm0
lahf
test ah, 0x44
jp 0x47c041
lea eax, [ebp - 0x418]
push str.The_released_power_wants_to_release_your_pets.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov esi, dword [ebp - 0x1024]
lea edx, [ebp - 0x1060]
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 - 0x1094], 0x38
mov byte [ebp - 0xfe8], 0x3a
add ecx, eax
add eax, 0x368
add eax, edi
mov dword [ebp - 0x1028], ecx
mov dword [ebp - 0x1034], eax
cmp byte [ecx + 0x10], 0xff
je 0x47bee3
mov eax, dword [edi + 0x180]
mov ecx, esi
mov dword [ebp - 0x1093], eax
mov dword [ebp - 0x108f], 0xffffffff
mov al, byte [edi + 0x108]
mov byte [ebp - 0x108b], al
mov al, byte [edi + 0x10c]
push 0
push 5
mov byte [ebp - 0x108a], al
lea eax, [ebp - 0x1094]
push eax
push 0x11
mov word [ebp - 0x1089], 0x2828
mov dword [ebp - 0x1087], 0x50032
push dword [edi + 0x10c]
push dword [edi + 0x108]
push 0
call fcn.00529cd0
push dword [ebp - 0x1028]
lea eax, [ebp - 0x418]
push str._s_is_freed_into_the_wild.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
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.00529cd0
mov eax, dword [edi + 0x180]
mov dword [ebp - 0xfe7], eax
lea eax, [ebp - 0xfdb]
push 0x10
push eax
push 0x10
push dword [ebp - 0x1028]
call fcn.0044d1c0
mov ecx, dword [ebp - 0x1028]
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 [0x5cf5c4]
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.00529cd0
mov eax, dword [ebp - 0x1028]
mov byte [eax + 0x10], 0xff
mov eax, dword [ebp - 0x1034]
cmp byte [eax + 0x10], 0xff
je 0x47c041
mov eax, dword [edi + 0x180]
mov ecx, esi
mov dword [ebp - 0x1093], eax
mov dword [ebp - 0x108f], 0xffffffff
mov al, byte [edi + 0x108]
mov byte [ebp - 0x108b], al
mov al, byte [edi + 0x10c]
push 0
push 5
mov byte [ebp - 0x108a], al
lea eax, [ebp - 0x1094]
push eax
push 0x11
mov word [ebp - 0x1089], 0x2828
mov dword [ebp - 0x1087], 0x50032
push dword [edi + 0x10c]
push dword [edi + 0x108]
push 0
call fcn.00529cd0
push dword [ebp - 0x1034]
lea eax, [ebp - 0x418]
push str._s_is_freed_into_the_wild.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
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.00529cd0
mov eax, dword [edi + 0x180]
mov dword [ebp - 0xfe7], eax
lea eax, [ebp - 0xfdb]
push 0x10
push eax
push 0x10
push dword [ebp - 0x1034]
call fcn.0044d1c0
mov ecx, dword [ebp - 0x1034]
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 [0x5cf5c4]
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.00529cd0
mov eax, dword [ebp - 0x1034]
mov byte [eax + 0x10], 0xff
mov esi, dword [ebp - 0x1050]
mov eax, dword [esi + 0x118]
cmp eax, 1
jle 0x47c05b
dec eax
mov dword [esi + 0x118], eax
jmp 0x47c07f
imul eax, dword [edi + 0x188], 0x980
push esi
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e520
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
mov esi, dword [ebp - 0x1048]
mov ecx, dword [esi + 0xc]
mov eax, dword [esi + 8]
mov dword [ebp - 0x1078], eax
mov dword [ebp - 0x1080], ecx
test ecx, ecx
ja 0x47fc87
jb 0x47c0ac
cmp eax, 0x7530
jae 0x47fc87
movss xmm0, dword [ebp - 0x1054]
divss xmm0, dword [0x5cf5c8]
movss xmm1, dword [ebp - 0x106c]
comiss xmm1, xmm0
jbe 0x47fc87
mov eax, dword [0x62aadc]
mov edx, dword [esi + 4]
mov ecx, dword [esi]
movd xmm0, dword [eax + 0xa4]
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
movss dword [ebp - 0x101c], xmm0
call fcn.00556a60
movss xmm1, dword [ebp - 0x101c]
cvtsd2ss xmm0, xmm0
addss xmm1, xmm0
xorps xmm0, xmm0
movlpd qword [ebp - 0x1020], xmm0
movss xmm0, dword [0x5d33cc]
comiss xmm1, xmm0
jb 0x47c146
subss xmm1, xmm0
comiss xmm0, xmm1
jbe 0x47c146
mov eax, dword [ebp - 0x1020]
add eax, 0
mov dword [ebp - 0x1010], eax
mov eax, dword [ebp - 0x101c]
adc eax, 0x80000000
mov dword [ebp - 0x106c], eax
jmp 0x47c15e
mov eax, dword [ebp - 0x101c]
mov dword [ebp - 0x106c], eax
mov eax, dword [ebp - 0x1020]
mov dword [ebp - 0x1010], eax
movaps xmm0, xmm1
call fcn.005567e0
add eax, dword [ebp - 0x1010]
mov edi, edx
mov ecx, dword [ebp - 0x1080]
adc edi, dword [ebp - 0x106c]
push ecx
mov dword [esi], eax
mov dword [ebp - 0x101c], eax
mov eax, dword [ebp - 0x1078]
push eax
push ecx
push eax
mov dword [esi + 4], edi
call fcn.00557850
mov ecx, eax
mov esi, edx
shld esi, ecx, 2
shl ecx, 2
add eax, ecx
adc edx, esi
shld edx, eax, 2
shl eax, 2
cmp edx, edi
ja 0x47fc87
jb 0x47c1c0
cmp eax, dword [ebp - 0x101c]
ja 0x47fc87
mov eax, dword [ebp - 0x1048]
mov ecx, dword [ebp - 0x1078]
mov edx, dword [ebp - 0x1080]
add ecx, 1
push str.You_gained_a_skill_level__
adc edx, 0
mov dword [eax + 8], ecx
mov dword [eax + 0xc], edx
lea eax, [ebp - 0x418]
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov edi, dword [ebp - 0x1064]
imul eax, dword [edi + 0x188], 0x980
movss xmm0, dword [eax + edi + 0x300]
addss xmm0, dword [0x5d32f0]
jmp 0x476336
push str.Your_attempt_to_magically_break_the_totem_fails._It_crumbles_to_dust.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x1060]
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 - 0x1050]
mov eax, dword [esi + 0x118]
cmp eax, 1
jle 0x47c9da
dec eax
mov dword [esi + 0x118], eax
jmp 0x47fc87
push str.You_must_have_a_totem_in_your_workbench_to_shatter.
jmp 0x47fc3f
mov edi, dword [ebp - 0x1018]
mov esi, str.BEAR
mov dword [ebp - 0x1030], 0xffffffff
mov dword [ebp - 0x1010], 0
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x47c2c5
sub ecx, edx
push ecx
push edi
push esi
call fcn.005a290a
mov edx, dword [ebp - 0x1030]
add esp, 0xc
test eax, eax
mov eax, dword [ebp - 0x1010]
cmove edx, eax
inc eax
add esi, 0xc
mov dword [ebp - 0x1030], edx
mov dword [ebp - 0x1010], eax
cmp esi, 0x60d214
jl 0x47c2c0
mov edi, dword [ebp - 0x1064]
mov esi, dword [ebp - 0x1024]
cmp edx, 0xffffffff
jle 0x47d67f
xor eax, eax
xor ecx, ecx
mov dword [ebp - 0x1028], eax
mov dword [ebp - 0x1034], eax
mov dword [ebp - 0x1048], eax
imul eax, dword [edi + 0x188], 0x980
mov dword [ebp - 0x1018], ecx
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e330
test eax, eax
je 0x47d675
or esi, 0xffffffff
nop word [eax + eax]
mov ecx, dword [eax + 0x110]
cmp ecx, 2
jne 0x47c385
mov ecx, dword [ebp - 0x1018]
add ecx, dword [eax + 0x118]
mov dword [ebp - 0x1018], ecx
mov dword [ebp - 0x1014], eax
jmp 0x47c3ef
cmp ecx, 0xe
jne 0x47c3a4
mov ecx, dword [ebp - 0x1034]
add ecx, dword [eax + 0x118]
mov dword [ebp - 0x1034], ecx
mov dword [ebp - 0x1040], eax
jmp 0x47c3ef
cmp ecx, 9
jne 0x47c3c3
mov ecx, dword [ebp - 0x1028]
add ecx, dword [eax + 0x118]
mov dword [ebp - 0x1028], ecx
mov dword [ebp - 0x106c], eax
jmp 0x47c3ef
cmp ecx, 0xf
jne 0x47c3ef
mov ecx, dword [ebp - 0x1048]
add ecx, dword [eax + 0x118]
mov dword [ebp - 0x1048], ecx
cmp esi, 0xffffffff
jne 0x47c3ea
mov eax, dword [eax + 0x11c]
movsx esi, byte [eax]
jmp 0x47c3ef
mov esi, 0xfffffffe
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e3e0
test eax, eax
jne 0x47c360
mov ecx, dword [ebp - 0x1018]
mov dword [ebp - 0x1054], esi
mov esi, dword [ebp - 0x1024]
cmp ecx, 1
jle 0x47c431
push str.Use_magic_on_one_totem_at_a_time.
jmp 0x47fc3f
mov eax, dword [ebp - 0x1028]
cmp eax, 1
jle 0x47c446
push str.Use_magic_on_one_egg_at_a_time.
jmp 0x47fc3f
mov edx, dword [ebp - 0x1034]
cmp edx, 1
jle 0x47c45b
push str.Use_magic_on_one_staff_at_a_time.
jmp 0x47fc3f
cmp ecx, 1
jge 0x47c46e
cmp eax, 1
jge 0x47c46e
cmp edx, 1
jl 0x47d675
add eax, edx
add eax, ecx
cmp eax, 1
jle 0x47c481
push str.You_have_too_many_imbuable_items_in_the_workbench.
jmp 0x47fc3f
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e0]
add ecx, 4
call fcn.0044e330
mov dword [ebp - 0x1010], eax
test eax, eax
je 0x47d66b
xor esi, esi
nop word [eax + eax]
mov ecx, eax
call fcn.0044ccd0
lea ecx, [edi + 0x260]
nop dword [eax]
mov dl, byte [ecx]
cmp dl, byte [eax]
jne 0x47c4e0
test dl, dl
je 0x47c4dc
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x47c4e0
add ecx, 2
add eax, 2
test dl, dl
jne 0x47c4c0
xor eax, eax
jmp 0x47c4e5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47c4f5
mov esi, dword [ebp - 0x1010]
mov esi, dword [esi + 0x11c]
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e0]
add ecx, 4
call fcn.0044e3e0
mov dword [ebp - 0x1010], eax
test eax, eax
jne 0x47c4b0
mov dword [ebp - 0x1038], esi
test esi, esi
mov esi, dword [ebp - 0x1024]
je 0x47d66b
mov eax, dword [ebp - 0x1028]
test eax, eax
jle 0x47ca3f
mov eax, dword [ebp - 0x106c]
mov eax, dword [eax + 0x11c]
mov dword [ebp - 0x101c], 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.00485990
cmp eax, esi
jge 0x47c5a7
lea eax, [ebp - 0x418]
push str.Your_magic_is_too_weak_to_hatch_this_egg.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov eax, dword [ebp - 0x1024]
mov ecx, dword [eax + 0x11c]
jmp 0x47fc6b
imul eax, dword [edi + 0x188], 0x980
cmp byte [eax + edi + 0x344], 0xff
jne 0x47c5ce
mov dword [ebp - 0x1028], 0
xor esi, esi
mov ecx, str.Pet_A
jmp 0x47c5f0
cmp byte [eax + edi + 0x378], 0xff
jne 0x47ca03
mov dword [ebp - 0x1028], 1
mov esi, 0x34
mov ecx, str.Pet_B
add eax, 0x334
mov dword [ebp - 0x1010], esi
mov edx, esi
add eax, edi
push 0x10
add eax, edx
push eax
push 0x400
push ecx
call fcn.0044d1c0
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.00513350
imul eax, dword [edi + 0x188], 0x980
mov edx, dword [ebp - 0x101c]
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 - 0x1030]
shl eax, 4
cmp ecx, dword [eax + 0x60d53c]
jne 0x47c713
imul eax, dword [edi + 0x188], 0x980
add eax, esi
mov dword [eax + edi + 0x354], 0x3f800000
mov eax, dword [edx + 4]
mov esi, dword [ebp - 0x1024]
push esi
lea ecx, [eax*8]
sub ecx, eax
add ecx, dword [edx]
lea eax, [ecx + ecx*8]
mov ecx, 0x62b580
shl eax, 4
push dword [eax + 0x60d53c]
call fcn.0052d960
test eax, eax
je 0x47c790
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.0052e430
test eax, eax
je 0x47c790
imul eax, dword [edi + 0x188], 0x980
add eax, dword [ebp - 0x1010]
movss xmm0, dword [eax + edi + 0x354]
cvtps2pd xmm0, xmm0
addsd xmm0, qword [0x5cf060]
cvtpd2ps xmm0, xmm0
movss dword [eax + edi + 0x354], xmm0
mov eax, dword [edi + 0x14f34]
test eax, eax
jle 0x47c7c8
imul edx, dword [edi + 0x188], 0x980
imul ecx, dword [ebp - 0x1028], 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 - 0x1028], 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 [0x5cf5c4]
movzx eax, byte [ecx + edx + 0x347]
mov ecx, esi
movd xmm0, eax
mov eax, dword [ebp - 0x1028]
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.00529cd0
lea eax, [ebp - 0x418]
push str.You_have_hatched_a_pet_drake_
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x1060]
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 - 0x10b8], 0x38
mov ecx, esi
mov eax, dword [edi + 0x180]
mov dword [ebp - 0x10b7], eax
mov dword [ebp - 0x10b3], 0xffffffff
mov al, byte [edi + 0x108]
mov byte [ebp - 0x10af], al
mov al, byte [edi + 0x10c]
push 0
push 5
mov byte [ebp - 0x10ae], al
lea eax, [ebp - 0x10b8]
push eax
push 0x11
mov word [ebp - 0x10ad], 0xffff
mov dword [ebp - 0x10ab], 0x50000
push dword [edi + 0x10c]
push dword [edi + 0x108]
push 0
call fcn.00529cd0
push 0x5cd640
push str.petInfo.txt
call fcn.0056632e
mov esi, eax
lea eax, [ebp - 0x418]
push eax
call fcn.0058d894
lea eax, [ebp - 0x418]
push eax
push str._s_
push esi
call fcn.0043d340
lea eax, [ebp - 0x418]
push eax
call fcn.0058da91
lea eax, [ebp - 0x418]
push eax
push str._s_
push esi
call fcn.0043d340
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.0043d340
add esp, 0x40
push esi
call fcn.00566040
mov esi, dword [ebp - 0x106c]
add esp, 4
imul eax, dword [edi + 0x188], 0x980
push esi
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e520
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
jmp 0x47fc87
lea eax, [ebp - 0x418]
push str.You_already_have_two_pet_drakes.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov eax, dword [ebp - 0x1024]
mov ecx, dword [eax + 0x11c]
jmp 0x47fc6b
mov ecx, edi
call fcn.00485990
mov ecx, dword [ebp - 0x1038]
cdq
push dword [ecx + 0xc]
push dword [ecx + 8]
push edx
push eax
call fcn.00557850
mov ecx, eax
call fcn.00556a60
cvtsd2ss xmm0, xmm0
sub esp, 8
mov dword [esp + 4], 0x3fa66666
mulss xmm0, dword [0x5d32fc]
mov dword [esp], 0x3f333333
movss dword [ebp - 0x101c], xmm0
call fcn.004918b0
fmul dword [ebp - 0x101c]
add esp, 8
mov ecx, dword [ebp - 0x1030]
push esi
push ecx
mov ecx, 0x62b580
fstp dword [ebp - 0x1010]
call fcn.0052d960
test eax, eax
je 0x47cae0
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.0052e430
test eax, eax
je 0x47cae0
movss xmm1, dword [ebp - 0x1010]
mulss xmm1, dword [0x5cf5c0]
jmp 0x47cae8
movss xmm1, dword [ebp - 0x1010]
mov eax, dword [edi + 0x14f34]
movss dword [ebp - 0x1044], xmm1
test eax, eax
jle 0x47cb1d
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x5d32f0]
addss xmm0, dword [0x5cf058]
mulss xmm1, xmm0
movss dword [ebp - 0x1044], xmm1
mov eax, dword [ebp - 0x1034]
test eax, eax
jle 0x47cf00
push ecx
movss dword [esp], xmm1
push dword [ebp - 0x1030]
push dword [ebp - 0x1040]
call fcn.0052b530
mov dword [ebp - 0x101c], eax
mov eax, dword [ebp - 0x1040]
mov eax, dword [eax + 0x11c]
push eax
mov dword [ebp - 0x106c], eax
call fcn.0052b5c0
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.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x1060]
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 - 0x1044]
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.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x1060]
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 - 0x1038]
push dword [eax + 8]
push dword [ebp - 0x1040]
call fcn.0052b600
mov ecx, dword [0x62aadc]
add esp, 8
mov ecx, dword [ecx + 0xa8]
imul ecx, eax
mov eax, dword [ebp - 0x1038]
add dword [eax], ecx
adc dword [eax + 4], 0
mov eax, dword [ebp - 0x101c]
sub eax, 0
je 0x47ccfa
sub eax, 1
je 0x47cca8
sub eax, 1
jne 0x47cd96
lea eax, [ebp - 0x418]
push str.The_attempt_destroys_the_staff.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
add esp, 0x18
jmp 0x47cde9
lea eax, [ebp - 0x418]
push str.The_magic_fails_to_imbue_the_staff.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x1060]
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 0x47cd96
lea eax, [ebp - 0x418]
push str.The_magic_infuses_the_staff_
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x1060]
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 - 0x1044]
push ecx
movss dword [esp], xmm0
push dword [ebp - 0x1040]
call fcn.0052b670
movss xmm0, dword [ebp - 0x1044]
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.00487f70
mov eax, dword [ebp - 0x106c]
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 0x47cda4
mov eax, dword [ebp - 0x106c]
mov eax, dword [eax + 4]
add eax, 4
lea eax, [eax + eax*4]
cmp ecx, eax
jle 0x47ce35
push 0x64
lea eax, [ebp - 0xfc7]
push eax
push 0x400
push str.The_staff_cant_hold_that_much_magic.__It_shatters_
call fcn.0044d1c0
add esp, 0x10
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x1060]
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
push dword [ebp - 0x1040]
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e520
mov ecx, dword [ebp - 0x1040]
push 1
mov eax, dword [ecx]
mov eax, dword [eax]
call eax
mov ecx, dword [ebp - 0x1038]
mov edx, dword [ecx + 0xc]
mov eax, dword [ecx + 8]
mov dword [ebp - 0x1010], eax
mov dword [ebp - 0x1018], edx
test edx, edx
ja 0x47fc87
jb 0x47ce60
cmp eax, 0x64
jae 0x47fc87
mov edx, eax
mov eax, dword [ebp - 0x1018]
shld eax, edx, 4
shl edx, 4
sub edx, dword [ebp - 0x1010]
sbb eax, dword [ebp - 0x1018]
shld eax, edx, 1
add edx, edx
cmp eax, dword [ecx + 4]
ja 0x47fc87
jb 0x47ce94
cmp edx, dword [ecx]
ja 0x47fc87
mov eax, dword [ebp - 0x1010]
mov edx, dword [ebp - 0x1018]
add eax, 1
mov dword [ecx + 8], eax
lea eax, [ebp - 0x418]
adc edx, 0
push str.You_gained_a_skill_level__
push eax
mov dword [ecx + 0xc], edx
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
imul eax, dword [edi + 0x188], 0x980
movss xmm0, dword [eax + edi + 0x300]
addss xmm0, dword [0x5d32f4]
movss dword [eax + edi + 0x300], xmm0
jmp 0x47fc65
mov ecx, dword [ebp - 0x1014]
mov eax, dword [ecx + 0x11c]
mov dword [ebp - 0x1040], eax
cmp byte [eax + 8], 0
je 0x47cf4c
mov eax, dword [eax]
sub eax, 7
cmp eax, 2
ja 0x47d291
push 0x64
lea eax, [ebp - 0xfc7]
push eax
push 0x400
push str.This_type_of_totem_cannot_be_further_imbued.
call fcn.0044d1c0
mov ecx, dword [esi + 0x11c]
add esp, 0x10
jmp 0x47fc6e
mov edx, dword [ebp - 0x1054]
test edx, edx
js 0x47d291
cmp dword [ebp - 0x1030], edx
je 0x47cf88
push 0x64
lea eax, [ebp - 0xfc7]
push eax
push 0x400
push str.The_attempt_feels_painful_and_improper__it_fizzles.
call fcn.0044d1c0
mov ecx, dword [esi + 0x11c]
add esp, 0x10
jmp 0x47fc6e
mov eax, dword [eax + 4]
add eax, dword [ebp - 0x1048]
push eax
lea eax, [ebp - 0x418]
push str.Task_difficulty_is__d.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x1060]
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 - 0x1044]
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.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x1060]
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 - 0x1040]
movss xmm1, dword [ebp - 0x1044]
mov eax, dword [ecx + 4]
add eax, dword [ebp - 0x1048]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
comiss xmm1, xmm0
jb 0x47d239
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e330
mov esi, eax
test esi, esi
je 0x47d0d1
cmp dword [esi + 0x110], 0xf
jne 0x47d0b2
imul eax, dword [edi + 0x188], 0x980
push esi
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e520
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, 4
call fcn.0044e3e0
mov esi, eax
test esi, esi
jne 0x47d085
movd xmm0, dword [ebp - 0x1048]
xorps xmm1, xmm1
mov esi, dword [ebp - 0x1040]
cvtdq2ps xmm0, xmm0
mov byte [esi + 8], 1
cvtps2pd xmm0, xmm0
ucomisd xmm1, xmm0
ja 0x47d0f8
sqrtsd xmm0, xmm0
jmp 0x47d0fd
call fcn.005924c0
cvtsd2ss xmm0, xmm0
lea ecx, [esi + 0xa]
movss dword [esi + 0x40], xmm0
call fcn.00513350
mov eax, dword [ebp - 0x1040]
lea ecx, [esi + 0xa]
mov eax, dword [eax + 4]
lea edx, [eax + 1]
inc eax
imul edx, eax
lea eax, [edx + edx*4]
add eax, eax
push eax
call fcn.005132c0
mov eax, dword [ebp - 0x1054]
cmp eax, 7
ja case.0x47d137.0
jmp dword [eax*4 + 0x47fcc8]
mov ecx, dword [ebp - 0x1040]
mov eax, str.Mage_Stat
mov dword [ecx], 8
jmp 0x47d175
mov ecx, dword [ebp - 0x1040]
mov eax, str.Crea_Stat
mov dword [ecx], 9
jmp 0x47d175
mov ecx, dword [ebp - 0x1040]
mov eax, str.Phys_Stat
mov dword [ecx], 7
push eax
mov eax, dword [ecx + 4]
lea eax, [eax + eax*2]
lea eax, [eax*4 + str.Wood]
push eax
mov eax, dword [ebp - 0x1014]
add eax, 8
push str._s__s_Totem
push eax
call fcn.0043d370
mov ecx, dword [ebp - 0x1038]
add esp, 0x10
mov esi, dword [ebp - 0x1048]
sub esi, dword [ecx + 8]
mov eax, esi
cdq
xor eax, edx
sub eax, edx
cmp eax, 8
jge 0x47d1dc
lea ecx, [esi + 1]
mov eax, 1
cmp ecx, eax
cmovge eax, ecx
mov ecx, dword [0x62aadc]
imul eax, dword [ecx + 0xa8]
mov ecx, dword [ebp - 0x1038]
cdq
add dword [ecx], eax
adc dword [ecx + 4], edx
mov esi, dword [ebp - 0x1024]
mov eax, dword [ecx + 8]
mov edx, dword [ecx + 0xc]
mov dword [ebp - 0x1018], edx
mov edx, eax
mov dword [ebp - 0x1010], eax
mov eax, dword [ebp - 0x1018]
shld eax, edx, 4
shl edx, 4
sub edx, dword [ebp - 0x1010]
sbb eax, dword [ebp - 0x1018]
shld eax, edx, 1
add edx, edx
cmp eax, dword [ecx + 4]
ja 0x47fc87
jb 0x47d228
cmp edx, dword [ecx]
ja 0x47fc87
mov eax, dword [ebp - 0x1010]
mov edx, dword [ebp - 0x1018]
jmp 0x47cea0
lea eax, [ebp - 0x418]
push str.The_attempt_fails.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x1060]
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 - 0x1038]
jmp 0x47d1e2
push ecx
movss dword [esp], xmm1
push dword [ebp - 0x1030]
push ecx
call fcn.0052da30
mov dword [ebp - 0x101c], eax
add esp, 4
mov eax, dword [ebp - 0x1040]
movd xmm0, dword [eax + 4]
lea eax, [ebp - 0x418]
cvtdq2ps xmm0, xmm0
cvtps2pd xmm0, xmm0
movsd qword [esp], xmm0
push str.Task_difficulty_is__4.2f.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x1060]
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 - 0x1044]
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.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x1060]
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 - 0x1038]
push dword [eax + 8]
mov eax, dword [ebp - 0x1014]
push eax
call fcn.0052daa0
mov ecx, dword [0x62aadc]
add esp, 8
mov ecx, dword [ecx + 0xa8]
imul ecx, eax
mov eax, dword [ebp - 0x1038]
add dword [eax], ecx
adc dword [eax + 4], 0
mov eax, dword [ebp - 0x101c]
sub eax, 0
je 0x47d49c
sub eax, 1
je 0x47d44a
sub eax, 1
jne 0x47d530
lea eax, [ebp - 0x418]
push str.The_attempt_destroys_the_totem.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x1060]
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 - 0x1014]
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e520
mov ecx, dword [ebp - 0x1014]
push 1
mov eax, dword [ecx]
mov eax, dword [eax]
call eax
xor ecx, ecx
mov dword [ebp - 0x1014], ecx
jmp 0x47d536
lea eax, [ebp - 0x418]
push str.The_magic_fails_to_imbue_the_totem.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x1060]
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 0x47d530
lea eax, [ebp - 0x418]
push str.The_magic_infuses_the_totem_
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x1060]
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 - 0x1014]
call fcn.0052dad0
movss xmm0, dword [ebp - 0x1044]
lea eax, [edi + 0x260]
add esp, 4
mov ecx, edi
push eax
mov eax, dword [ebp - 0x1040]
sub esp, 8
movss dword [esp + 4], xmm0
movd xmm0, dword [eax + 4]
cvtdq2ps xmm0, xmm0
movss dword [esp], xmm0
push dword [ebp - 0x1014]
push esi
call fcn.00487f70
mov ecx, dword [ebp - 0x1014]
mov eax, dword [ebp - 0x1040]
xor edx, edx
mov dword [ebp - 0x1018], 0
lea esi, [eax + 0x1c]
nop dword [eax + eax]
test ecx, ecx
je 0x47d57c
movd xmm0, dword [ebp - 0x1018]
inc edx
cvtdq2ps xmm0, xmm0
addss xmm0, dword [esi]
add esi, 4
cvttss2si edi, xmm0
mov dword [ebp - 0x1018], edi
mov edi, dword [ebp - 0x1064]
cmp edx, 9
jl 0x47d550
mov eax, dword [eax + 4]
mov esi, dword [ebp - 0x1024]
add eax, 0xa
cmp dword [ebp - 0x1018], eax
jle 0x47d5fb
test ecx, ecx
je 0x47d5fb
push 0x64
lea eax, [ebp - 0xfc7]
push eax
push 0x400
push str.The_totem_cant_hold_that_much_magic.__It_shatters_
call fcn.0044d1c0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x1060]
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
push dword [ebp - 0x1014]
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e520
mov ecx, dword [ebp - 0x1014]
push 1
mov eax, dword [ecx]
mov eax, dword [eax]
call eax
mov ecx, dword [ebp - 0x1038]
mov edx, dword [ecx + 0xc]
mov eax, dword [ecx + 8]
mov dword [ebp - 0x1010], eax
mov dword [ebp - 0x1018], edx
test edx, edx
ja 0x47fc87
jb 0x47d626
cmp eax, 0x64
jae 0x47fc87
mov edx, eax
mov eax, dword [ebp - 0x1018]
shld eax, edx, 4
shl edx, 4
sub edx, dword [ebp - 0x1010]
sbb eax, dword [ebp - 0x1018]
shld eax, edx, 1
add edx, edx
cmp eax, dword [ecx + 4]
ja 0x47fc87
jb 0x47d65a
cmp edx, dword [ecx]
ja 0x47fc87
mov eax, dword [ebp - 0x1010]
mov edx, dword [ebp - 0x1018]
jmp 0x47cea0
push str.BUG:_Cannot_find_skill_for_magic.
jmp 0x47fc3f
push str.Put_a_totem_in_your_workbench.
jmp 0x47fc3f
push str.No_combining_happened.
jmp 0x47fc3f
xorps xmm0, xmm0
mov dword [ebp - 0x1040], 0
or eax, 0xffffffff
mov dword [ebp - 0x102c], 0
mov dword [ebp - 0x101c], eax
mov dword [ebp - 0x1044], eax
imul eax, dword [edi + 0x188], 0x980
mov dword [ebp - 0x1038], 0
mov dword [ebp - 0x1078], 0
mov dword [ebp - 0x106c], 0
mov dword [ebp - 0x1010], 0
movss dword [ebp - 0x1098], xmm0
movss dword [ebp - 0x1080], xmm0
movss dword [ebp - 0x1028], xmm0
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
mov dword [ebp - 0x1030], 0
mov byte [ebp - 0x1009], 0
mov dword [ebp - 0x1048], 0
mov dword [ebp - 0x1050], 0
mov dword [ebp - 0x107c], 0xffffffff
mov dword [ebp - 0x1054], 0xffffffff
mov byte [ebp - 0x1049], 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.0044e330
mov edx, eax
mov dword [ebp - 0x1014], edx
test edx, edx
je 0x47dc19
nop word [eax + eax]
mov eax, dword [ebp - 0x1050]
mov ecx, str.Scythe_Expertise
mov dword [ebp - 0x103c], eax
lea eax, [edi + 0x260]
nop word [eax + eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x100a], dl
mov edx, dword [ebp - 0x1014]
jne 0x47d822
cmp byte [ebp - 0x100a], 0
je 0x47d81e
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x100a], dl
mov edx, dword [ebp - 0x1014]
jne 0x47d822
add eax, 2
add ecx, 2
cmp byte [ebp - 0x100a], 0
jne 0x47d7e0
xor eax, eax
jmp 0x47d827
sbb eax, eax
or eax, 1
test eax, eax
je 0x47d8b8
cmp dword [edx + 0x110], 8
jne 0x47d8b8
mov eax, dword [edx + 0x11c]
mov ecx, dword [eax]
test ecx, ecx
js 0x47540b
cmp ecx, 0x10
jg 0x47540b
lea eax, [ecx - 5]
cmp eax, 8
ja 0x47d88d
cmp byte [ebp - 0x1009], 0
jne 0x4753cf
cmp dword [edx + 0x118], 1
jne 0x4753cf
inc dword [ebp + ecx*4 - 0xea8]
inc dword [ebp - 0x1030]
mov byte [ebp - 0x1009], 1
jmp 0x47d8b8
mov eax, dword [ebp - 0x1030]
mov esi, dword [edx + 0x118]
add eax, esi
add dword [ebp + ecx*4 - 0xea8], esi
mov dword [ebp - 0x1030], eax
cmp ecx, 0xe
jne 0x47d8b8
add eax, esi
lea eax, [eax + esi*2]
mov dword [ebp - 0x1030], eax
mov ecx, str.Scythe_Expertise
lea eax, [edi + 0x260]
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x100a], dl
mov edx, dword [ebp - 0x1014]
jne 0x47d905
cmp byte [ebp - 0x100a], 0
je 0x47d901
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x100a], dl
mov edx, dword [ebp - 0x1014]
jne 0x47d905
add eax, 2
add ecx, 2
cmp byte [ebp - 0x100a], 0
jne 0x47d8c3
xor eax, eax
jmp 0x47d90a
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47da02
cmp dword [edx + 0x110], 0xe
jne 0x47da02
mov eax, dword [ebp - 0x1054]
mov ecx, dword [edx + 0x11c]
test eax, eax
js 0x47d938
cmp dword [ecx + 4], eax
jne 0x47dc8b
mov esi, dword [ecx + 8]
mov al, byte [ebp - 0x1049]
test esi, esi
jle 0x47d956
test al, al
jne 0x47d956
cmp dword [ebp - 0x1048], 0
jg 0x47dcc7
movss xmm0, dword [ecx + 0x34]
comiss xmm0, dword [0x5cf054]
jbe 0x47d96c
test esi, esi
jg 0x47dd03
cmp esi, 1
jge 0x47d979
test al, al
jne 0x47dcc7
mov eax, dword [ebp - 0x107c]
cmp eax, 0xffffffff
jle 0x47d98c
cmp dword [ecx], eax
jne 0x47dd3f
test esi, esi
jle 0x47d9dc
cmp dword [ecx], 0xd
jl 0x47dd7b
mov edi, dword [ecx + 4]
mov ecx, dword [ecx]
mov eax, dword [edx + 0x118]
add dword [ebp - 0x1048], eax
mov dword [ebp - 0x107c], ecx
mov ecx, esi
mov esi, dword [edx + 0x110]
imul ecx, eax
mov dword [ebp - 0x1054], edi
mov edi, dword [ebp - 0x1064]
mov byte [ebp - 0x1049], 1
add ecx, dword [ebp - 0x103c]
mov dword [ebp - 0x1050], ecx
jmp 0x47da25
mov eax, dword [ecx + 4]
mov dword [ebp - 0x1054], eax
mov eax, dword [ecx]
mov dword [ebp - 0x107c], eax
mov eax, dword [edx + 0x118]
add dword [ebp - 0x1048], eax
imul esi, eax
add dword [ebp - 0x1050], esi
mov esi, dword [edx + 0x110]
cmp esi, 1
jne 0x47da25
mov eax, dword [ebp - 0x1038]
add eax, dword [edx + 0x118]
mov dword [ebp - 0x1038], eax
mov dword [ebp - 0x102c], edx
mov ecx, str.Scythe_Expertise
lea eax, [edi + 0x260]
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x100a], dl
mov edx, dword [ebp - 0x1014]
jne 0x47da72
cmp byte [ebp - 0x100a], 0
je 0x47da6e
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x100a], dl
mov edx, dword [ebp - 0x1014]
jne 0x47da72
add eax, 2
add ecx, 2
cmp byte [ebp - 0x100a], 0
jne 0x47da30
xor eax, eax
jmp 0x47da77
sbb eax, eax
or eax, 1
test eax, eax
je 0x47dbea
cmp esi, 4
jne 0x47dbea
mov ecx, dword [edx + 0x118]
mov eax, 0x20
mov esi, dword [edx + 0x11c]
cmp ecx, 0x20
mov dword [ebp - 0x103c], esi
cmovg ecx, eax
add dword [ebp - 0x1040], ecx
mov eax, dword [esi]
imul eax, ecx
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
mov dword [ebp - 0x1034], ecx
add dword [ebp - 0x1078], eax
mov eax, dword [esi + 4]
imul eax, ecx
movaps xmm0, xmm1
mulss xmm0, dword [esi + 0x10]
add dword [ebp - 0x106c], eax
addss xmm0, dword [ebp - 0x1028]
mov eax, dword [esi + 8]
imul eax, ecx
movss dword [ebp - 0x1028], 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 - 0x1098]
addss xmm1, dword [ebp - 0x1080]
movss dword [ebp - 0x1098], xmm0
movss dword [ebp - 0x1080], xmm1
mov eax, esi
shl eax, 6
mov dword [ebp - 0x1074], eax
mov eax, dword [ebp + esi*4 - 0xf60]
test eax, eax
jle 0x47dba0
mov ecx, edx
call fcn.0044ccd0
mov ecx, dword [ebp - 0x1074]
lea ecx, [ebp + ecx - 0x918]
nop
mov dl, byte [ecx]
cmp dl, byte [eax]
jne 0x47db70
test dl, dl
je 0x47db6c
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x47db70
add ecx, 2
add eax, 2
test dl, dl
jne 0x47db50
xor eax, eax
jmp 0x47db75
sbb eax, eax
or eax, 1
mov ecx, dword [ebp - 0x1034]
mov edx, dword [ebp - 0x1014]
test eax, eax
jne 0x47dba2
mov eax, dword [ebp - 0x103c]
mov dword [ebp + esi*4 - 0xf60], ecx
cvttss2si eax, dword [eax + 0x10]
mov dword [ebp + eax*4 - 0xe6c], ecx
jmp 0x47dba2
je 0x47dbae
inc esi
cmp esi, 0x14
jl 0x47db25
jmp 0x47dbea
mov dword [ebp + esi*4 - 0xf60], ecx
mov ecx, edx
call fcn.0044ccd0
push eax
lea eax, [ebp - 0x918]
add eax, dword [ebp - 0x1074]
push eax
call fcn.0043d370
mov eax, dword [ebp - 0x103c]
add esp, 8
mov ecx, dword [ebp - 0x1034]
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, 4
call fcn.0044e3e0
mov edx, eax
mov dword [ebp - 0x1014], eax
test edx, edx
jne 0x47d7c0
mov esi, dword [ebp - 0x1024]
xor eax, eax
mov dword [ebp - 0x103c], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e0]
add ecx, 4
call fcn.0044e330
mov dword [ebp - 0x1074], eax
test eax, eax
je 0x47fc3a
mov esi, eax
nop word [eax + eax]
mov ecx, esi
call fcn.0044ccd0
mov ecx, 0x5d1ab4
nop dword [eax]
mov dl, byte [ecx]
cmp dl, byte [eax]
jne 0x47ddb7
test dl, dl
je 0x47dc84
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x47ddb7
add ecx, 2
add eax, 2
test dl, dl
jne 0x47dc60
xor eax, eax
jmp 0x47ddbc
lea eax, [ebp - 0x418]
push str.You_can_only_have_one_quality_of_staff_when_making_a_scythe.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov eax, dword [ebp - 0x1024]
mov ecx, dword [eax + 0x11c]
jmp 0x47fc6b
lea eax, [ebp - 0x418]
push str.Cant_mix_imbued_and_unimbued_staffs.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov eax, dword [ebp - 0x1024]
mov ecx, dword [eax + 0x11c]
jmp 0x47fc6b
lea eax, [ebp - 0x418]
push str.Cant_use_an_imperfect_staff.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov eax, dword [ebp - 0x1024]
mov ecx, dword [eax + 0x11c]
jmp 0x47fc6b
lea eax, [ebp - 0x418]
push str.Cant_mix_different_imbued_staffs.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov eax, dword [ebp - 0x1024]
mov ecx, dword [eax + 0x11c]
jmp 0x47fc6b
lea eax, [ebp - 0x418]
push str.Only_taming_staffs_may_be_used_inbued.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov eax, dword [ebp - 0x1024]
mov ecx, dword [eax + 0x11c]
jmp 0x47fc6b
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47ddcc
mov eax, dword [esi + 0x11c]
mov dword [ebp - 0x103c], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e0]
add ecx, 4
call fcn.0044e3e0
mov esi, eax
test esi, esi
jne 0x47dc50
mov eax, dword [ebp - 0x103c]
mov esi, dword [ebp - 0x1024]
test eax, eax
je 0x47fc3a
cmp dword [eax + 0xc], 0
ja 0x47de1b
jb 0x47de11
cmp dword [eax + 8], 0x14
jae 0x47de1b
push str.You_must_first_reach_level_20_in_your_Swordsmith_skill.
jmp 0x47fc3f
mov eax, dword [ebp - 0x102c]
test eax, eax
je 0x47fc33
cmp dword [ebp - 0x1038], 1
jl 0x47fc33
mov eax, dword [eax + 0x11c]
mov dword [ebp - 0x103c], eax
cmp dword [eax + 0x3c], 0
jne 0x47fc33
movss xmm0, dword [0x5cfff8]
comiss xmm0, dword [eax + 8]
jbe 0x47de64
push str.The_sacrifical_blade_is_not_big_enough.
jmp 0x47fc3f
mov ecx, str.Scythe_Expertise
lea eax, [edi + 0x260]
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x47de90
test dl, dl
je 0x47de8c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x47de90
add eax, 2
add ecx, 2
test dl, dl
jne 0x47de70
xor eax, eax
jmp 0x47de95
sbb eax, eax
or eax, 1
mov dword [ebp - 0x1038], 2
mov dword [ebp - 0x1074], 3
mov dword [ebp - 0x1034], 4
test eax, eax
jne 0x47e10e
mov ecx, dword [ebp - 0x102c]
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 - 0x1044], edx
mov edx, dword [ebp - 0x103c]
mov esi, dword [ebp - 0x1044]
mov dword [ebp - 0x103c], 5
mov eax, dword [edx + 0x48]
cmp eax, ecx
cmovge esi, dword [ebp - 0x1038]
cmovl eax, ecx
mov ecx, dword [edx + 0x4c]
cmp ecx, eax
cmovge esi, dword [ebp - 0x1074]
cmovl ecx, eax
mov eax, dword [edx + 0x50]
cmp eax, ecx
cmovge esi, dword [ebp - 0x1034]
cmovl eax, ecx
mov ecx, dword [edx + 0x54]
cmp ecx, eax
cmovge esi, dword [ebp - 0x103c]
cmovl ecx, eax
mov eax, dword [edx + 0x58]
cmp eax, ecx
mov dword [ebp - 0x103c], 6
cmovge esi, dword [ebp - 0x103c]
cmovl eax, ecx
mov ecx, dword [edx + 0x5c]
cmp ecx, eax
mov edx, dword [edx + 0x60]
cmovl ecx, eax
mov dword [ebp - 0x103c], 7
cmovge esi, dword [ebp - 0x103c]
cmp edx, ecx
mov dword [ebp - 0x1044], esi
mov esi, 8
mov eax, dword [ebp - 0x1044]
cmovl edx, ecx
cmovge eax, esi
mov dword [ebp - 0x103c], 0xa
mov dword [ebp - 0x1044], eax
mov esi, 9
mov eax, dword [ebp - 0x102c]
mov ecx, dword [eax + 0x11c]
mov eax, dword [ecx + 0x64]
cmp eax, edx
mov ecx, dword [ebp - 0x1044]
cmovge ecx, esi
cmovl eax, edx
mov dword [ebp - 0x1044], ecx
mov ecx, dword [ebp - 0x102c]
mov esi, dword [ebp - 0x1044]
mov edx, dword [ecx + 0x11c]
mov ecx, dword [edx + 0x68]
cmp ecx, eax
cmovge esi, dword [ebp - 0x103c]
cmovl ecx, eax
mov eax, dword [edx + 0x6c]
cmp eax, ecx
mov dword [ebp - 0x103c], 0xb
cmovge esi, dword [ebp - 0x103c]
cmovl eax, ecx
mov ecx, dword [edx + 0x70]
cmp ecx, eax
mov edx, dword [edx + 0x74]
mov dword [ebp - 0x103c], 0xc
cmovl ecx, eax
cmovge esi, dword [ebp - 0x103c]
cmp edx, ecx
mov dword [ebp - 0x1044], esi
mov esi, 0xd
mov eax, dword [ebp - 0x1044]
cmovl edx, ecx
cmovge eax, esi
mov dword [ebp - 0x103c], 0xe
mov dword [ebp - 0x1044], eax
mov eax, dword [ebp - 0x102c]
mov esi, dword [ebp - 0x1044]
mov ecx, dword [eax + 0x11c]
mov eax, dword [ecx + 0x78]
cmp eax, edx
cmovge esi, dword [ebp - 0x103c]
cmovl eax, edx
mov dword [ebp - 0x1044], esi
mov esi, dword [ebp - 0x1024]
cmp eax, 0x40
jge 0x47e07c
push str.The_sacrifical_blade_is_not_a_proper_greatsword.
jmp 0x47fc3f
mov edx, dword [ebp - 0x1050]
test edx, edx
jle 0x47e0a2
cmp dword [ecx + 0x34], 1
jge 0x47e096
push str.The_sacrifical_blade_does_not_have_any_Gold_Dust.
jmp 0x47fc3f
mov eax, dword [ebp - 0x107c]
mov dword [ebp - 0x101c], eax
mov ecx, dword [ebp - 0x1054]
lea eax, [edx + edx]
test edx, edx
cmovle eax, edx
mov edx, dword [ebp - 0x1040]
mov dword [ebp - 0x1050], 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 - 0x1048]
imul edx, eax
mov dword [ebp - 0x1040], edx
mov ecx, str.Scythe_Expertise
lea eax, [edi + 0x260]
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x47e140
test dl, dl
je 0x47e13c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x47e140
add eax, 2
add ecx, 2
test dl, dl
jne 0x47e120
xor eax, eax
jmp 0x47e145
sbb eax, eax
or eax, 1
movss xmm1, dword [0x5d1110]
test eax, eax
jne 0x47e17d
mov eax, dword [ebp - 0x1044]
movss xmm0, dword [0x5cf058]
inc eax
imul eax, dword [ebp - 0x1040]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
comiss xmm0, xmm1
jbe 0x47e1b8
push str.Please_use_both_a_staff_and_a_greatsword.
jmp 0x47fc3f
mov eax, dword [ebp - 0x1040]
cmp eax, 0x20
jle 0x47e1b0
add eax, 0xffffffe0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm1, xmm0
addss xmm1, dword [0x5cf058]
mulss xmm1, dword [ebp - 0x1028]
addss xmm1, dword [ebp - 0x1028]
jmp 0x47e1b8
movss xmm1, dword [ebp - 0x1028]
movd xmm0, dword [ebp - 0x1030]
lea eax, [edi + 0x260]
movaps xmm2, xmm1
mov dword [ebp - 0x1030], 0xffffffff
divss xmm2, dword [0x5cfe68]
xor esi, esi
mov dword [ebp - 0x1034], 0xffffffff
xor edx, edx
mov ecx, str.Scythe_Expertise
cvtdq2ps xmm0, xmm0
mulss xmm2, xmm0
addss xmm2, xmm1
movss dword [ebp - 0x1048], xmm2
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x100a], dl
mov edx, esi
jne 0x47e239
cmp byte [ebp - 0x100a], dl
je 0x47e235
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x100a], dl
mov edx, esi
jne 0x47e239
add eax, 2
add ecx, 2
cmp byte [ebp - 0x100a], dl
jne 0x47e201
xor eax, eax
jmp 0x47e23e
sbb eax, eax
or eax, 1
test eax, eax
je 0x47e337
mov edx, 2
lea ecx, [ebp - 0xf5c]
mov dword [ebp - 0x1028], edx
mov dword [ebp - 0x1014], ecx
nop dword [eax]
mov edi, dword [ecx - 4]
lea eax, [edx - 2]
cmp esi, edi
cmovge eax, dword [ebp - 0x1030]
cmovge edi, esi
mov dword [ebp - 0x1074], edi
mov edi, dword [ecx]
mov ecx, dword [ebp - 0x1014]
mov dword [ebp - 0x103c], eax
mov eax, dword [ebp - 0x1074]
cmp eax, edi
jge 0x47e299
dec edx
cmp eax, edi
mov dword [ebp - 0x103c], edx
mov ecx, dword [ecx + 4]
cmovge edi, eax
mov eax, dword [ebp - 0x1014]
cmp edi, ecx
mov esi, ecx
mov dword [ebp - 0x1074], 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 - 0x1030], eax
cmp dword [ebp - 0x1074], ecx
mov eax, dword [ebp - 0x1028]
cmovge eax, dword [ebp - 0x103c]
mov ecx, dword [ebp - 0x1028]
inc ecx
cmp esi, edx
mov edx, dword [ebp - 0x1028]
mov esi, dword [ebp - 0x1030]
cmovge ecx, eax
cmp edi, esi
lea eax, [edx + 2]
cmovge eax, ecx
mov ecx, dword [ebp - 0x1014]
add edx, 5
mov dword [ebp - 0x1030], eax
add ecx, 0x14
mov dword [ebp - 0x1028], edx
cmp edi, esi
mov dword [ebp - 0x1014], ecx
lea eax, [edx - 2]
cmovge esi, edi
cmp eax, 0x14
jl 0x47e260
mov edi, dword [ebp - 0x1064]
xor edx, edx
mov eax, dword [ebp - 0x1030]
jmp 0x47e343
mov eax, dword [ebp - 0x1044]
mov dword [ebp - 0x1030], eax
test eax, eax
jns 0x47e383
lea eax, [ebp - 0x418]
push str.Use_ingots_to_make_weapons.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov eax, dword [ebp - 0x1024]
mov ecx, dword [eax + 0x11c]
jmp 0x47fc6b
lea esi, [edi + 0x260]
mov ecx, str.Scythe_Expertise
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x100a], dl
mov edx, 0
jne 0x47e3ce
cmp byte [ebp - 0x100a], dl
je 0x47e3ca
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x100a], dl
mov edx, 0
jne 0x47e3ce
add eax, 2
add ecx, 2
cmp byte [ebp - 0x100a], dl
jne 0x47e390
xor eax, eax
jmp 0x47e3d3
sbb eax, eax
or eax, 1
test eax, eax
je 0x47e4ab
mov ecx, dword [ebp - 0x1030]
mov edi, 2
mov dword [ebp + ecx*4 - 0xf60], 0
lea ecx, [ebp - 0xf5c]
mov dword [ebp - 0x1028], ecx
nop dword [eax]
mov esi, dword [ecx - 4]
cmp edx, esi
mov ecx, dword [ecx]
cmovge esi, edx
mov dword [ebp - 0x103c], esi
lea esi, [edi - 2]
cmovge esi, dword [ebp - 0x1034]
mov eax, dword [ebp - 0x103c]
cmp eax, ecx
jge 0x47e427
lea esi, [edi - 1]
cmovge ecx, eax
mov eax, dword [ebp - 0x1028]
mov edx, dword [eax + 4]
cmp ecx, edx
cmovge edx, ecx
cmovl esi, edi
mov dword [ebp - 0x103c], esi
lea ecx, [edi + 2]
mov esi, dword [eax + 8]
cmp edx, esi
mov eax, dword [eax + 0xc]
cmovge esi, edx
mov dword [ebp - 0x1074], eax
mov edx, dword [ebp - 0x1074]
lea eax, [edi + 1]
cmovge eax, dword [ebp - 0x103c]
cmp esi, edx
cmovge ecx, eax
add edi, 5
mov dword [ebp - 0x1034], ecx
mov ecx, dword [ebp - 0x1028]
add ecx, 0x14
cmp esi, edx
lea eax, [edi - 2]
mov dword [ebp - 0x1028], ecx
cmovge edx, esi
cmp eax, 0x14
jl 0x47e400
mov eax, dword [ebp - 0x1034]
mov edi, dword [ebp - 0x1064]
mov esi, dword [ebp - 0x1018]
mov dword [ebp - 0x1034], eax
imul eax, dword [edi + 0x188], 0x980
mov dword [ebp - 0x1028], 0
mov ecx, dword [eax + edi + 0x2e0]
add ecx, 4
call fcn.0044e330
mov dword [ebp - 0x103c], eax
test eax, eax
je 0x47fbfa
nop dword [eax]
mov ecx, eax
call fcn.0044ccd0
mov ecx, esi
nop dword [eax]
mov dl, byte [ecx]
cmp dl, byte [eax]
jne 0x47e510
test dl, dl
je 0x47e50c
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x47e510
add ecx, 2
add eax, 2
test dl, dl
jne 0x47e4f0
xor eax, eax
jmp 0x47e515
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47e52b
mov eax, dword [ebp - 0x103c]
mov eax, dword [eax + 0x11c]
mov dword [ebp - 0x1028], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e0]
add ecx, 4
call fcn.0044e3e0
mov dword [ebp - 0x103c], eax
test eax, eax
jne 0x47e4e0
mov esi, dword [ebp - 0x1028]
test esi, esi
je 0x47fbfa
call fcn.00565cd7
mov ecx, edi
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x5d3330]
divss xmm0, dword [0x5cf5d0]
addss xmm0, dword [0x5d3300]
movss dword [ebp - 0x103c], xmm0
call fcn.004805a0
push dword [esi + 0xc]
cdq
push dword [esi + 8]
push edx
push eax
call fcn.00557850
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.00556a60
mov esi, dword [ebp - 0x1024]
mov ecx, 0x62b580
cvtsd2ss xmm0, xmm0
push esi
push 1
mulss xmm0, dword [ebp - 0x103c]
movss dword [ebp - 0x1014], xmm0
call fcn.0052d960
test eax, eax
je 0x47e618
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.0052e430
test eax, eax
je 0x47e618
movss xmm0, dword [ebp - 0x1014]
mulss xmm0, dword [0x5d3318]
movss dword [ebp - 0x1014], xmm0
push esi
push 0
mov ecx, 0x62b580
call fcn.0052d960
test eax, eax
je 0x47e65e
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.0052e430
test eax, eax
je 0x47e65e
movss xmm0, dword [ebp - 0x1014]
mulss xmm0, dword [0x5d3318]
movss dword [ebp - 0x1014], xmm0
push esi
push 2
mov ecx, 0x62b580
call fcn.0052d960
test eax, eax
je 0x47e6a6
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.0052e430
movss xmm1, dword [ebp - 0x1014]
test eax, eax
je 0x47e6ae
mulss xmm1, dword [0x5d3318]
movss dword [ebp - 0x1014], xmm1
jmp 0x47e6ae
movss xmm1, dword [ebp - 0x1014]
mov eax, dword [edi + 0x14f38]
test eax, eax
jle 0x47e6db
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x5d32f0]
addss xmm0, dword [0x5cf058]
mulss xmm0, xmm1
movss dword [ebp - 0x1014], xmm0
movss xmm0, dword [ebp - 0x1048]
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.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x1060]
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 - 0x1014]
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.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x1060]
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 - 0x1014]
mov ecx, dword [ecx + edi + 0x2dc]
add ecx, 4
comiss xmm0, dword [ebp - 0x1048]
jb 0x47f94d
call fcn.0044e330
mov esi, eax
test esi, esi
je 0x47e8c4
mov ecx, str.Scythe_Expertise
lea eax, [edi + 0x260]
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x47e800
test dl, dl
je 0x47e7fc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x47e800
add eax, 2
add ecx, 2
test dl, dl
jne 0x47e7e0
xor eax, eax
jmp 0x47e805
sbb eax, eax
or eax, 1
mov ecx, dword [esi + 0x110]
test eax, eax
je 0x47e874
cmp ecx, 4
jne 0x47e849
mov eax, dword [esi + 0x118]
cmp eax, 0x20
jle 0x47e82d
add eax, 0xffffffe0
mov dword [esi + 0x118], eax
jmp 0x47e8a1
imul eax, dword [edi + 0x188], 0x980
push esi
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e520
jmp 0x47e897
cmp ecx, 8
jne 0x47e8a1
mov ecx, dword [esi + 0x118]
cmp ecx, 1
jle 0x47e82d
mov eax, dword [esi + 0x11c]
mov eax, dword [eax]
sub eax, 5
cmp eax, 8
ja 0x47e82d
lea eax, [ecx - 1]
mov dword [esi + 0x118], eax
jmp 0x47e8a1
cmp ecx, 0xe
jne 0x47e8a1
imul eax, dword [edi + 0x188], 0x980
push esi
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e520
test esi, esi
je 0x47e8a1
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, 4
call fcn.0044e3e0
mov esi, eax
test esi, esi
jne 0x47e7d3
mov esi, dword [ebp - 0x1018]
mov ecx, str.Scythe_Expertise
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x47e8f1
test dl, dl
je 0x47e8ed
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x47e8f1
add eax, 2
add ecx, 2
test dl, dl
jne 0x47e8d1
xor eax, eax
jmp 0x47e8f6
sbb eax, eax
or eax, 1
test eax, eax
je 0x47e98f
mov eax, dword [ebp - 0x1030]
lea edi, [ebp - 0x918]
shl eax, 6
lea ecx, [ebp - 0x418]
add eax, edi
mov edi, dword [ebp - 0x1034]
cmp edi, 0xffffffff
jle 0x47e97b
push ecx
push 0x5ce428
push eax
call fcn.0043dd00
lea ecx, [ebp - 0x418]
add esp, 0xc
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x47e938
sub ecx, edx
lea eax, [ebp - 0x418]
add eax, ecx
push str.__WXZQPNS
push eax
call fcn.0043d370
lea ecx, [ebp - 0x418]
add esp, 8
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x47e960
sub ecx, edx
shl edi, 6
lea eax, [ebp - 0x918]
add eax, edi
lea ecx, [ebp + ecx - 0x418]
push ecx
push 0x5ce428
push eax
call fcn.0043dd00
add esp, 0xc
jmp 0x47ea2c
lea eax, [ebp - 0x418]
push eax
imul eax, dword [ebp - 0x1030], 0x13
push 0x5ce428
add eax, 0x60d298
push eax
call fcn.0043dd00
mov edi, dword [ebp - 0x101c]
add esp, 0xc
test edi, edi
jle 0x47ea18
lea ecx, [ebp - 0x418]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x47e9c3
sub ecx, edx
lea eax, [ebp - 0x418]
add eax, ecx
push 0x5d1dbc
push eax
call fcn.0043d370
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 0x47e9f0
mov eax, edi
sub ecx, edx
shl eax, 4
lea eax, [eax + str.Fire]
add eax, edi
push eax
lea eax, [ebp - 0x418]
add eax, ecx
push eax
call fcn.0043d370
add esp, 8
mov eax, dword [ebp - 0x107c]
cmp eax, 0xc
jle 0x47ea2c
sub eax, 6
mov dword [ebp - 0x107c], eax
lea ecx, [ebp - 0x418]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x47ea35
sub ecx, edx
lea eax, [ebp - 0x418]
add eax, ecx
push 0x5d1dbc
push eax
call fcn.0043d370
add esp, 8
mov ecx, str.Scythe_Expertise
mov eax, esi
nop dword [eax + eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x47ea80
test dl, dl
je 0x47ea7c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x47ea80
add eax, 2
add ecx, 2
test dl, dl
jne 0x47ea60
xor eax, eax
jmp 0x47ea85
sbb eax, eax
or eax, 1
test eax, eax
je 0x47eaca
mov edx, dword [ebp - 0x1040]
xor ecx, ecx
lea eax, [ecx + ecx*8]
cmp dword [eax*8 + 0x60cc00], edx
jg 0x47eaa9
mov eax, 3
inc ecx
cmp ecx, eax
jl 0x47ea91
jmp 0x47eaac
lea eax, [ecx - 1]
xor edx, edx
test eax, eax
cmovns edx, eax
mov dword [ebp - 0x1038], edx
cmp edx, 2
jle 0x47ead6
mov dword [ebp - 0x1038], 2
jmp 0x47ead6
mov edx, dword [ebp - 0x1054]
mov dword [ebp - 0x1038], edx
mov ecx, 0x5d1ad4
mov eax, esi
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x100a], dl
mov edx, dword [ebp - 0x1038]
jne 0x47eb22
cmp byte [ebp - 0x100a], 0
je 0x47eb1e
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x100a], dl
mov edx, dword [ebp - 0x1038]
jne 0x47eb22
add eax, 2
add ecx, 2
cmp byte [ebp - 0x100a], 0
jne 0x47eae0
xor eax, eax
jmp 0x47eb27
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47eb4a
lea ecx, [ebp - 0x418]
lea edi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x47eb34
lea eax, [edx + edx*8]
lea eax, [eax*8 + str.Tanto]
jmp 0x47ed81
mov ecx, 0x5d1b20
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x100a], dl
mov edx, dword [ebp - 0x1038]
jne 0x47eb93
cmp byte [ebp - 0x100a], 0
je 0x47eb8f
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x100a], dl
mov edx, dword [ebp - 0x1038]
jne 0x47eb93
add eax, 2
add ecx, 2
cmp byte [ebp - 0x100a], 0
jne 0x47eb51
xor eax, eax
jmp 0x47eb98
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47ebbb
lea ecx, [ebp - 0x418]
lea edi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x47eba5
lea eax, [edx + edx*8]
lea eax, [eax*8 + str.Talon]
jmp 0x47ed81
mov ecx, 0x5d1ae8
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x100a], dl
mov edx, dword [ebp - 0x1038]
jne 0x47ec04
cmp byte [ebp - 0x100a], 0
je 0x47ec00
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x100a], dl
mov edx, dword [ebp - 0x1038]
jne 0x47ec04
add eax, 2
add ecx, 2
cmp byte [ebp - 0x100a], 0
jne 0x47ebc2
xor eax, eax
jmp 0x47ec09
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47ec2c
lea ecx, [ebp - 0x418]
lea edi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x47ec16
lea eax, [edx + edx*8]
lea eax, [eax*8 + str.Chaos_Knife]
jmp 0x47ed81
mov ecx, 0x5d1b08
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x100a], dl
mov edx, dword [ebp - 0x1038]
jne 0x47ec75
cmp byte [ebp - 0x100a], 0
je 0x47ec71
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x100a], dl
mov edx, dword [ebp - 0x1038]
jne 0x47ec75
add eax, 2
add ecx, 2
cmp byte [ebp - 0x100a], 0
jne 0x47ec33
xor eax, eax
jmp 0x47ec7a
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47ec9d
lea ecx, [ebp - 0x418]
lea edi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x47ec87
lea eax, [edx + edx*8]
lea eax, [eax*8 + str.Edgestaff]
jmp 0x47ed81
mov ecx, 0x5d1af8
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x100a], dl
mov edx, dword [ebp - 0x1038]
jne 0x47ece6
cmp byte [ebp - 0x100a], 0
je 0x47ece2
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x100a], dl
mov edx, dword [ebp - 0x1038]
jne 0x47ece6
add eax, 2
add ecx, 2
cmp byte [ebp - 0x100a], 0
jne 0x47eca4
xor eax, eax
jmp 0x47eceb
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47ed0e
lea ecx, [ebp - 0x418]
lea edi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x47ecf8
lea eax, [edx + edx*8]
lea eax, [eax*8 + str.Small_Mace]
jmp 0x47ed81
mov ecx, str.Scythe_Expertise
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x100a], dl
mov edx, dword [ebp - 0x1038]
jne 0x47ed57
cmp byte [ebp - 0x100a], 0
je 0x47ed53
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x100a], dl
mov edx, dword [ebp - 0x1038]
jne 0x47ed57
add eax, 2
add ecx, 2
cmp byte [ebp - 0x100a], 0
jne 0x47ed15
xor eax, eax
jmp 0x47ed5c
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47ed95
lea ecx, [ebp - 0x418]
lea edi, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x47ed70
lea eax, [edx + edx*8]
lea eax, [eax*8 + str.Pine_Scythe]
push eax
sub ecx, edi
lea eax, [ebp - 0x418]
add eax, ecx
push eax
call fcn.0043d370
add esp, 8
push 0x120
call fcn.00556676
add esp, 4
mov dword [ebp - 0x101c], eax
mov byte [ebp - 4], 2
test eax, eax
je 0x47edc4
lea ecx, [ebp - 0x418]
push ecx
push 0
push 1
mov ecx, eax
call fcn.0050b040
jmp 0x47edc6
xor eax, eax
mov edi, dword [eax + 0x11c]
mov ecx, str.Scythe_Expertise
mov dword [ebp - 0x1034], eax
mov eax, esi
mov byte [ebp - 4], 0
mov dword [ebp - 0x1030], edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x47ee03
test dl, dl
je 0x47edff
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x47ee03
add eax, 2
add ecx, 2
test dl, dl
jne 0x47ede3
xor eax, eax
jmp 0x47ee08
sbb eax, eax
or eax, 1
test eax, eax
je 0x47ee5d
mov eax, dword [ebp - 0x1038]
movd xmm0, dword [ebp - 0x1040]
cvtdq2ps xmm0, xmm0
lea eax, [eax + eax*8]
movd xmm1, dword [eax*8 + 0x60cc04]
cvtdq2ps xmm1, xmm1
mov eax, dword [ebp - 0x102c]
mulss xmm1, dword [ebp - 0x1098]
divss xmm1, xmm0
mulss xmm1, dword [0x5cf5bc]
cvttss2si ecx, xmm1
mov dword [edi], ecx
mov eax, dword [eax + 0x11c]
mov eax, dword [eax]
cdq
sub eax, edx
sar eax, 1
add eax, ecx
jmp 0x47ee6b
mov eax, dword [ebp - 0x102c]
mov eax, dword [eax + 0x11c]
mov eax, dword [eax]
mov ecx, edi
mov dword [ecx], eax
mov eax, dword [ebp - 0x102c]
movsd xmm2, qword [0x5cf060]
mov eax, dword [eax + 0x11c]
mov eax, dword [eax + 4]
add eax, dword [ebp - 0xea4]
mov dword [edi + 4], eax
mov eax, dword [ebp - 0x1040]
add eax, 0x20
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x5d1114]
cvtps2pd xmm0, xmm0
addsd xmm0, xmm2
cvtpd2ps xmm1, xmm0
comiss xmm1, dword [0x5cfe68]
movss dword [edi + 8], xmm1
movaps xmm0, xmm1
jbe 0x47ef33
mov ecx, str.Scythe_Expertise
mov eax, esi
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x47eef0
test dl, dl
je 0x47eeec
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x47eef0
add eax, 2
add ecx, 2
test dl, dl
jne 0x47eed0
xor eax, eax
jmp 0x47eef5
sbb eax, eax
or eax, 1
movaps xmm0, xmm1
test eax, eax
jne 0x47ef33
mulss xmm1, dword [0x5d1110]
cvttss2si eax, xmm1
movss xmm1, dword [0x5d33a0]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm0, dword [0x5cf084]
comiss xmm0, xmm1
movss dword [edi + 8], xmm0
jbe 0x47ef33
mov dword [edi + 8], 0x41c80000
movaps xmm0, xmm1
mov ecx, str.Scythe_Expertise
mov eax, esi
nop word [eax + eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x47ef60
test dl, dl
je 0x47ef5c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x47ef60
add eax, 2
add ecx, 2
test dl, dl
jne 0x47ef40
xor eax, eax
jmp 0x47ef65
sbb eax, eax
or eax, 1
test eax, eax
je 0x47ef76
mulss xmm0, dword [0x5d3308]
movss dword [edi + 8], xmm0
mov ecx, str.Scythe_Expertise
mov eax, esi
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x47efa0
test dl, dl
je 0x47ef9c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x47efa0
add eax, 2
add ecx, 2
test dl, dl
jne 0x47ef80
xor eax, eax
jmp 0x47efa5
sbb eax, eax
or eax, 1
test eax, eax
je 0x47f0c3
mov ecx, dword [ebp - 0x102c]
mov eax, dword [ecx + 0x11c]
mov eax, dword [eax + 0x40]
add eax, dword [ebp - 0xe68]
mov dword [edi + 0x40], eax
mov eax, dword [ecx + 0x11c]
mov eax, dword [eax + 0x44]
add eax, dword [ebp - 0xe64]
mov dword [edi + 0x44], eax
mov eax, dword [ecx + 0x11c]
mov eax, dword [eax + 0x48]
add eax, dword [ebp - 0xe60]
mov dword [edi + 0x48], eax
mov eax, dword [ecx + 0x11c]
mov eax, dword [eax + 0x4c]
add eax, dword [ebp - 0xe5c]
mov dword [edi + 0x4c], eax
mov eax, dword [ecx + 0x11c]
mov eax, dword [eax + 0x50]
add eax, dword [ebp - 0xe58]
mov dword [edi + 0x50], eax
mov eax, dword [ecx + 0x11c]
mov eax, dword [eax + 0x54]
add eax, dword [ebp - 0xe54]
mov dword [edi + 0x54], eax
mov eax, dword [ecx + 0x11c]
mov eax, dword [eax + 0x58]
add eax, dword [ebp - 0xe50]
mov dword [edi + 0x58], eax
mov eax, dword [ecx + 0x11c]
mov eax, dword [eax + 0x5c]
add eax, dword [ebp - 0xe4c]
mov dword [edi + 0x5c], eax
mov eax, dword [ecx + 0x11c]
mov eax, dword [eax + 0x60]
add eax, dword [ebp - 0xe48]
mov dword [edi + 0x60], eax
mov eax, dword [ecx + 0x11c]
mov eax, dword [eax + 0x64]
add eax, dword [ebp - 0xe44]
mov dword [edi + 0x64], eax
mov eax, dword [ecx + 0x11c]
mov eax, dword [eax + 0x68]
add eax, dword [ebp - 0xe40]
mov dword [edi + 0x68], eax
mov eax, dword [ecx + 0x11c]
mov eax, dword [eax + 0x6c]
add eax, dword [ebp - 0xe3c]
mov dword [edi + 0x6c], eax
mov eax, dword [ecx + 0x11c]
mov eax, dword [eax + 0x70]
add eax, dword [ebp - 0xe38]
mov dword [edi + 0x70], eax
mov eax, dword [ecx + 0x11c]
mov eax, dword [eax + 0x74]
add eax, dword [ebp - 0xe34]
mov dword [edi + 0x74], eax
mov eax, dword [ecx + 0x11c]
mov eax, dword [eax + 0x78]
add eax, dword [ebp - 0xe30]
jmp 0x47f2c1
mov eax, dword [ebp - 0x1054]
test eax, eax
jne 0x47f0d2
lea ecx, [eax + 1]
jmp 0x47f10b
cmp eax, 1
jne 0x47f0dc
lea ecx, [eax + 1]
jmp 0x47f10b
cmp eax, 2
jne 0x47f0e6
lea ecx, [eax + 2]
jmp 0x47f10b
cmp eax, 3
jne 0x47f0f0
lea ecx, [eax + 5]
jmp 0x47f10b
cmp eax, 4
jne 0x47f0fa
lea ecx, [eax + 0xc]
jmp 0x47f10b
mov ecx, dword [ebp - 0x101c]
cmp eax, 5
mov eax, 0x20
cmove ecx, eax
mov eax, dword [ebp - 0x1044]
test eax, eax
jne 0x47f12e
mov eax, dword [ebp - 0x102c]
mov eax, dword [eax + 0x11c]
mov eax, dword [eax + 0x40]
add eax, ecx
mov dword [edi + 0x40], eax
jmp 0x47f2c4
cmp eax, 1
jne 0x47f14c
mov eax, dword [ebp - 0x102c]
mov eax, dword [eax + 0x11c]
mov eax, dword [eax + 0x44]
add eax, ecx
mov dword [edi + 0x44], eax
jmp 0x47f2c4
cmp eax, 2
jne 0x47f16a
mov eax, dword [ebp - 0x102c]
mov eax, dword [eax + 0x11c]
mov eax, dword [eax + 0x48]
add eax, ecx
mov dword [edi + 0x48], eax
jmp 0x47f2c4
cmp eax, 3
jne 0x47f188
mov eax, dword [ebp - 0x102c]
mov eax, dword [eax + 0x11c]
mov eax, dword [eax + 0x4c]
add eax, ecx
mov dword [edi + 0x4c], eax
jmp 0x47f2c4
cmp eax, 4
jne 0x47f1a6
mov eax, dword [ebp - 0x102c]
mov eax, dword [eax + 0x11c]
mov eax, dword [eax + 0x50]
add eax, ecx
mov dword [edi + 0x50], eax
jmp 0x47f2c4
cmp eax, 5
jne 0x47f1c4
mov eax, dword [ebp - 0x102c]
mov eax, dword [eax + 0x11c]
mov eax, dword [eax + 0x54]
add eax, ecx
mov dword [edi + 0x54], eax
jmp 0x47f2c4
cmp eax, 6
jne 0x47f1e2
mov eax, dword [ebp - 0x102c]
mov eax, dword [eax + 0x11c]
mov eax, dword [eax + 0x58]
add eax, ecx
mov dword [edi + 0x58], eax
jmp 0x47f2c4
cmp eax, 7
jne 0x47f200
mov eax, dword [ebp - 0x102c]
mov eax, dword [eax + 0x11c]
mov eax, dword [eax + 0x5c]
add eax, ecx
mov dword [edi + 0x5c], eax
jmp 0x47f2c4
cmp eax, 8
jne 0x47f21e
mov eax, dword [ebp - 0x102c]
mov eax, dword [eax + 0x11c]
mov eax, dword [eax + 0x60]
add eax, ecx
mov dword [edi + 0x60], eax
jmp 0x47f2c4
cmp eax, 9
jne 0x47f23c
mov eax, dword [ebp - 0x102c]
mov eax, dword [eax + 0x11c]
mov eax, dword [eax + 0x64]
add eax, ecx
mov dword [edi + 0x64], eax
jmp 0x47f2c4
cmp eax, 0xa
jne 0x47f25a
mov eax, dword [ebp - 0x102c]
mov eax, dword [eax + 0x11c]
mov eax, dword [eax + 0x68]
add eax, ecx
mov dword [edi + 0x68], eax
jmp 0x47f2c4
cmp eax, 0xb
jne 0x47f275
mov eax, dword [ebp - 0x102c]
mov eax, dword [eax + 0x11c]
mov eax, dword [eax + 0x6c]
add eax, ecx
mov dword [edi + 0x6c], eax
jmp 0x47f2c4
cmp eax, 0xc
jne 0x47f290
mov eax, dword [ebp - 0x102c]
mov eax, dword [eax + 0x11c]
mov eax, dword [eax + 0x70]
add eax, ecx
mov dword [edi + 0x70], eax
jmp 0x47f2c4
cmp eax, 0xd
jne 0x47f2ab
mov eax, dword [ebp - 0x102c]
mov eax, dword [eax + 0x11c]
mov eax, dword [eax + 0x74]
add eax, ecx
mov dword [edi + 0x74], eax
jmp 0x47f2c4
cmp eax, 0xe
jne 0x47f2c4
mov eax, dword [ebp - 0x102c]
mov eax, dword [eax + 0x11c]
mov eax, dword [eax + 0x78]
add eax, ecx
mov dword [edi + 0x78], eax
mov eax, dword [ebp - 0x102c]
mov ecx, 0x55f0
mov eax, dword [eax + 0x11c]
mov eax, dword [eax + 0x38]
cmp eax, ecx
cmovg eax, ecx
mov ecx, str.Scythe_Expertise
mov dword [ebp - 0x101c], eax
mov eax, esi
nop word [eax + eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x47f310
test dl, dl
je 0x47f30c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x47f310
add eax, 2
add ecx, 2
test dl, dl
jne 0x47f2f0
xor eax, eax
jmp 0x47f315
sbb eax, eax
or eax, 1
test eax, eax
je 0x47f343
movd xmm1, dword [ebp - 0x101c]
cvtdq2pd xmm1, xmm1
movd xmm0, dword [edi]
divsd xmm1, qword [0x5d3390]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
mulsd xmm1, xmm0
cvttsd2si eax, xmm1
mov dword [edi], eax
mov ecx, 0x5d1ad4
mov eax, esi
nop word [eax + eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x47f370
test dl, dl
je 0x47f36c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x47f370
add eax, 2
add ecx, 2
test dl, dl
jne 0x47f350
xor eax, eax
jmp 0x47f375
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47f389
mov dword [edi + 0x3c], 1
add dword [edi + 4], 0x14
jmp 0x47f4ca
mov ecx, 0x5d1b20
mov eax, esi
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
test eax, eax
jne 0x47f3c5
mov dword [edi + 0x3c], 4
jmp 0x47f4ca
mov ecx, 0x5d1ae8
mov eax, esi
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x47f3f0
test dl, dl
je 0x47f3ec
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x47f3f0
add eax, 2
add ecx, 2
test dl, dl
jne 0x47f3d0
xor eax, eax
jmp 0x47f3f5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47f405
mov dword [edi + 0x3c], 3
jmp 0x47f4ca
mov ecx, 0x5d1b08
mov eax, esi
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x47f430
test dl, dl
je 0x47f42c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x47f430
add eax, 2
add ecx, 2
test dl, dl
jne 0x47f410
xor eax, eax
jmp 0x47f435
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47f445
mov dword [edi + 0x3c], 5
jmp 0x47f4ca
mov ecx, str.Scythe_Expertise
mov eax, esi
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x47f470
test dl, dl
je 0x47f46c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x47f470
add eax, 2
add ecx, 2
test dl, dl
jne 0x47f450
xor eax, eax
jmp 0x47f475
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47f490
mov eax, dword [ebp - 0x107c]
add eax, 6
mov dword [edi + 0x3c], eax
mov eax, dword [ebp - 0x1050]
mov dword [edi + 0x38], eax
jmp 0x47f4ca
mov ecx, 0x5d1af8
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x47f4b7
test dl, dl
je 0x47f4b3
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x47f4b7
add eax, 2
add ecx, 2
test dl, dl
jne 0x47f497
xor eax, eax
jmp 0x47f4bc
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47f4ca
mov dword [edi + 0x3c], 2
add dword [edi], 0x1e
movss xmm0, dword [ebp - 0x1080]
mov eax, dword [ebp - 0x1034]
mulss xmm0, dword [0x5d332c]
mov ecx, dword [ebp - 0x102c]
movss dword [eax + 0x10c], xmm0
addss xmm0, dword [ecx + 0x10c]
mov ecx, dword [ebp - 0x1040]
movss dword [eax + 0x10c], xmm0
mov eax, dword [ebp - 0x1078]
cdq
idiv ecx
mov dword [edi + 0x10], eax
mov eax, dword [ebp - 0x106c]
cdq
idiv ecx
mov dword [edi + 0x14], eax
mov eax, dword [ebp - 0x1010]
cdq
idiv ecx
mov ecx, str.Scythe_Expertise
mov dword [edi + 0x18], eax
mov eax, esi
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x47f550
test dl, dl
je 0x47f54c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x47f550
add eax, 2
add ecx, 2
test dl, dl
jne 0x47f530
xor eax, eax
jmp 0x47f555
sbb eax, eax
or eax, 1
mov edx, dword [ebp - 0x102c]
test eax, eax
jne 0x47f583
mov eax, dword [edx + 0x11c]
mov eax, dword [eax + 0x10]
mov dword [edi + 0x10], eax
mov eax, dword [edx + 0x11c]
mov eax, dword [eax + 0x14]
mov dword [edi + 0x14], eax
mov eax, dword [edx + 0x11c]
mov eax, dword [eax + 0x18]
mov dword [edi + 0x18], eax
mov eax, dword [edx + 0x11c]
mov dword [ebp - 0x101c], 0xffffffff
mov esi, dword [eax + 0x20]
add esi, dword [ebp - 0xea0]
mov dword [edi + 0x20], esi
mov eax, dword [edx + 0x11c]
mov edx, dword [eax + 0x2c]
add edx, dword [ebp - 0xea8]
mov eax, dword [ebp - 0x102c]
mov dword [edi + 0x2c], edx
mov eax, dword [eax + 0x11c]
mov edi, dword [eax + 0x28]
add edi, dword [ebp - 0xe98]
mov eax, dword [ebp - 0x1030]
mov dword [eax + 0x28], edi
mov eax, dword [ebp - 0x102c]
mov eax, dword [eax + 0x11c]
mov ecx, dword [eax + 0x24]
mov eax, dword [ebp - 0xe9c]
add eax, ecx
mov ecx, dword [ebp - 0x1030]
mov dword [ebp - 0x103c], eax
mov dword [ecx + 0x24], eax
mov eax, dword [ebp - 0x102c]
mov eax, dword [eax + 0x11c]
mov eax, dword [eax + 0x30]
add eax, dword [ebp - 0xe6c]
mov dword [ecx + 0x30], eax
mov eax, dword [ebp - 0x102c]
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 - 0x101c]
mov dword [ebp - 0x1038], esi
xor esi, esi
cmp edx, eax
mov eax, 4
cmovle esi, dword [ebp - 0x1038]
cmp edi, ecx
cmovg esi, eax
cmovle edi, ecx
mov ecx, dword [ebp - 0x103c]
mov eax, 3
cmp ecx, edi
cmovg esi, eax
cmovle ecx, edi
mov eax, dword [ebp - 0x102c]
mov eax, dword [eax + 0x11c]
mov eax, dword [eax + 4]
add eax, dword [ebp - 0xea4]
cmp eax, ecx
jg case.0x47f6a3.1
mov eax, ecx
cmp esi, 0xffffffff
jle 0x47f731
mov edi, eax
cmp esi, 4
ja case.0x47f6a3.1
jmp dword [esi*4 + 0x47fce8]
mov ecx, dword [ebp - 0x1030]
mov edx, 0x11
mov eax, edi
mov dword [ecx + 0x1c], 0x11
jmp 0x47f714
mov ecx, dword [ebp - 0x1030]
mov edx, 0x15
mov eax, edi
mov dword [ecx + 0x1c], 0x15
jmp 0x47f714
mov ecx, dword [ebp - 0x1030]
mov edx, 9
mov eax, edi
mov dword [ecx + 0x1c], 9
jmp 0x47f714
mov ecx, dword [ebp - 0x1030]
mov edx, 0xd
mov eax, edi
mov dword [ecx + 0x1c], 0xd
jmp 0x47f714
mov ecx, dword [ebp - 0x1030]
mov edx, 1
mov dword [ecx + 0x1c], 1
cmp eax, 1
jle 0x47f71d
inc edx
mov dword [ecx + 0x1c], edx
cmp eax, 4
jle 0x47f726
inc edx
mov dword [ecx + 0x1c], edx
cmp eax, 9
jle 0x47f731
lea eax, [edx + 1]
mov dword [ecx + 0x1c], eax
mov eax, 5
cmp dword [ebp + eax*4 - 0xea8], 0
jg 0x47f74b
inc eax
or ecx, 0xffffffff
cmp eax, 0xd
jle 0x47f736
jmp 0x47f74e
lea ecx, [eax - 5]
mov esi, dword [ebp - 0x1030]
cmp ecx, 0xffffffff
jle 0x47f772
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 - 0x1018]
mov ecx, str.Scythe_Expertise
mov eax, edi
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x47f7a0
test dl, dl
je 0x47f79c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x47f7a0
add eax, 2
add ecx, 2
test dl, dl
jne 0x47f780
xor eax, eax
jmp 0x47f7a5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47f7c0
mov eax, dword [ebp - 0x102c]
mov eax, dword [eax + 0x11c]
mov eax, dword [eax + 0x1c]
cmp eax, 0x19
jl 0x47f7c0
mov dword [esi + 0x1c], eax
lea eax, [ebp - 0x418]
push str.You_have_created_a
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov esi, dword [ebp - 0x1024]
lea edx, [ebp - 0x1060]
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 - 0x1034]
call fcn.0044ccd0
push eax
lea eax, [ebp - 0x418]
push 0x5d1dd4
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x1060]
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 - 0x1014]
push edi
mov edi, dword [ebp - 0x1064]
sub esp, 8
mov ecx, edi
movss dword [esp + 4], xmm0
movss xmm0, dword [ebp - 0x1048]
movss dword [esp], xmm0
push dword [ebp - 0x1034]
push esi
call fcn.00487590
imul ecx, dword [edi + 0x188], 0x980
push dword [ebp - 0x1034]
mov ecx, dword [ecx + edi + 0x2d8]
call fcn.0050b900
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e330
mov esi, eax
test esi, esi
je 0x47fa5f
nop
cmp dword [esi + 0x110], 1
jne 0x47f929
cmp dword [ebp - 0x102c], esi
jne 0x47f929
mov eax, dword [esi + 0x118]
cmp eax, 1
jne 0x47f922
imul eax, dword [edi + 0x188], 0x980
push esi
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e520
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
jmp 0x47f929
dec eax
mov dword [esi + 0x118], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e3e0
mov esi, eax
test esi, esi
jne 0x47f8e0
jmp 0x47fa5f
call fcn.0044e330
mov esi, eax
test esi, esi
je 0x47fa5f
movss xmm0, dword [ebp - 0x1014]
divss xmm0, dword [ebp - 0x1048]
movss dword [ebp - 0x101c], xmm0
call fcn.00565cd7
movd xmm0, eax
cvtdq2ps xmm0, xmm0
divss xmm0, dword [0x5cf5d0]
addss xmm0, dword [0x5cf054]
comiss xmm0, dword [ebp - 0x101c]
jbe 0x47fa3c
mov eax, dword [esi + 0x110]
cmp eax, 4
je 0x47f9fb
cmp eax, 8
jne 0x47fa3c
mov eax, dword [esi + 0x11c]
mov eax, dword [eax]
cmp eax, 5
jl 0x47f9fb
add eax, 0xfffffffb
cmp eax, 0xa
ja 0x47fa3c
call fcn.00565cd7
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x5cfe68]
divss xmm0, dword [0x5cf5d0]
addss xmm0, dword [0x5cf054]
ucomiss xmm0, dword [0x5cf068]
lahf
test ah, 0x44
jp 0x47fa3c
cmp dword [esi + 0x110], 1
je 0x47fa3c
mov eax, dword [esi + 0x118]
cmp eax, 1
jle 0x47fa18
dec eax
mov dword [esi + 0x118], eax
jmp 0x47fa3c
imul eax, dword [edi + 0x188], 0x980
push esi
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 4
call fcn.0044e520
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, 4
call fcn.0044e3e0
mov esi, eax
test esi, esi
jne 0x47f974
mov ecx, dword [ebp - 0x1028]
mov eax, dword [ecx + 0xc]
mov esi, dword [ecx + 8]
mov dword [ebp - 0x1010], esi
mov dword [ebp - 0x1074], eax
test eax, eax
ja 0x47fc87
jb 0x47fa8d
cmp esi, 0x5dc
jae 0x47fc87
movss xmm1, dword [ebp - 0x1014]
movaps xmm0, xmm1
movss xmm2, dword [ebp - 0x1048]
divss xmm0, dword [0x5d33a8]
comiss xmm2, xmm0
jbe 0x47fc87
mov eax, dword [0x62aadc]
mov edx, dword [ecx + 4]
mov ecx, dword [ecx]
movd xmm0, dword [eax + 0x98]
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
movss dword [ebp - 0x101c], xmm0
call fcn.00556a60
movss xmm1, dword [ebp - 0x101c]
cvtsd2ss xmm0, xmm0
addss xmm1, xmm0
xorps xmm0, xmm0
movlpd qword [ebp - 0x1070], xmm0
movss xmm0, dword [0x5d33cc]
comiss xmm1, xmm0
jb 0x47fb2a
subss xmm1, xmm0
comiss xmm0, xmm1
jbe 0x47fb2a
mov eax, dword [ebp - 0x1070]
add eax, 0
mov dword [ebp - 0x101c], eax
mov eax, dword [ebp - 0x106c]
adc eax, 0x80000000
mov dword [ebp - 0x103c], eax
jmp 0x47fb42
mov eax, dword [ebp - 0x106c]
mov dword [ebp - 0x103c], eax
mov eax, dword [ebp - 0x1070]
mov dword [ebp - 0x101c], eax
movaps xmm0, xmm1
call fcn.005567e0
mov ecx, dword [ebp - 0x1028]
mov edi, edx
add eax, dword [ebp - 0x101c]
mov dword [ebp - 0x101c], eax
adc edi, dword [ebp - 0x103c]
mov dword [ecx], eax
mov eax, dword [ebp - 0x1074]
push eax
push esi
push eax
push esi
mov dword [ecx + 4], edi
call fcn.00557850
mov ecx, eax
mov esi, 0xbb8
mov eax, edx
mul esi
mov esi, eax
mov eax, ecx
mov ecx, 0xbb8
mul ecx
add esi, edx
cmp esi, edi
ja 0x47fc87
jb 0x47fba6
cmp eax, dword [ebp - 0x101c]
ja 0x47fc87
mov edx, dword [ebp - 0x1028]
mov eax, dword [ebp - 0x1010]
mov ecx, dword [ebp - 0x1074]
add eax, 1
push str.You_gained_a_skill_level__
mov dword [edx + 8], eax
adc ecx, 0
lea eax, [ebp - 0x418]
mov dword [edx + 0xc], ecx
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov edi, dword [ebp - 0x1064]
jmp 0x47a42f
lea eax, [ebp - 0x418]
push str.BUG:_Cannot_find_skill_for_level.
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov eax, dword [ebp - 0x1024]
mov ecx, dword [eax + 0x11c]
jmp 0x47fc6b
push str.You_must_sacrifice_one_blade_to_make_this.
jmp 0x47fc3f
push str.You_must_first_learn_to_create_swords.
lea eax, [ebp - 0x418]
push eax
call fcn.0043d370
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044d1c0
mov ecx, dword [esi + 0x11c]
add esp, 0x18
mov eax, dword [ecx]
lea edx, [ebp - 0x1060]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
lea ecx, [ebp - 0x1060]
call fcn.00472a40
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.005566b4
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret 4