Function at 0x4701c0
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 0x5c1e57
mov eax, dword fs:[0]
push eax
push ebx
mov eax, 0x10c8
call fcn.00556d30
mov eax, dword [0x6287a8]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 0x106c], edi
mov esi, dword [ebx + 8]
mov dword [ebp - 0x1028], esi
mov dword [ebp - 0x105c], 0
mov dword [ebp - 0x1058], 0
mov dword [ebp - 0x1054], 0
mov ecx, dword [edi + 0x180]
mov eax, ecx
sar eax, 8
mov byte [ebp - 0x1017], al
mov eax, ecx
sar eax, 0x10
mov byte [ebp - 0x1018], cl
sar ecx, 0x18
mov byte [ebp - 0x1016], al
lea eax, [ebp - 0x1018]
mov byte [ebp - 0x1015], cl
lea ecx, [ebp - 0x105c]
push eax
mov dword [ebp - 4], 0
mov byte [ebp - 0x1014], 0
call fcn.0048da20
lea eax, [edi + 0x260]
mov byte [ebp - 0xfc8], 0x17
mov dword [ebp - 0x102c], eax
mov ecx, 0x5d2518
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4702b7
test dl, dl
je 0x4702b3
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4702b7
add eax, 2
add ecx, 2
test dl, dl
jne 0x470297
xor eax, eax
jmp 0x4702bc
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4716b5
xorps xmm0, xmm0
mov byte [ebp - 0x1045], al
imul eax, dword [edi + 0x188], 0x980
xor esi, esi
mov dword [ebp - 0x1024], esi
mov dword [ebp - 0x104c], esi
mov dword [ebp - 0x102c], esi
mov dword [ebp - 0x1030], esi
movss dword [ebp - 0x1034], xmm0
movss dword [ebp - 0x107c], xmm0
movss dword [ebp - 0x1044], xmm0
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
mov dword [ebp - 0x1040], esi
movups xmmword [ebp - 0xea8], xmm0
movups xmmword [ebp - 0xe98], xmm0
movups xmmword [ebp - 0xe88], xmm0
movups xmmword [ebp - 0xe78], xmm0
movups xmmword [ebp - 0xf00], xmm0
movups xmmword [ebp - 0xef0], xmm0
movups xmmword [ebp - 0xee0], xmm0
movups xmmword [ebp - 0xed0], xmm0
movups xmmword [ebp - 0xec0], xmm0
movups xmmword [ebp - 0xe68], xmm0
movups xmmword [ebp - 0xe58], xmm0
movups xmmword [ebp - 0xe48], xmm0
movups xmmword [ebp - 0xe38], xmm0
movups xmmword [ebp - 0xe28], xmm0
call fcn.0044e020
mov edx, eax
mov dword [ebp - 0x1038], edx
test edx, edx
je 0x47067f
mov eax, dword [edx + 0x110]
cmp eax, 8
jne 0x470427
mov eax, dword [edx + 0x11c]
mov ecx, dword [eax]
test ecx, ecx
js 0x470643
cmp ecx, 0x10
jg 0x470643
lea eax, [ecx - 5]
cmp eax, 8
ja 0x4703f3
cmp byte [ebp - 0x1045], 0
jne 0x470607
cmp dword [edx + 0x118], 1
jne 0x470607
inc dword [ebp + ecx*4 - 0xea8]
inc dword [ebp - 0x1040]
mov byte [ebp - 0x1045], 1
jmp 0x4705a0
mov eax, dword [ebp - 0x1040]
mov edx, dword [edx + 0x118]
add eax, edx
add dword [ebp + ecx*4 - 0xea8], edx
mov dword [ebp - 0x1040], eax
cmp ecx, 0xe
jne 0x4705a0
add eax, edx
lea eax, [eax + edx*2]
mov dword [ebp - 0x1040], eax
jmp 0x4705a0
cmp eax, 4
jne 0x4705a0
mov ecx, dword [edx + 0x118]
mov eax, 0x40
cmp ecx, 0x40
cmovg ecx, eax
add esi, ecx
mov dword [ebp - 0x1020], ecx
mov dword [ebp - 0x1024], esi
mov esi, dword [edx + 0x11c]
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
mov dword [ebp - 0x1074], esi
mov eax, dword [esi]
imul eax, ecx
movaps xmm0, xmm1
mulss xmm0, dword [esi + 0x10]
add dword [ebp - 0x104c], eax
addss xmm0, dword [ebp - 0x1044]
mov eax, dword [esi + 4]
imul eax, ecx
movss dword [ebp - 0x1044], xmm0
movaps xmm0, xmm1
mulss xmm0, dword [esi + 0xc]
add dword [ebp - 0x102c], eax
mulss xmm1, dword [edx + 0x10c]
mov eax, dword [esi + 8]
addss xmm0, dword [ebp - 0x1034]
imul eax, ecx
addss xmm1, dword [ebp - 0x107c]
movss dword [ebp - 0x1034], xmm0
add dword [ebp - 0x1030], eax
xor esi, esi
movss dword [ebp - 0x107c], xmm1
nop
mov edx, dword [ebp + esi*4 - 0xf00]
mov eax, esi
shl eax, 6
mov dword [ebp - 0x1010], eax
test edx, edx
jle 0x47054a
mov ecx, dword [ebp - 0x1038]
call fcn.0044c8e0
mov ecx, eax
mov eax, dword [ebp - 0x1010]
lea eax, [ebp + eax - 0xe18]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x470520
test dl, dl
je 0x47051c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x470520
add eax, 2
add ecx, 2
test dl, dl
jne 0x470500
xor eax, eax
jmp 0x470525
sbb eax, eax
or eax, 1
mov ecx, dword [ebp - 0x1020]
test eax, eax
jne 0x47054c
mov eax, dword [ebp - 0x1074]
mov dword [ebp + esi*4 - 0xf00], ecx
cvttss2si eax, dword [eax + 0x10]
mov dword [ebp + eax*4 - 0xe6c], ecx
jmp 0x47054c
je 0x470558
inc esi
cmp esi, 0x14
jl 0x4704d0
jmp 0x47059a
mov dword [ebp + esi*4 - 0xf00], ecx
mov ecx, dword [ebp - 0x1038]
call fcn.0044c8e0
push eax
mov eax, dword [ebp - 0x1010]
lea ecx, [ebp - 0xe18]
add eax, ecx
push eax
call fcn.0043d360
mov eax, dword [ebp - 0x1074]
add esp, 8
mov ecx, dword [ebp - 0x1020]
cvttss2si eax, dword [eax + 0x10]
mov dword [ebp + eax*4 - 0xe6c], ecx
mov esi, dword [ebp - 0x1024]
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e0d0
mov edx, eax
mov dword [ebp - 0x1038], eax
test edx, edx
jne 0x470390
mov ecx, dword [ebp - 0x1024]
movss xmm2, dword [ebp - 0x1044]
cmp ecx, 0x40
jle 0x470689
lea eax, [ecx - 0x40]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x5d1b6c]
addss xmm0, dword [0x5d0048]
mulss xmm0, xmm2
addss xmm2, xmm0
jmp 0x470689
lea eax, [ebp - 0x418]
push str.You_can_only_have_one_shard_in_your_workbench_when_you_craft.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov eax, dword [ebp - 0x1028]
mov ecx, dword [eax + 0x11c]
jmp 0x47b54a
lea eax, [ebp - 0x418]
push str.Ingredient_type_out_of_bounds___Please_report_this_bug.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov eax, dword [ebp - 0x1028]
mov ecx, dword [eax + 0x11c]
jmp 0x47b54a
movss xmm2, dword [ebp - 0x1044]
xor ecx, ecx
movd xmm0, dword [ebp - 0x1040]
movaps xmm1, xmm2
divss xmm1, dword [0x5d0bd8]
mov edi, dword [ebp - 0x104c]
xor edx, edx
xor esi, esi
mov dword [ebp - 0x1050], 0xffffffff
mov dword [ebp - 0x1010], edx
mov dword [ebp - 0x1038], esi
cvtdq2ps xmm0, xmm0
mulss xmm1, xmm0
movss xmm0, dword [ebp - 0x107c]
addss xmm1, xmm2
movss dword [ebp - 0x1044], xmm1
movss xmm1, dword [ebp - 0x1034]
nop
mov eax, dword [ebp - 0x1030]
mov dword [ebp - 0x1030], eax
mov eax, dword [ebp - 0x102c]
mov dword [ebp - 0x102c], eax
mov dword [ebp - 0x1024], ecx
mov ecx, dword [ebp + esi*4 - 0xf00]
mov eax, ecx
mov esi, dword [ebp + esi*4 - 0xefc]
cmp edx, ecx
mov dword [ebp - 0x104c], edi
mov edi, esi
cmovge eax, edx
cmp eax, esi
mov dword [ebp - 0x1014], eax
cmovge edi, eax
mov eax, dword [ebp - 0x1038]
mov edx, dword [ebp + eax*4 - 0xef8]
cmp edi, edx
cmovge edx, edi
cmp dword [ebp - 0x1010], ecx
mov ecx, dword [ebp - 0x1038]
mov dword [ebp - 0x1020], edx
mov edx, dword [ebp + eax*4 - 0xef4]
cmovge eax, dword [ebp - 0x1050]
inc ecx
cmp dword [ebp - 0x1014], esi
mov esi, dword [ebp - 0x1038]
cmovge ecx, eax
mov dword [ebp - 0x1064], edx
cmp edi, dword [ebp + esi*4 - 0xef8]
lea eax, [esi + 2]
mov edi, dword [ebp - 0x104c]
cmovge eax, ecx
mov dword [ebp - 0x1010], eax
mov eax, edx
mov edx, dword [ebp - 0x1020]
cmp edx, eax
jge 0x4707c8
mov edx, dword [ebp - 0x102c]
lea ecx, [esi + 3]
mov dword [ebp - 0x102c], edx
mov edx, dword [ebp - 0x1030]
mov dword [ebp - 0x1010], ecx
mov ecx, dword [ebp - 0x1024]
mov dword [ebp - 0x1030], edx
mov edx, dword [ebp - 0x1020]
cmp edx, eax
mov dword [ebp - 0x1024], ecx
cmovge eax, edx
lea ecx, [esi + 4]
mov edx, dword [ebp + esi*4 - 0xef0]
cmp eax, edx
cmovge ecx, dword [ebp - 0x1010]
add esi, 5
cmp eax, edx
mov dword [ebp - 0x1050], ecx
mov ecx, dword [ebp - 0x1024]
cmovge edx, eax
mov dword [ebp - 0x1038], esi
mov dword [ebp - 0x1010], edx
cmp esi, 0x14
jl 0x4706e0
mov eax, dword [ebp - 0x1050]
test eax, eax
jns 0x47084d
lea eax, [ebp - 0x418]
push str.Use_ingots_to_make_blades.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov eax, dword [ebp - 0x1028]
mov ecx, dword [eax + 0x11c]
jmp 0x47b54a
xor edx, edx
mov dword [ebp + eax*4 - 0xf00], 0
xor esi, esi
mov dword [ebp - 0x101c], 0xffffffff
mov dword [ebp - 0x1010], edx
mov dword [ebp - 0x1038], esi
mov eax, dword [ebp - 0x1030]
mov dword [ebp - 0x1030], eax
mov eax, dword [ebp - 0x102c]
mov dword [ebp - 0x102c], eax
mov dword [ebp - 0x1024], ecx
mov ecx, dword [ebp + esi*4 - 0xf00]
mov eax, ecx
mov esi, dword [ebp + esi*4 - 0xefc]
cmp edx, ecx
mov dword [ebp - 0x104c], edi
mov edi, esi
cmovge eax, edx
cmp eax, esi
mov dword [ebp - 0x1014], eax
cmovge edi, eax
mov eax, dword [ebp - 0x1038]
mov edx, dword [ebp + eax*4 - 0xef8]
cmp edi, edx
cmovge edx, edi
cmp dword [ebp - 0x1010], ecx
mov ecx, dword [ebp - 0x1038]
mov dword [ebp - 0x1020], edx
mov edx, dword [ebp + eax*4 - 0xef4]
cmovge eax, dword [ebp - 0x101c]
inc ecx
cmp dword [ebp - 0x1014], esi
mov esi, dword [ebp - 0x1038]
cmovge ecx, eax
mov dword [ebp - 0x1064], edx
cmp edi, dword [ebp + esi*4 - 0xef8]
lea eax, [esi + 2]
mov edi, dword [ebp - 0x104c]
cmovge eax, ecx
mov dword [ebp - 0x1010], eax
mov eax, edx
mov edx, dword [ebp - 0x1020]
cmp edx, eax
jge 0x470960
mov edx, dword [ebp - 0x102c]
lea ecx, [esi + 3]
mov dword [ebp - 0x102c], edx
mov edx, dword [ebp - 0x1030]
mov dword [ebp - 0x1010], ecx
mov ecx, dword [ebp - 0x1024]
mov dword [ebp - 0x1030], edx
mov edx, dword [ebp - 0x1020]
cmp edx, eax
mov dword [ebp - 0x1024], ecx
mov dword [ebp - 0x104c], edi
cmovge eax, edx
lea ecx, [esi + 4]
mov edx, dword [ebp + esi*4 - 0xef0]
cmp eax, edx
cmovge ecx, dword [ebp - 0x1010]
add esi, 5
cmp eax, edx
mov dword [ebp - 0x101c], ecx
mov ecx, dword [ebp - 0x1024]
cmovge edx, eax
mov dword [ebp - 0x1038], esi
mov dword [ebp - 0x1010], edx
cmp esi, 0x14
jl 0x470872
mov edi, dword [ebp - 0x106c]
xor esi, esi
movss dword [ebp - 0x1034], xmm1
movss dword [ebp - 0x107c], xmm0
mov dword [ebp - 0x1040], esi
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e0]
add ecx, 8
call fcn.0044e020
mov esi, eax
test esi, esi
je 0x471679
mov ecx, esi
call fcn.0044c8e0
mov ecx, eax
lea eax, [edi + 0x260]
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x470a10
test dl, dl
je 0x470a0c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x470a10
add eax, 2
add ecx, 2
test dl, dl
jne 0x4709f0
xor eax, eax
jmp 0x470a15
sbb eax, eax
or eax, 1
test eax, eax
jne 0x470a25
mov eax, dword [esi + 0x11c]
mov dword [ebp - 0x1040], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e0]
add ecx, 8
call fcn.0044e0d0
mov esi, eax
test esi, esi
jne 0x4709e0
mov esi, dword [ebp - 0x1040]
test esi, esi
je 0x471679
call fcn.00565b3a
mov ecx, edi
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x5d3dd0]
divss xmm0, dword [0x5d3e8c]
addss xmm0, dword [0x5d3d9c]
movss dword [ebp - 0x1014], xmm0
call fcn.0047bec0
push dword [esi + 0xc]
cdq
push dword [esi + 8]
push edx
push eax
call fcn.005575c0
mov ecx, eax
call fcn.00556830
mov esi, dword [ebp - 0x1028]
mov ecx, 0x62d4e8
cvtsd2ss xmm0, xmm0
push esi
push 1
mulss xmm0, dword [ebp - 0x1014]
movss dword [ebp - 0x103c], xmm0
call fcn.0052e910
test eax, eax
je 0x470afa
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.0052f3e0
test eax, eax
je 0x470afa
movss xmm0, dword [ebp - 0x103c]
mulss xmm0, dword [0x5d3db4]
movss dword [ebp - 0x103c], xmm0
push esi
push 0
mov ecx, 0x62d4e8
call fcn.0052e910
test eax, eax
je 0x470b40
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.0052f3e0
test eax, eax
je 0x470b40
movss xmm0, dword [ebp - 0x103c]
mulss xmm0, dword [0x5d3db4]
movss dword [ebp - 0x103c], xmm0
push esi
push 2
mov ecx, 0x62d4e8
call fcn.0052e910
test eax, eax
je 0x470b88
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.0052f3e0
movss xmm1, dword [ebp - 0x103c]
test eax, eax
je 0x470b90
mulss xmm1, dword [0x5d3db4]
movss dword [ebp - 0x103c], xmm1
jmp 0x470b90
movss xmm1, dword [ebp - 0x103c]
mov eax, dword [edi + 0x14f60]
test eax, eax
jle 0x470bbd
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x5d3d8c]
addss xmm0, dword [0x5d0048]
mulss xmm0, xmm1
movss dword [ebp - 0x103c], xmm0
movss xmm0, dword [ebp - 0x1044]
lea eax, [ebp - 0x418]
cvtps2pd xmm0, xmm0
sub esp, 8
movsd qword [esp], xmm0
push str.Task_difficulty_is__4.2f.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x20
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
movss xmm0, dword [ebp - 0x103c]
lea eax, [ebp - 0x418]
cvtps2pd xmm0, xmm0
sub esp, 8
movsd qword [esp], xmm0
push str.Your_work_value_was__4.2f.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x20
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
imul ecx, dword [edi + 0x188], 0x980
movss xmm0, dword [ebp - 0x103c]
mov ecx, dword [ecx + edi + 0x2dc]
add ecx, 8
comiss xmm0, dword [ebp - 0x1044]
jb 0x47128c
mov byte [ebp - 0x1045], 0
call fcn.0044e020
mov esi, eax
test esi, esi
je 0x470d86
nop dword [eax]
mov eax, dword [esi + 0x110]
cmp eax, 4
jne 0x470ce4
mov eax, dword [esi + 0x118]
cmp eax, 0x40
jle 0x470d3f
add eax, 0xffffffc0
mov dword [esi + 0x118], eax
jmp 0x470d63
cmp eax, 8
jne 0x470d63
mov edx, dword [esi + 0x118]
mov cl, byte [ebp - 0x1045]
cmp edx, 1
jle 0x470d24
mov eax, dword [esi + 0x11c]
mov eax, dword [eax]
sub eax, 5
cmp eax, 8
ja 0x470d24
test cl, cl
jne 0x470d24
lea eax, [edx - 1]
mov byte [ebp - 0x1045], 1
mov dword [esi + 0x118], eax
jmp 0x470d63
mov eax, dword [esi + 0x11c]
mov eax, dword [eax]
sub eax, 5
cmp eax, 8
ja 0x470d3f
test cl, cl
jne 0x470d63
mov byte [ebp - 0x1045], 1
imul eax, dword [edi + 0x188], 0x980
push esi
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e210
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e0d0
mov esi, eax
test esi, esi
jne 0x470cc0
mov eax, dword [ebp - 0x1050]
lea esi, [ebp - 0xe18]
shl eax, 6
lea ecx, [ebp - 0x418]
add eax, esi
mov esi, dword [ebp - 0x101c]
cmp esi, 0xffffffff
jle 0x470e03
push ecx
push 0x5d00e0
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 0x470dc0
sub ecx, edx
lea eax, [ebp - 0x418]
add eax, ecx
push str.__WXZQPNS
push eax
call fcn.0043d360
lea ecx, [ebp - 0x418]
add esp, 8
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x470de8
sub ecx, edx
shl esi, 6
lea eax, [ebp - 0xe18]
add eax, esi
lea ecx, [ebp + ecx - 0x418]
push ecx
push 0x5d00e0
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 0x470e20
sub ecx, edx
lea eax, [ebp - 0x418]
add eax, ecx
push 0x5d28bc
push eax
call fcn.0043d360
mov esi, dword [ebp - 0x1024]
add esp, 8
xor ecx, ecx
nop word [eax + eax]
lea eax, [ecx + ecx*8]
cmp dword [eax*8 + 0x60ea30], esi
jg 0x470e68
mov eax, 6
inc ecx
cmp ecx, eax
jl 0x470e50
jmp 0x470e6b
lea eax, [ecx - 1]
xor edx, edx
lea ecx, [ebp - 0x418]
test eax, eax
cmovns edx, eax
mov eax, 5
cmp edx, eax
cmovg edx, eax
lea eax, [ecx + 1]
mov dword [ebp - 0x1014], eax
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x470e90
sub ecx, dword [ebp - 0x1014]
lea edi, [edx + edx*8]
lea eax, [edi*8 + str.Dirk]
push eax
lea eax, [ebp - 0x418]
add eax, ecx
push eax
call fcn.0043d360
push 0x120
call fcn.0055644a
add esp, 0xc
mov dword [ebp - 0x1014], eax
mov byte [ebp - 4], 1
test eax, eax
je 0x470eed
lea ecx, [ebp - 0x418]
push ecx
push 0
push 1
mov ecx, eax
call fcn.0050ce20
mov edx, eax
mov dword [ebp - 0x1038], eax
jmp 0x470ef5
xor edx, edx
mov dword [ebp - 0x1038], edx
movd xmm0, dword [edi*8 + 0x60ea34]
mov eax, dword [edx + 0x11c]
cvtdq2ps xmm0, xmm0
mov dword [ebp - 0x1024], eax
mov edi, dword [ebp - 0xe98]
mov dword [ebp - 0x1020], edi
mov byte [ebp - 4], 0
movd xmm1, esi
mulss xmm0, dword [ebp - 0x1034]
cvtdq2ps xmm1, xmm1
divss xmm0, xmm1
mulss xmm1, dword [0x5d1b70]
cvttss2si ecx, xmm0
movss xmm0, dword [ebp - 0x107c]
mov dword [eax], ecx
mulss xmm0, dword [0x5d3dcc]
mov eax, dword [ebp - 0x104c]
mov ecx, dword [ebp - 0x1024]
movss dword [edx + 0x10c], xmm0
cdq
idiv esi
cvtps2pd xmm0, xmm1
mov dword [ecx + 0x10], eax
mov eax, dword [ebp - 0x102c]
cdq
idiv esi
addsd xmm0, qword [0x5d0050]
mov dword [ecx + 0x14], eax
mov eax, dword [ebp - 0x1030]
cdq
idiv esi
mov edx, dword [ebp - 0xea4]
mov dword [ecx + 0x18], eax
mov esi, dword [ebp - 0xea0]
cvtpd2ps xmm0, xmm0
lea eax, [edx + 1]
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x1024]
movss dword [ecx + 8], xmm0
mov dword [ecx + 0x20], esi
mov ecx, dword [ebp - 0xea8]
mov dword [eax + 0x2c], ecx
mov dword [eax + 0x28], edi
mov edi, dword [ebp - 0xe9c]
mov dword [eax + 0x24], edi
mov edi, dword [ebp - 0x1024]
mov eax, dword [ebp - 0xe6c]
mov dword [edi + 0x30], eax
mov eax, dword [ebp - 0xe70]
mov dword [edi + 0x34], eax
mov eax, dword [ebp - 0xe68]
mov dword [edi + 0x40], eax
mov eax, dword [ebp - 0xe64]
mov dword [edi + 0x44], eax
mov eax, dword [ebp - 0xe60]
mov dword [edi + 0x48], eax
mov eax, dword [ebp - 0xe5c]
mov dword [edi + 0x4c], eax
mov eax, dword [ebp - 0xe58]
mov dword [edi + 0x50], eax
mov eax, dword [ebp - 0xe54]
mov dword [edi + 0x54], eax
mov eax, dword [ebp - 0xe50]
mov dword [edi + 0x58], eax
mov eax, dword [ebp - 0xe4c]
mov dword [edi + 0x5c], eax
mov eax, dword [ebp - 0xe48]
mov dword [edi + 0x60], eax
mov eax, dword [ebp - 0xe44]
mov dword [edi + 0x64], eax
mov eax, dword [ebp - 0xe40]
mov dword [edi + 0x68], eax
mov eax, dword [ebp - 0xe3c]
mov dword [edi + 0x6c], eax
mov eax, dword [ebp - 0xe38]
mov dword [edi + 0x70], eax
mov eax, dword [ebp - 0xe34]
mov dword [edi + 0x74], eax
mov eax, dword [ebp - 0xe30]
mov dword [edi + 0x78], eax
mov eax, ecx
xor edi, edi
test ecx, ecx
mov ecx, edi
cmovle eax, edi
setg cl
dec ecx
mov edi, 1
cmp edx, eax
cmovle edx, eax
cmovg ecx, edi
cmp esi, edx
mov eax, 2
cmovle esi, edx
cmovg ecx, eax
mov edx, dword [ebp - 0xe9c]
mov eax, 3
cmp edx, esi
cmovle edx, esi
cmovg ecx, eax
cmp dword [ebp - 0xe98], edx
jg case.0x4710c1.4
mov dword [ebp - 0x1020], edx
cmp ecx, 0xffffffff
jle 0x471144
cmp ecx, 4
ja case.0x4710c1.1
mov dword [ebp - 0x1020], edx
jmp dword [ecx*4 + 0x47b594]
mov ecx, dword [ebp - 0x1024]
mov eax, 0x11
mov dword [ecx + 0x1c], 0x11
jmp 0x471129
mov ecx, dword [ebp - 0x1024]
mov eax, 0x15
mov dword [ecx + 0x1c], 0x15
jmp 0x471129
mov ecx, dword [ebp - 0x1024]
mov eax, 9
mov dword [ecx + 0x1c], 9
jmp 0x471129
mov ecx, dword [ebp - 0x1024]
mov eax, 0xd
mov dword [ecx + 0x1c], 0xd
jmp 0x471123
mov ecx, dword [ebp - 0x1024]
mov eax, edi
mov dword [ecx + 0x1c], edi
mov edx, dword [ebp - 0x1020]
cmp edx, 1
jle 0x471132
inc eax
mov dword [ecx + 0x1c], eax
cmp edx, 4
jle 0x47113b
inc eax
mov dword [ecx + 0x1c], eax
cmp edx, 9
jle 0x471144
inc eax
mov dword [ecx + 0x1c], eax
mov edi, dword [ebp - 0x106c]
mov eax, 5
nop
cmp dword [ebp + eax*4 - 0xea8], 0
jg 0x471165
inc eax
or ecx, 0xffffffff
cmp eax, 0xd
jle 0x471150
jmp 0x471168
lea ecx, [eax - 5]
cmp ecx, 0xffffffff
jle 0x47118c
mov esi, dword [ebp - 0x1024]
lea eax, [ecx + 0x19]
mov dword [esi + 0x1c], eax
mov eax, 0x66666667
imul dword [esi]
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
add dword [esi], eax
lea eax, [ebp - 0x418]
push str.You_have_created_a
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov esi, dword [ebp - 0x1028]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov ecx, dword [esi + 0x11c]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
mov ecx, dword [ebp - 0x1038]
call fcn.0044c8e0
push eax
lea eax, [ebp - 0x418]
push 0x5d28d4
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x1c
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
movss xmm0, dword [ebp - 0x103c]
lea eax, [edi + 0x260]
push eax
sub esp, 8
mov ecx, edi
movss dword [esp + 4], xmm0
movss xmm0, dword [ebp - 0x1044]
movss dword [esp], xmm0
push dword [ebp - 0x1038]
push esi
call fcn.00483280
imul ecx, dword [edi + 0x188], 0x980
push dword [ebp - 0x1038]
mov ecx, dword [ecx + edi + 0x2d8]
call fcn.0050da70
jmp 0x4713da
call fcn.0044e020
mov esi, eax
test esi, esi
je 0x4713da
movss xmm0, dword [ebp - 0x103c]
divss xmm0, dword [ebp - 0x1044]
movss dword [ebp - 0x1014], xmm0
call fcn.00565b3a
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x5d0bd8]
divss xmm0, dword [0x5d3e8c]
addss xmm0, dword [0x5d0044]
cvttss2si eax, xmm0
mov dword [ebp - 0x1064], eax
call fcn.00565b3a
movd xmm0, eax
cvtdq2ps xmm0, xmm0
divss xmm0, dword [0x5d3e8c]
addss xmm0, dword [0x5d0044]
comiss xmm0, dword [ebp - 0x1014]
jbe 0x4713b7
mov eax, dword [esi + 0x110]
cmp eax, 4
je 0x471344
cmp eax, 8
jne 0x4713b7
mov eax, dword [esi + 0x11c]
mov eax, dword [eax]
cmp eax, 5
jl 0x471344
add eax, 0xfffffffb
cmp eax, 0xa
ja 0x4713b7
cmp dword [ebp - 0x1064], 2
jne 0x4713b7
mov ecx, dword [edi + 0x188]
mov edx, ecx
imul eax, ecx, 0x980
cmp dword [eax + edi + 0x2f0], 9
jle 0x471383
cmp dword [esi + 0x110], 8
jne 0x471383
mov eax, dword [esi + 0x11c]
mov eax, dword [eax]
cmp eax, 5
jl 0x471383
cmp eax, 0xe
jge 0x471383
inc dword [esi + 0x118]
mov edx, dword [edi + 0x188]
mov eax, dword [esi + 0x118]
cmp eax, 1
jle 0x471397
dec eax
mov dword [esi + 0x118], eax
jmp 0x4713b7
imul eax, edx, 0x980
push esi
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e210
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e0d0
mov esi, eax
test esi, esi
jne 0x4712b3
mov esi, dword [ebp - 0x1040]
mov ecx, dword [esi + 0xc]
mov eax, dword [esi + 8]
test ecx, ecx
ja 0x47b566
jb 0x4713fb
cmp eax, 0x7530
jae 0x47b566
movss xmm1, dword [ebp - 0x103c]
movaps xmm0, xmm1
movss xmm2, dword [ebp - 0x1044]
divss xmm0, dword [0x5d3e50]
comiss xmm2, xmm0
jbe 0x47b566
mov eax, dword [0x62ca90]
mov edx, dword [esi + 4]
mov ecx, dword [esi]
movd xmm0, dword [eax + 0x98]
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
movss dword [ebp - 0x1014], xmm0
call fcn.00556830
movss xmm1, dword [ebp - 0x1014]
cvtsd2ss xmm0, xmm0
addss xmm1, xmm0
xorps xmm0, xmm0
movlpd qword [ebp - 0x1018], xmm0
movss xmm0, dword [0x5d3e90]
comiss xmm1, xmm0
jb 0x471498
subss xmm1, xmm0
comiss xmm0, xmm1
jbe 0x471498
mov eax, dword [ebp - 0x1018]
add eax, 0
mov dword [ebp - 0x1010], eax
mov eax, dword [ebp - 0x1014]
adc eax, 0x80000000
mov dword [ebp - 0x1074], eax
jmp 0x4714b0
mov eax, dword [ebp - 0x1014]
mov dword [ebp - 0x1074], eax
mov eax, dword [ebp - 0x1018]
mov dword [ebp - 0x1010], eax
movaps xmm0, xmm1
call fcn.005565b0
mov edi, eax
mov eax, edx
add edi, dword [ebp - 0x1010]
mov dword [esi], edi
adc eax, dword [ebp - 0x1074]
mov dword [esi + 4], eax
mov ecx, dword [esi + 0xc]
push ecx
mov dword [ebp - 0x101c], eax
mov eax, dword [esi + 8]
push eax
push ecx
push eax
call fcn.005575c0
mov esi, eax
mov ecx, edx
shld ecx, esi, 4
shl esi, 4
sub esi, eax
sbb ecx, edx
shld ecx, esi, 1
add esi, esi
cmp ecx, dword [ebp - 0x101c]
ja 0x47b566
jb 0x47150d
cmp esi, edi
ja 0x47b566
mov ecx, 0x88888889
mov eax, edi
mul ecx
mov esi, edx
mov dword [ebp - 0x1018], eax
mov eax, edi
mov edx, 0x88888888
mul edx
mov edi, eax
mov dword [ebp - 0x1064], edx
mov eax, dword [ebp - 0x101c]
mul ecx
mov dword [ebp - 0x1014], edx
mov ecx, eax
mov eax, dword [ebp - 0x101c]
mov edx, 0x88888888
mul edx
add ecx, esi
mov dword [ebp - 0x1074], edx
mov edx, dword [ebp - 0x1014]
adc edx, 0
mov dword [ebp - 0x1010], eax
mov esi, eax
add edi, ecx
mov ecx, dword [ebp - 0x1064]
adc ecx, 0
mov dword [ebp - 0x1018], edi
xor eax, eax
add edx, ecx
mov ecx, dword [ebp - 0x1074]
adc eax, eax
add esi, edx
adc ecx, eax
shrd esi, ecx, 4
shr ecx, 4
mov edx, ecx
mov ecx, esi
call fcn.00556830
xorps xmm1, xmm1
ucomisd xmm1, xmm0
ja 0x4715a5
sqrtsd xmm0, xmm0
jmp 0x4715aa
call fcn.00592a30
movaps xmm1, xmm0
xorps xmm0, xmm0
addsd xmm1, qword [0x5d0050]
movlpd qword [ebp - 0x1018], xmm0
movsd xmm0, qword [0x5d3e78]
comisd xmm1, xmm0
jb 0x4715ef
subsd xmm1, xmm0
comisd xmm0, xmm1
jbe 0x4715ef
mov esi, dword [ebp - 0x1018]
mov edi, dword [ebp - 0x1014]
add esi, 0
adc edi, 0x80000000
jmp 0x4715fb
mov edi, dword [ebp - 0x1014]
mov esi, dword [ebp - 0x1018]
movaps xmm0, xmm1
call fcn.00556780
add eax, esi
mov esi, dword [ebp - 0x1040]
push str.You_gained_a_skill_level__
adc edx, edi
mov dword [esi + 8], eax
lea eax, [ebp - 0x418]
push eax
mov dword [esi + 0xc], edx
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov ecx, dword [ebp - 0x106c]
imul eax, dword [ecx + 0x188], 0x980
movss xmm0, dword [eax + ecx + 0x300]
addss xmm0, dword [0x5d3d88]
movss dword [eax + ecx + 0x300], xmm0
mov eax, dword [ebp - 0x1028]
mov ecx, dword [eax + 0x11c]
jmp 0x47b54a
lea eax, [ebp - 0x418]
push str.BUG:_Cannot_find_skill_for_level.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov eax, dword [ebp - 0x1028]
mov ecx, dword [eax + 0x11c]
jmp 0x47b54a
mov ecx, 0x5d2538
lea eax, [edi + 0x260]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4716e0
test dl, dl
je 0x4716dc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4716e0
add eax, 2
add ecx, 2
test dl, dl
jne 0x4716c0
xor eax, eax
jmp 0x4716e5
sbb eax, eax
or eax, 1
test eax, eax
je 0x478e4a
mov ecx, 0x5d2584
lea eax, [edi + 0x260]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x471718
test dl, dl
je 0x471714
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x471718
add eax, 2
add ecx, 2
test dl, dl
jne 0x4716f8
xor eax, eax
jmp 0x47171d
sbb eax, eax
or eax, 1
test eax, eax
je 0x478e4a
mov ecx, 0x5d254c
lea eax, [edi + 0x260]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x471750
test dl, dl
je 0x47174c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x471750
add eax, 2
add ecx, 2
test dl, dl
jne 0x471730
xor eax, eax
jmp 0x471755
sbb eax, eax
or eax, 1
test eax, eax
je 0x478e4a
mov ecx, 0x5d256c
lea eax, [edi + 0x260]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x471788
test dl, dl
je 0x471784
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x471788
add eax, 2
add ecx, 2
test dl, dl
jne 0x471768
xor eax, eax
jmp 0x47178d
sbb eax, eax
or eax, 1
test eax, eax
je 0x478e4a
mov ecx, 0x5d2594
lea eax, [edi + 0x260]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4717c0
test dl, dl
je 0x4717bc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4717c0
add eax, 2
add ecx, 2
test dl, dl
jne 0x4717a0
xor eax, eax
jmp 0x4717c5
sbb eax, eax
or eax, 1
test eax, eax
je 0x478e4a
mov ecx, 0x5d255c
lea eax, [edi + 0x260]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4717f8
test dl, dl
je 0x4717f4
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4717f8
add eax, 2
add ecx, 2
test dl, dl
jne 0x4717d8
xor eax, eax
jmp 0x4717fd
sbb eax, eax
or eax, 1
test eax, eax
je 0x478e4a
mov ecx, 0x5d250c
lea eax, [edi + 0x260]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x471830
test dl, dl
je 0x47182c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x471830
add eax, 2
add ecx, 2
test dl, dl
jne 0x471810
xor eax, eax
jmp 0x471835
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4723d5
mov dword [ebp - 0x10ac], 0x3f800000
xorps xmm0, xmm0
mov dword [ebp - 0x10a8], 0x3f800000
mov dword [ebp - 0x10b0], 0x3f800000
mov dword [ebp - 0x1010], eax
mov dword [ebp - 0x1074], eax
imul eax, dword [edi + 0x188], 0x980
movss dword [ebp - 0x1020], xmm0
movss dword [ebp - 0x101c], xmm0
movss dword [ebp - 0x1034], xmm0
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e020
mov ecx, eax
test ecx, ecx
je 0x4719c8
xor esi, esi
nop word [eax + eax]
mov eax, dword [ecx + 0x110]
cmp eax, 0xb
jne 0x471902
mov eax, dword [ecx + 0x11c]
mov ecx, dword [ecx + 0x118]
add esi, ecx
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
movaps xmm0, xmm1
mulss xmm1, dword [eax + 4]
mulss xmm0, dword [eax + 8]
addss xmm1, dword [ebp - 0x101c]
addss xmm0, dword [ebp - 0x1020]
movss dword [ebp - 0x101c], xmm1
movss dword [ebp - 0x1020], xmm0
jmp 0x471999
cmp eax, 0xa
jne 0x471999
mov eax, dword [ecx + 0x11c]
xor ecx, ecx
mov eax, dword [eax]
test eax, eax
cmovns ecx, eax
lea eax, [ecx*8]
sub eax, ecx
add eax, eax
mov dword [ebp - 0x1014], eax
cmp eax, 0x163
jle 0x47195d
lea ecx, [eax - 0x164]
mov eax, 0x6c16c16d
mul ecx
sub ecx, edx
shr ecx, 1
add ecx, edx
shr ecx, 8
imul eax, ecx, 0x168
mov ecx, 0xfffffe98
sub ecx, eax
mov eax, dword [ebp - 0x1014]
add eax, ecx
lea ecx, [ebp - 0x10ac]
movd xmm0, eax
push ecx
lea ecx, [ebp - 0x10a8]
push ecx
lea ecx, [ebp - 0x10b0]
push ecx
sub esp, 0xc
cvtdq2ps xmm0, xmm0
mov dword [esp + 8], 0x3f800000
mov dword [esp + 4], 0x3f800000
movss dword [esp], xmm0
call fcn.0044cfa0
add esp, 0x18
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e0d0
mov ecx, eax
test ecx, ecx
jne 0x4718b0
mov dword [ebp - 0x1010], esi
mov esi, dword [ebp - 0x1028]
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e020
test eax, eax
je 0x471a43
xor esi, esi
cmp dword [eax + 0x110], 0xc
jne 0x471a1a
mov ecx, dword [eax + 0x11c]
mov eax, dword [eax + 0x118]
add esi, eax
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [ecx + 4]
addss xmm0, dword [ebp - 0x1034]
movss dword [ebp - 0x1034], xmm0
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e0d0
test eax, eax
jne 0x4719e7
mov dword [ebp - 0x1074], esi
mov esi, dword [ebp - 0x1028]
cmp dword [ebp - 0x1010], 0
movss xmm0, dword [ebp - 0x1034]
addss xmm0, dword [0x5d0048]
mulss xmm0, dword [ebp - 0x101c]
movss dword [ebp - 0x1034], xmm0
jg 0x471a76
push str.Use_explosive_material_to_make_a_bomb.
jmp 0x47b51e
imul eax, dword [edi + 0x188], 0x980
mov dword [ebp - 0x1044], 0
mov ecx, dword [eax + edi + 0x2e0]
add ecx, 8
call fcn.0044e020
mov dword [ebp - 0x1014], eax
test eax, eax
je 0x4723cb
mov esi, eax
nop dword [eax]
mov ecx, esi
call fcn.0044c8e0
lea ecx, [edi + 0x260]
nop dword [eax]
mov dl, byte [ecx]
cmp dl, byte [eax]
jne 0x471ae0
test dl, dl
je 0x471adc
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x471ae0
add ecx, 2
add eax, 2
test dl, dl
jne 0x471ac0
xor eax, eax
jmp 0x471ae5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x471af5
mov eax, dword [esi + 0x11c]
mov dword [ebp - 0x1044], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e0]
add ecx, 8
call fcn.0044e0d0
mov esi, eax
test esi, esi
jne 0x471ab0
mov esi, dword [ebp - 0x1028]
cmp dword [ebp - 0x1044], eax
je 0x4723cb
mov ecx, edi
call fcn.0047bec0
mov ecx, dword [ebp - 0x1044]
cdq
push dword [ecx + 0xc]
push dword [ecx + 8]
push edx
push eax
call fcn.005575c0
mov ecx, eax
call fcn.00556830
cvtsd2ss xmm0, xmm0
sub esp, 8
mov dword [esp + 4], 0x3fa66666
movss dword [ebp - 0x1014], xmm0
mov dword [esp], 0x3f333333
call fcn.0048da70
fmul dword [ebp - 0x1014]
add esp, 8
mov ecx, 0x62d4e8
push esi
push 3
fstp dword [ebp - 0x1010]
call fcn.0052e910
test eax, eax
je 0x471bba
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.0052f3e0
test eax, eax
je 0x471bba
movss xmm0, dword [ebp - 0x1010]
mulss xmm0, dword [0x5d3db4]
jmp 0x471bc2
movss xmm0, dword [ebp - 0x1010]
push esi
push 4
mov ecx, 0x62d4e8
movss dword [ebp - 0x1030], xmm0
call fcn.0052e910
test eax, eax
je 0x471c10
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.0052f3e0
test eax, eax
je 0x471c10
movss xmm0, dword [ebp - 0x1030]
mulss xmm0, dword [0x5d3db4]
movss dword [ebp - 0x1030], xmm0
push esi
push 5
mov ecx, 0x62d4e8
call fcn.0052e910
test eax, eax
je 0x471c58
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.0052f3e0
movss xmm1, dword [ebp - 0x1030]
test eax, eax
je 0x471c60
mulss xmm1, dword [0x5d3db4]
movss dword [ebp - 0x1030], xmm1
jmp 0x471c60
movss xmm1, dword [ebp - 0x1030]
mov eax, dword [edi + 0x14f60]
test eax, eax
jle 0x471c8d
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x5d3d8c]
addss xmm0, dword [0x5d0048]
mulss xmm0, xmm1
movss dword [ebp - 0x1030], xmm0
movss xmm0, dword [ebp - 0x1034]
lea eax, [ebp - 0x418]
cvtps2pd xmm0, xmm0
sub esp, 8
movsd qword [esp], xmm0
push str.Task_difficulty_is__4.2f.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x20
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
movss xmm0, dword [ebp - 0x1030]
lea eax, [ebp - 0x418]
cvtps2pd xmm0, xmm0
sub esp, 8
movsd qword [esp], xmm0
push str.Your_work_value_was__4.2f.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x20
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
imul ecx, dword [edi + 0x188], 0x980
movss xmm0, dword [ebp - 0x1030]
mov ecx, dword [ecx + edi + 0x2dc]
add ecx, 8
comiss xmm0, dword [ebp - 0x1034]
jb 0x4722ab
call fcn.0044e020
mov dword [ebp - 0x1014], eax
test eax, eax
je 0x471dee
mov esi, eax
nop word [eax + eax]
mov eax, dword [esi + 0x110]
cmp eax, 0xb
je 0x471da5
cmp eax, 0xc
je 0x471da5
cmp eax, 0xa
jne 0x471dc9
imul eax, dword [edi + 0x188], 0x980
push esi
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e210
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e0d0
mov esi, eax
test esi, esi
jne 0x471d90
mov esi, dword [ebp - 0x1028]
movss xmm0, dword [ebp - 0x1020]
xor edi, edi
divss xmm0, dword [0x5d0bb8]
cvttss2si ecx, xmm0
mov eax, 0x66666667
inc edi
imul ecx
sar edx, 2
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
test ecx, ecx
jg 0x471e04
mov eax, 0xe
cmp edi, eax
cmovg edi, eax
lea eax, [edi + edi*4]
lea eax, [eax*4 + str.Tiny]
push eax
lea eax, [ebp - 0x418]
push str._s_Bomb
push eax
call fcn.0043d360
push 0x120
call fcn.0055644a
add esp, 0x10
mov dword [ebp - 0x1014], eax
mov byte [ebp - 4], 3
test eax, eax
je 0x471e77
lea ecx, [ebp - 0x418]
push ecx
push 0
push 0xd
mov ecx, eax
call fcn.0050ce20
mov edx, eax
mov dword [ebp - 0x101c], eax
jmp 0x471e7f
xor edx, edx
mov dword [ebp - 0x101c], edx
movss xmm0, dword [ebp - 0x1034]
movss xmm1, dword [ebp - 0x1030]
addss xmm0, xmm0
mov ecx, dword [edx + 0x11c]
mov eax, dword [ebp - 0x1074]
movss xmm2, dword [ebp - 0x1020]
mov edi, dword [ebp - 0x106c]
divss xmm1, xmm0
lea eax, [eax + eax*2]
mov byte [ebp - 4], 0
movss dword [ecx], xmm2
xorps xmm0, xmm0
comiss xmm0, xmm1
mov dword [ecx + 0xc], eax
movss dword [ecx + 4], xmm1
jbe 0x471ed6
mov dword [ecx + 4], 0
xorps xmm1, xmm1
comiss xmm1, dword [0x5d0048]
jbe 0x471ee6
mov dword [ecx + 4], 0x3f800000
cmp eax, 1
jge 0x471ef2
mov dword [ecx + 4], 0x3f800000
movss xmm1, dword [0x5d0fc0]
addss xmm2, xmm2
push str.You_have_created_a
movss dword [edx + 0x10c], xmm2
movss xmm0, dword [ebp - 0x10b0]
mulss xmm0, xmm1
cvttss2si eax, xmm0
mov dword [ecx + 0x14], eax
movss xmm0, dword [ebp - 0x10a8]
mulss xmm0, xmm1
cvttss2si eax, xmm0
mov dword [ecx + 0x18], eax
movss xmm0, dword [ebp - 0x10ac]
mulss xmm0, xmm1
cvttss2si eax, xmm0
mov dword [ecx + 0x1c], eax
lea eax, [ebp - 0x418]
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
mov ecx, dword [ebp - 0x101c]
call fcn.0044c8e0
push eax
lea eax, [ebp - 0x418]
push 0x5d28d4
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x1c
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
imul ecx, dword [edi + 0x188], 0x980
push dword [ebp - 0x101c]
mov ecx, dword [ecx + edi + 0x2d8]
call fcn.0050da70
mov eax, dword [0x62ca90]
mov esi, dword [ebp - 0x1044]
movd xmm0, dword [eax + 0x9c]
mov edx, dword [esi + 4]
mov ecx, dword [esi]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [ebp - 0x1034]
movss dword [ebp - 0x1014], xmm0
call fcn.00556830
movss xmm1, dword [ebp - 0x1014]
cvtsd2ss xmm0, xmm0
addss xmm1, xmm0
xorps xmm0, xmm0
movlpd qword [ebp - 0x1018], xmm0
movss xmm0, dword [0x5d3e90]
comiss xmm1, xmm0
jb 0x472084
subss xmm1, xmm0
comiss xmm0, xmm1
jbe 0x472084
mov eax, dword [ebp - 0x1018]
add eax, 0
mov dword [ebp - 0x1010], eax
mov eax, dword [ebp - 0x1014]
adc eax, 0x80000000
mov dword [ebp - 0x1074], eax
jmp 0x47209c
mov eax, dword [ebp - 0x1014]
mov dword [ebp - 0x1074], eax
mov eax, dword [ebp - 0x1018]
mov dword [ebp - 0x1010], eax
movaps xmm0, xmm1
call fcn.005565b0
add eax, dword [ebp - 0x1010]
mov edi, edx
mov dword [esi], eax
adc edi, dword [ebp - 0x1074]
mov dword [ebp - 0x101c], eax
mov dword [esi + 4], edi
mov eax, dword [esi + 0xc]
mov ecx, dword [esi + 8]
push eax
push ecx
push eax
push ecx
mov dword [ebp - 0x1020], edi
call fcn.005575c0
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 0x47b566
mov ecx, dword [ebp - 0x101c]
jb 0x472102
cmp eax, ecx
ja 0x47b566
mov eax, ecx
mov edx, 0xe147ae15
mul edx
mov edi, 0x47ae147a
mov dword [ebp - 0x1018], eax
mov esi, edx
mov eax, ecx
mov ecx, 0xe147ae15
mul edi
mov edi, eax
mov dword [ebp - 0x1064], edx
mov eax, dword [ebp - 0x1020]
mul ecx
mov ecx, eax
mov dword [ebp - 0x1014], edx
mov eax, dword [ebp - 0x1020]
mov edx, 0x47ae147a
mul edx
add ecx, esi
mov esi, dword [ebp - 0x101c]
mov dword [ebp - 0x1074], edx
mov edx, dword [ebp - 0x1014]
adc edx, 0
mov dword [ebp - 0x1010], eax
add edi, ecx
mov ecx, dword [ebp - 0x1064]
mov dword [ebp - 0x1018], edi
adc ecx, 0
xor eax, eax
add edx, ecx
mov ecx, dword [ebp - 0x1010]
adc eax, eax
add ecx, edx
mov edx, dword [ebp - 0x1074]
adc edx, eax
mov eax, dword [ebp - 0x1020]
sub esi, ecx
sbb eax, edx
shrd esi, eax, 1
shr eax, 1
add ecx, esi
adc eax, edx
shrd ecx, eax, 6
shr eax, 6
mov edx, eax
call fcn.00556830
xorps xmm1, xmm1
ucomisd xmm1, xmm0
ja 0x4721bb
sqrtsd xmm0, xmm0
jmp 0x4721c0
call fcn.00592a30
movaps xmm1, xmm0
xorps xmm0, xmm0
addsd xmm1, qword [0x5d0050]
movlpd qword [ebp - 0x1018], xmm0
movsd xmm0, qword [0x5d3e78]
comisd xmm1, xmm0
jb 0x472205
subsd xmm1, xmm0
comisd xmm0, xmm1
jbe 0x472205
mov esi, dword [ebp - 0x1018]
mov edi, dword [ebp - 0x1014]
add esi, 0
adc edi, 0x80000000
jmp 0x472211
mov edi, dword [ebp - 0x1014]
mov esi, dword [ebp - 0x1018]
movaps xmm0, xmm1
call fcn.00556780
mov ecx, dword [ebp - 0x1044]
add eax, esi
push str.You_gained_a_skill_level__
adc edx, edi
mov dword [ecx + 8], eax
lea eax, [ebp - 0x418]
push eax
mov dword [ecx + 0xc], edx
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov eax, dword [ebp - 0x1028]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov ecx, dword [eax + 0x11c]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
mov ecx, dword [ebp - 0x106c]
imul eax, dword [ecx + 0x188], 0x980
movss xmm0, dword [eax + ecx + 0x300]
addss xmm0, dword [0x5d3d90]
movss dword [eax + ecx + 0x300], xmm0
jmp 0x47b566
mov dword [ebp - 0x1044], 0
call fcn.0044e020
mov dword [ebp - 0x1014], eax
test eax, eax
je 0x47233b
mov esi, eax
nop word [eax + eax]
mov eax, dword [esi + 0x110]
cmp eax, 0xb
je 0x4722e0
cmp eax, 0xc
jne 0x472316
imul eax, dword [edi + 0x188], 0x980
push esi
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e210
mov eax, dword [ebp - 0x1044]
mov ecx, esi
add eax, dword [esi + 0x118]
mov dword [ebp - 0x1044], eax
mov eax, dword [esi]
push 1
mov eax, dword [eax]
call eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e0d0
mov esi, eax
test esi, esi
jne 0x4722d0
mov esi, dword [ebp - 0x1028]
mov byte [ebp - 0x10d8], 0x47
mov ecx, esi
mov eax, dword [edi + 0x180]
mov dword [ebp - 0x10d7], eax
mov eax, 0x66666667
imul dword [ebp - 0x1044]
mov dword [ebp - 0x10d1], 0
sar edx, 2
mov eax, edx
mov dword [ebp - 0x10cd], 0
shr eax, 0x1f
add edx, 5
add eax, edx
push 0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x10c9], xmm0
mov al, byte [edi + 0x108]
mov byte [ebp - 0x10d3], al
mov al, byte [edi + 0x10c]
mov byte [ebp - 0x10d2], al
cvttss2si eax, xmm0
push eax
lea eax, [ebp - 0x10d8]
push eax
push 0x13
push dword [edi + 0x10c]
push dword [edi + 0x108]
push 0
call fcn.0052acd0
jmp 0x47b566
push str.BUG:_Cannot_find_skill_for_level.
jmp 0x47b51e
mov ecx, 0x5d2524
lea eax, [edi + 0x260]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x472400
test dl, dl
je 0x4723fc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x472400
add eax, 2
add ecx, 2
test dl, dl
jne 0x4723e0
xor eax, eax
jmp 0x472405
sbb eax, eax
or eax, 1
test eax, eax
jne 0x474544
mov dword [ebp - 0x107c], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e020
test eax, eax
je 0x47453a
xor esi, esi
cmp dword [eax + 0x110], 1
jne 0x472464
add esi, dword [eax + 0x118]
mov dword [ebp - 0x107c], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e090
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e0d0
test eax, eax
jne 0x472436
cmp esi, 1
mov esi, dword [ebp - 0x1028]
jl 0x47453a
mov eax, dword [ebp - 0x107c]
cmp dword [eax + 0x118], 1
mov esi, dword [eax + 0x11c]
mov dword [ebp - 0x102c], esi
jle 0x47253b
push 0x120
call fcn.0055644a
add esp, 4
mov dword [ebp - 0x1014], eax
mov byte [ebp - 4], 4
test eax, eax
je 0x4724e4
push str.UNNAMED
push 0
push 0
mov ecx, eax
call fcn.0050ce20
mov edx, eax
mov dword [ebp - 0x1010], eax
jmp 0x4724ec
xor edx, edx
mov dword [ebp - 0x1010], edx
mov ecx, dword [ebp - 0x107c]
push edx
mov byte [ebp - 4], 0
mov eax, dword [ecx]
mov eax, dword [eax + 0x18]
call eax
mov ecx, dword [ebp - 0x107c]
mov edx, dword [ebp - 0x1010]
push edx
mov eax, dword [ecx + 0x118]
dec eax
mov dword [edx + 0x118], eax
mov dword [ecx + 0x118], 1
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e130
lea eax, [ebp - 0x1064]
mov ecx, edi
push eax
lea eax, [ebp - 0x1014]
push eax
push esi
call fcn.0047bee0
mov ecx, esi
call fcn.0047d250
mov ecx, esi
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x1074], xmm0
call fcn.0047d250
cmp dword [esi + 0x1c], 0x19
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x1064], xmm0
movd xmm0, dword [esi]
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x1020], xmm0
jl 0x4725aa
mulss xmm0, dword [0x5d0bb8]
divss xmm0, dword [0x5d3e4c]
movss dword [ebp - 0x1020], xmm0
cmp dword [esi + 0x3c], 2
jne 0x4725c0
subss xmm0, dword [0x5d3e58]
movss dword [ebp - 0x1020], xmm0
mov eax, dword [ebp - 0x1014]
add eax, 2
movss xmm0, dword [ebp - 0x1074]
addss xmm0, dword [0x5d0048]
mov dword [ebp - 0x1044], 0
movd xmm1, eax
mov eax, 0x66666667
imul dword [esi + 0x20]
cvtdq2ps xmm1, xmm1
sar edx, 1
mov eax, edx
mulss xmm1, xmm0
shr eax, 0x1f
inc edx
add eax, edx
movd xmm0, eax
mov eax, 0x66666667
imul dword [esi + 0x28]
cvtdq2ps xmm0, xmm0
sar edx, 1
mov eax, edx
mulss xmm1, xmm0
shr eax, 0x1f
inc edx
add eax, edx
movd xmm0, eax
mov eax, 0x66666667
imul dword [esi + 0x24]
cvtdq2ps xmm0, xmm0
mov eax, 0x66666667
sar edx, 1
mov ecx, edx
mulss xmm1, xmm0
inc edx
shr ecx, 0x1f
add ecx, edx
imul dword [esi + 0x2c]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
sar edx, 1
mov eax, edx
inc edx
shr eax, 0x1f
add eax, edx
mulss xmm1, xmm0
movd xmm0, eax
mov eax, dword [esi + 0x34]
cvtdq2ps xmm0, xmm0
inc eax
mulss xmm1, xmm0
movd xmm0, eax
imul eax, dword [edi + 0x188], 0x980
cvtdq2ps xmm0, xmm0
mulss xmm1, xmm0
mov ecx, dword [eax + edi + 0x2e0]
add ecx, 8
movss dword [ebp - 0x1030], xmm1
call fcn.0044e020
mov dword [ebp - 0x1014], eax
test eax, eax
je 0x471679
mov esi, eax
mov ecx, esi
call fcn.0044c8e0
lea ecx, [edi + 0x260]
nop
mov dl, byte [ecx]
cmp dl, byte [eax]
jne 0x4726d0
test dl, dl
je 0x4726cc
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x4726d0
add ecx, 2
add eax, 2
test dl, dl
jne 0x4726b0
xor eax, eax
jmp 0x4726d5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4726e5
mov eax, dword [esi + 0x11c]
mov dword [ebp - 0x1044], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e0]
add ecx, 8
call fcn.0044e0d0
mov esi, eax
test esi, esi
jne 0x4726a2
mov esi, dword [ebp - 0x102c]
cmp dword [ebp - 0x1044], eax
je 0x471679
mov ecx, edi
call fcn.0047bec0
mov ecx, dword [ebp - 0x1044]
cdq
push dword [ecx + 0xc]
push dword [ecx + 8]
push edx
push eax
call fcn.005575c0
mov ecx, eax
call fcn.00556830
cvtsd2ss xmm0, xmm0
sub esp, 8
mov dword [esp + 4], 0x3f8ccccd
movss dword [ebp - 0x1014], xmm0
mov dword [esp], 0x3f666666
call fcn.0048da70
fmul dword [ebp - 0x1014]
add esp, 8
mov eax, dword [ebp - 0x1028]
mov ecx, 0x62d4e8
push eax
fmul dword [0x5d3e38]
push 1
fstp dword [ebp - 0x1010]
call fcn.0052e910
test eax, eax
je 0x4727ba
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [ebp - 0x1028]
add eax, 0x2a0
add eax, edi
push eax
call fcn.0052f3e0
test eax, eax
je 0x4727ba
movss xmm0, dword [ebp - 0x1010]
mulss xmm0, dword [0x5d3db4]
jmp 0x4727c2
movss xmm0, dword [ebp - 0x1010]
push dword [ebp - 0x1028]
mov ecx, 0x62d4e8
movss dword [ebp - 0x103c], xmm0
push 0
call fcn.0052e910
test eax, eax
je 0x472819
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [ebp - 0x1028]
add eax, 0x2a0
add eax, edi
push eax
call fcn.0052f3e0
test eax, eax
je 0x472819
movss xmm0, dword [ebp - 0x103c]
mulss xmm0, dword [0x5d3db4]
movss dword [ebp - 0x103c], xmm0
push dword [ebp - 0x1028]
mov ecx, 0x62d4e8
push 2
call fcn.0052e910
test eax, eax
je 0x47286a
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [ebp - 0x1028]
add eax, 0x2a0
add eax, edi
push eax
call fcn.0052f3e0
movss xmm1, dword [ebp - 0x103c]
test eax, eax
je 0x472872
mulss xmm1, dword [0x5d3db4]
movss dword [ebp - 0x103c], xmm1
jmp 0x472872
movss xmm1, dword [ebp - 0x103c]
mov eax, dword [edi + 0x14f60]
test eax, eax
jle 0x47289f
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x5d3d8c]
addss xmm0, dword [0x5d0048]
mulss xmm0, xmm1
movss dword [ebp - 0x103c], xmm0
movss xmm0, dword [ebp - 0x1030]
lea eax, [ebp - 0x418]
cvtps2pd xmm0, xmm0
sub esp, 8
movsd qword [esp], xmm0
push str.This_weapons_complexity_is__4.2f.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov eax, dword [ebp - 0x1028]
lea edx, [ebp - 0x105c]
add esp, 0x20
mov ecx, dword [eax + 0x11c]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
movss xmm0, dword [ebp - 0x103c]
lea eax, [ebp - 0x418]
cvtps2pd xmm0, xmm0
sub esp, 8
movsd qword [esp], xmm0
push str.Your_work_value_was__4.2f.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov eax, dword [ebp - 0x1028]
lea edx, [ebp - 0x105c]
add esp, 0x20
mov ecx, dword [eax + 0x11c]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
cmp dword [esi + 0x3c], 5
jle 0x4731fb
push 0x40
push 0
push dword [esi + 0x78]
call fcn.0044cb60
push 0x40
mov dword [esi + 0x78], eax
push 0
push dword [esi + 0x74]
call fcn.0044cb60
push 0x40
mov dword [esi + 0x74], eax
push 0
push dword [esi + 0x70]
call fcn.0044cb60
push 0x40
mov dword [esi + 0x70], eax
push 0
push dword [esi + 0x6c]
call fcn.0044cb60
push 0x40
mov dword [esi + 0x6c], eax
push 0
push dword [esi + 0x68]
call fcn.0044cb60
push 0x40
mov dword [esi + 0x68], eax
push 0
push dword [esi + 0x64]
call fcn.0044cb60
add esp, 0x48
mov dword [esi + 0x64], eax
push 0x40
push 0
push dword [esi + 0x60]
call fcn.0044cb60
push 0x40
mov dword [esi + 0x60], eax
push 0
push dword [esi + 0x5c]
call fcn.0044cb60
push 0x40
mov dword [esi + 0x5c], eax
push 0
push dword [esi + 0x58]
call fcn.0044cb60
push 0x40
mov dword [esi + 0x58], eax
push 0
push dword [esi + 0x54]
call fcn.0044cb60
push 0x40
mov dword [esi + 0x54], eax
push 0
push dword [esi + 0x50]
call fcn.0044cb60
push 0x40
mov dword [esi + 0x50], eax
push 0
push dword [esi + 0x4c]
call fcn.0044cb60
add esp, 0x48
mov dword [esi + 0x4c], eax
push 0x40
push 0
push dword [esi + 0x48]
call fcn.0044cb60
push 0x40
mov dword [esi + 0x48], eax
push 0
push dword [esi + 0x44]
call fcn.0044cb60
push 0x40
mov dword [esi + 0x44], eax
push 0
push dword [esi + 0x40]
call fcn.0044cb60
add esp, 0x24
mov dword [esi + 0x40], eax
cmp dword [esi + 0x3c], 5
jle 0x4731fb
movss xmm0, dword [ebp - 0x103c]
divss xmm0, dword [0x5d1b74]
movss xmm1, dword [ebp - 0x1030]
divss xmm0, xmm1
comiss xmm0, dword [0x5d0048]
jb 0x473203
mov edx, dword [esi + 0x40]
mov eax, 1
cmp edx, eax
mov dword [ebp - 0x1010], 0xffffffff
cmovge eax, edx
xor ecx, ecx
cmp edx, 1
setge cl
xor edx, edx
dec ecx
cmp dword [esi + 0x40], 1
setge dl
lea edx, [edx*2 - 1]
mov dword [ebp - 0x1014], edx
mov edx, dword [esi + 0x44]
cmp edx, eax
jl 0x472ada
mov dword [ebp - 0x1010], ecx
mov ecx, 1
cmp dword [esi + 0x44], eax
mov dword [ebp - 0x101c], ecx
cmovl edx, eax
cmovl eax, dword [ebp - 0x1014]
cmp dword [esi + 0x48], edx
jl 0x472af9
mov eax, edx
mov ecx, 2
mov edi, dword [esi + 0x48]
cmp edi, edx
mov esi, dword [ebp - 0x101c]
cmovl esi, dword [ebp - 0x1010]
mov dword [ebp - 0x101c], esi
mov esi, dword [ebp - 0x102c]
mov dword [ebp - 0x1020], ecx
cmp dword [esi + 0x48], edx
cmovl edi, edx
mov edx, edi
mov dword [ebp - 0x1014], edi
cmp dword [esi + 0x4c], edx
jl 0x472b37
mov eax, edx
mov ecx, 3
mov edi, dword [esi + 0x4c]
cmp edi, edx
mov esi, dword [ebp - 0x1020]
cmovl esi, dword [ebp - 0x101c]
mov dword [ebp - 0x1020], esi
mov esi, dword [ebp - 0x102c]
mov dword [ebp - 0x1038], ecx
cmp dword [esi + 0x4c], edx
cmovl edi, edx
mov edx, edi
mov dword [ebp - 0x1014], edi
cmp dword [esi + 0x50], edx
jl 0x472b75
mov eax, edx
mov ecx, 4
mov edi, dword [esi + 0x50]
cmp edi, edx
mov esi, dword [ebp - 0x1038]
cmovl esi, dword [ebp - 0x1020]
mov dword [ebp - 0x1038], esi
mov esi, dword [ebp - 0x102c]
mov dword [ebp - 0x101c], ecx
cmp dword [esi + 0x50], edx
cmovl edi, edx
mov edx, edi
mov dword [ebp - 0x1014], edi
cmp dword [esi + 0x54], edx
jl 0x472bb3
mov eax, edx
mov ecx, 5
mov edi, dword [esi + 0x54]
cmp edi, edx
mov esi, dword [ebp - 0x101c]
cmovl esi, dword [ebp - 0x1038]
mov dword [ebp - 0x101c], esi
mov esi, dword [ebp - 0x102c]
mov dword [ebp - 0x1020], ecx
cmp dword [esi + 0x54], edx
cmovl edi, edx
mov edx, edi
mov dword [ebp - 0x1014], edi
cmp dword [esi + 0x58], edx
jl 0x472bf1
mov eax, edx
mov ecx, 6
mov edi, dword [esi + 0x58]
cmp edi, edx
mov esi, dword [ebp - 0x1020]
cmovl esi, dword [ebp - 0x101c]
mov dword [ebp - 0x1020], esi
mov esi, dword [ebp - 0x102c]
mov dword [ebp - 0x1038], ecx
cmp dword [esi + 0x58], edx
cmovl edi, edx
mov edx, edi
mov dword [ebp - 0x1014], edi
cmp dword [esi + 0x5c], edx
jl 0x472c2f
mov eax, edx
mov ecx, 7
mov edi, dword [esi + 0x5c]
cmp edi, edx
mov esi, dword [ebp - 0x1038]
cmovl esi, dword [ebp - 0x1020]
mov dword [ebp - 0x1038], esi
mov esi, dword [ebp - 0x102c]
mov dword [ebp - 0x101c], ecx
cmp dword [esi + 0x5c], edx
cmovl edi, edx
mov edx, edi
mov dword [ebp - 0x1014], edi
cmp dword [esi + 0x60], edx
jl 0x472c6d
mov eax, edx
mov ecx, 8
mov edi, dword [esi + 0x60]
cmp edi, edx
mov esi, dword [ebp - 0x101c]
cmovl esi, dword [ebp - 0x1038]
mov dword [ebp - 0x101c], esi
mov esi, dword [ebp - 0x102c]
mov dword [ebp - 0x1020], ecx
cmp dword [esi + 0x60], edx
cmovl edi, edx
mov edx, edi
mov dword [ebp - 0x1014], edi
cmp dword [esi + 0x64], edx
jl 0x472cab
mov eax, edx
mov ecx, 9
mov edi, dword [esi + 0x64]
cmp edi, edx
mov esi, dword [ebp - 0x1020]
cmovl esi, dword [ebp - 0x101c]
mov dword [ebp - 0x1020], esi
mov esi, dword [ebp - 0x102c]
mov dword [ebp - 0x1038], ecx
cmp dword [esi + 0x64], edx
cmovl edi, edx
mov edx, edi
mov dword [ebp - 0x1014], edi
cmp dword [esi + 0x68], edx
jl 0x472ce9
mov eax, edx
mov ecx, 0xa
mov edi, dword [esi + 0x68]
cmp edi, edx
mov esi, dword [ebp - 0x1038]
cmovl esi, dword [ebp - 0x1020]
mov dword [ebp - 0x1038], esi
mov esi, dword [ebp - 0x102c]
mov dword [ebp - 0x101c], ecx
cmp dword [esi + 0x68], edx
cmovl edi, edx
mov edx, edi
mov dword [ebp - 0x1014], edi
cmp dword [esi + 0x6c], edx
jl 0x472d27
mov eax, edx
mov ecx, 0xb
mov edi, dword [esi + 0x6c]
cmp edi, edx
mov esi, dword [ebp - 0x101c]
cmovl esi, dword [ebp - 0x1038]
mov dword [ebp - 0x101c], esi
mov esi, dword [ebp - 0x102c]
mov dword [ebp - 0x1050], ecx
cmp dword [esi + 0x6c], edx
cmovl edi, edx
mov edx, edi
mov dword [ebp - 0x1014], edi
cmp dword [esi + 0x70], edx
jl 0x472d65
mov eax, edx
mov ecx, 0xc
mov edi, dword [esi + 0x70]
cmp edi, edx
mov esi, dword [ebp - 0x1050]
cmovl esi, dword [ebp - 0x101c]
mov dword [ebp - 0x1050], esi
mov esi, dword [ebp - 0x102c]
mov dword [ebp - 0x1038], ecx
cmp dword [esi + 0x70], edx
cmovl edi, edx
mov edx, edi
mov dword [ebp - 0x1020], edi
cmp dword [esi + 0x74], edx
jl 0x472da3
mov eax, edx
mov ecx, 0xd
mov edi, dword [esi + 0x74]
cmp edi, dword [ebp - 0x1020]
mov edx, dword [ebp - 0x1038]
cmovl edx, dword [ebp - 0x1050]
cmp edi, dword [ebp - 0x1020]
mov dword [ebp - 0x1038], edx
mov edx, ecx
cmovl edi, dword [ebp - 0x1020]
mov dword [ebp - 0x102c], ecx
mov dword [ebp - 0x1010], edi
cmp dword [esi + 0x78], edi
jl 0x472de6
mov eax, edi
mov ecx, 0xe
mov edi, dword [esi + 0x78]
cmp edi, dword [ebp - 0x1010]
cmovl edx, dword [ebp - 0x1038]
cmp edi, eax
mov edi, dword [ebp - 0x106c]
mov dword [ebp - 0x102c], edx
jle 0x472e1f
mov dword [ebp - 0x102c], edx
cmp ecx, 0xe
je 0x472e1f
mov eax, dword [esi + 0x78]
mov edx, 0xe
mov dword [ebp - 0x102c], edx
cmp dword [esi + 0x74], eax
jle 0x472e37
cmp ecx, 0xd
je 0x472e37
mov eax, dword [esi + 0x74]
mov edx, 0xd
mov dword [ebp - 0x102c], edx
cmp dword [esi + 0x70], eax
jle 0x472e4f
cmp ecx, 0xc
je 0x472e4f
mov eax, dword [esi + 0x70]
mov edx, 0xc
mov dword [ebp - 0x102c], edx
cmp dword [esi + 0x6c], eax
jle 0x472e67
cmp ecx, 0xb
je 0x472e67
mov eax, dword [esi + 0x6c]
mov edx, 0xb
mov dword [ebp - 0x102c], edx
cmp dword [esi + 0x68], eax
jle 0x472e7f
cmp ecx, 0xa
je 0x472e7f
mov eax, dword [esi + 0x68]
mov edx, 0xa
mov dword [ebp - 0x102c], edx
cmp dword [esi + 0x64], eax
jle 0x472e97
cmp ecx, 9
je 0x472e97
mov eax, dword [esi + 0x64]
mov edx, 9
mov dword [ebp - 0x102c], edx
cmp dword [esi + 0x60], eax
jle 0x472eaf
cmp ecx, 8
je 0x472eaf
mov eax, dword [esi + 0x60]
mov edx, 8
mov dword [ebp - 0x102c], edx
cmp dword [esi + 0x5c], eax
jle 0x472ec7
cmp ecx, 7
je 0x472ec7
mov eax, dword [esi + 0x5c]
mov edx, 7
mov dword [ebp - 0x102c], edx
cmp dword [esi + 0x58], eax
jle 0x472edf
cmp ecx, 6
je 0x472edf
mov eax, dword [esi + 0x58]
mov edx, 6
mov dword [ebp - 0x102c], edx
cmp dword [esi + 0x54], eax
jle 0x472ef7
cmp ecx, 5
je 0x472ef7
mov eax, dword [esi + 0x54]
mov edx, 5
mov dword [ebp - 0x102c], edx
cmp dword [esi + 0x50], eax
jle 0x472f0f
cmp ecx, 4
je 0x472f0f
mov eax, dword [esi + 0x50]
mov edx, 4
mov dword [ebp - 0x102c], edx
cmp dword [esi + 0x4c], eax
jle 0x472f27
cmp ecx, 3
je 0x472f27
mov eax, dword [esi + 0x4c]
mov edx, 3
mov dword [ebp - 0x102c], edx
cmp dword [esi + 0x48], eax
jle 0x472f3f
cmp ecx, 2
je 0x472f3f
mov eax, dword [esi + 0x48]
mov edx, 2
mov dword [ebp - 0x102c], edx
cmp dword [esi + 0x44], eax
jle 0x472f57
cmp ecx, 1
je 0x472f57
mov eax, dword [esi + 0x44]
mov edx, 1
mov dword [ebp - 0x102c], edx
cmp dword [esi + 0x40], eax
jle 0x472f68
test ecx, ecx
je 0x472f78
xor edx, edx
mov dword [ebp - 0x102c], edx
test ecx, ecx
jns 0x472f78
xor ecx, ecx
mov dword [esi + 0x34], ecx
mov dword [esi + 4], 1
imul eax, ecx, 0x13
lea ecx, [ebp - 0x418]
lea eax, [eax + 0x60f240]
cmp edx, 0xffffffff
jle 0x472fec
push ecx
push 0x5d00e0
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 0x472fa4
sub ecx, edx
lea eax, [ebp - 0x418]
add eax, ecx
push str.__WXZQPNS
push eax
call fcn.0043d360
lea ecx, [ebp - 0x418]
add esp, 8
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x472fd0
imul eax, dword [ebp - 0x102c], 0x13
sub ecx, edx
lea ecx, [ebp + ecx - 0x418]
add eax, 0x60f240
push ecx
push 0x5d00e0
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 0x473004
sub ecx, edx
lea eax, [ebp - 0x418]
add eax, ecx
push 0x5d28bc
push eax
call fcn.0043d360
add esp, 8
xor ecx, ecx
nop word [eax + eax]
lea eax, [ecx + ecx*8]
cmp dword [eax*8 + 0x60ea30], 0x40
jg 0x473049
mov eax, 6
inc ecx
cmp ecx, eax
jl 0x473030
jmp 0x47304c
lea eax, [ecx - 1]
xor edx, edx
lea ecx, [ebp - 0x418]
test eax, eax
cmovns edx, eax
mov eax, 5
cmp edx, eax
cmovg edx, eax
lea eax, [ecx + 1]
mov dword [ebp - 0x1014], eax
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x473070
sub ecx, dword [ebp - 0x1014]
lea eax, [edx + edx*8]
lea eax, [eax*8 + str.Dirk]
push eax
lea eax, [ebp - 0x418]
add eax, ecx
push eax
call fcn.0043d360
push 0x120
call fcn.0055644a
add esp, 0xc
mov dword [ebp - 0x1014], eax
mov byte [ebp - 4], 5
test eax, eax
je 0x4730c7
lea ecx, [ebp - 0x418]
push ecx
push 0
push 1
mov ecx, eax
call fcn.0050ce20
mov edx, eax
jmp 0x4730c9
xor edx, edx
mov ecx, dword [edx + 0x11c]
mov eax, dword [esi]
push edx
mov byte [ebp - 4], 0
mov dword [ecx], eax
mov eax, dword [ebp - 0x107c]
mov eax, dword [eax + 0x10c]
mov dword [edx + 0x10c], eax
mov eax, dword [esi + 0x10]
mov dword [ecx + 0x10], eax
mov eax, dword [esi + 0x14]
mov dword [ecx + 0x14], eax
mov eax, dword [esi + 0x18]
mov dword [ecx + 0x18], eax
mov eax, dword [esi + 4]
mov dword [ecx + 4], eax
mov dword [ecx + 8], 0x40a00000
mov eax, dword [esi + 0x20]
mov dword [ecx + 0x20], eax
mov eax, dword [esi + 0x2c]
mov dword [ecx + 0x2c], eax
mov eax, dword [esi + 0x28]
mov dword [ecx + 0x28], eax
mov eax, dword [esi + 0x24]
mov dword [ecx + 0x24], eax
mov eax, dword [esi + 0x30]
mov dword [ecx + 0x30], eax
mov eax, dword [esi + 0x34]
mov dword [ecx + 0x34], eax
mov eax, dword [esi + 0x40]
mov dword [ecx + 0x40], eax
mov eax, dword [esi + 0x44]
mov dword [ecx + 0x44], eax
mov eax, dword [esi + 0x48]
mov dword [ecx + 0x48], eax
mov eax, dword [esi + 0x4c]
mov dword [ecx + 0x4c], eax
mov eax, dword [esi + 0x50]
mov dword [ecx + 0x50], eax
mov eax, dword [esi + 0x54]
mov dword [ecx + 0x54], eax
mov eax, dword [esi + 0x58]
mov dword [ecx + 0x58], eax
mov eax, dword [esi + 0x5c]
mov dword [ecx + 0x5c], eax
mov eax, dword [esi + 0x60]
mov dword [ecx + 0x60], eax
mov eax, dword [esi + 0x64]
mov dword [ecx + 0x64], eax
mov eax, dword [esi + 0x68]
mov dword [ecx + 0x68], eax
mov eax, dword [esi + 0x6c]
mov dword [ecx + 0x6c], eax
mov eax, dword [esi + 0x70]
mov dword [ecx + 0x70], eax
mov eax, dword [esi + 0x74]
mov dword [ecx + 0x74], eax
mov eax, dword [esi + 0x78]
mov dword [ecx + 0x78], eax
mov eax, dword [esi + 0x1c]
mov dword [ecx + 0x1c], eax
imul ecx, dword [edi + 0x188], 0x980
mov ecx, dword [ecx + edi + 0x2d8]
call fcn.0050da70
lea eax, [ebp - 0x418]
push str.You_have_recovered_the_greatsword.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov esi, dword [ebp - 0x1028]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov ecx, dword [esi + 0x11c]
push edx
mov eax, dword [ecx]
mov eax, dword [eax + 4]
lea edx, [ebp - 0xfc8]
push 0
push edx
push 0x65
call eax
jmp 0x4741a1
movss xmm1, dword [ebp - 0x1030]
movss xmm2, dword [ebp - 0x1074]
movaps xmm0, xmm2
mulss xmm0, dword [0x5d3dac]
cvttss2si eax, xmm0
movaps xmm0, xmm2
mulss xmm0, dword [0x5d0bb4]
push eax
cvttss2si eax, xmm0
movss xmm0, dword [ebp - 0x103c]
divss xmm0, dword [0x5d0bd8]
push eax
divss xmm0, xmm1
mulss xmm0, xmm2
cvttss2si eax, xmm0
push eax
call fcn.0044cb60
xorps xmm0, xmm0
movsd xmm1, qword [0x5d3df8]
movups xmmword [ebp - 0xf10], xmm0
mov ecx, eax
add esp, 0xc
movups xmmword [ebp - 0xf00], xmm0
mov dword [ebp - 0x1014], ecx
movups xmmword [ebp - 0xef0], xmm0
mov dword [ebp - 0xeb0], 0
movups xmmword [ebp - 0xee0], xmm0
movups xmmword [ebp - 0xed0], xmm0
movups xmmword [ebp - 0xec0], xmm0
movd xmm0, dword [esi + 0x78]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esi + 0x78], eax
movd xmm0, dword [esi + 0x74]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esi + 0x74], eax
movd xmm0, dword [esi + 0x70]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esi + 0x70], eax
movd xmm0, dword [esi + 0x6c]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esi + 0x6c], eax
movd xmm0, dword [esi + 0x68]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esi + 0x68], eax
movd xmm0, dword [esi + 0x64]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esi + 0x64], eax
movd xmm0, dword [esi + 0x60]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esi + 0x60], eax
movd xmm0, dword [esi + 0x5c]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esi + 0x5c], eax
movd xmm0, dword [esi + 0x58]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esi + 0x58], eax
movd xmm0, dword [esi + 0x54]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esi + 0x54], eax
movd xmm0, dword [esi + 0x50]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm1
mov dword [ebp - 0x1074], 0
cvttsd2si eax, xmm0
mov dword [esi + 0x50], eax
movd xmm0, dword [esi + 0x4c]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esi + 0x4c], eax
movd xmm0, dword [esi + 0x48]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esi + 0x48], eax
movd xmm0, dword [esi + 0x44]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esi + 0x44], eax
movd xmm0, dword [esi + 0x40]
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [esi + 0x40], eax
test ecx, ecx
jle 0x473604
mov eax, dword [esi + 0x78]
test eax, eax
je 0x4733ea
dec eax
mov ecx, 0xf
mov dword [esi + 0x78], eax
jmp 0x473500
mov eax, dword [esi + 0x74]
test eax, eax
je 0x4733ff
dec eax
mov ecx, 0xe
mov dword [esi + 0x74], eax
jmp 0x473500
mov eax, dword [esi + 0x70]
test eax, eax
je 0x473414
dec eax
mov ecx, 0xd
mov dword [esi + 0x70], eax
jmp 0x473500
mov eax, dword [esi + 0x6c]
test eax, eax
je 0x473429
dec eax
mov ecx, 0xc
mov dword [esi + 0x6c], eax
jmp 0x473500
mov eax, dword [esi + 0x68]
test eax, eax
je 0x47343e
dec eax
mov ecx, 0xb
mov dword [esi + 0x68], eax
jmp 0x473500
mov eax, dword [esi + 0x64]
test eax, eax
je 0x473453
dec eax
mov ecx, 0xa
mov dword [esi + 0x64], eax
jmp 0x473500
mov eax, dword [esi + 0x60]
test eax, eax
je 0x473468
dec eax
mov ecx, 9
mov dword [esi + 0x60], eax
jmp 0x473500
mov eax, dword [esi + 0x5c]
test eax, eax
je 0x47347d
dec eax
mov ecx, 8
mov dword [esi + 0x5c], eax
jmp 0x473500
mov eax, dword [esi + 0x58]
test eax, eax
je 0x473492
dec eax
mov ecx, 7
mov dword [esi + 0x58], eax
jmp 0x473500
mov eax, dword [esi + 0x54]
test eax, eax
je 0x4734a4
dec eax
mov ecx, 6
mov dword [esi + 0x54], eax
jmp 0x473500
mov eax, dword [esi + 0x50]
test eax, eax
je 0x4734b6
dec eax
mov ecx, 5
mov dword [esi + 0x50], eax
jmp 0x473500
mov eax, dword [esi + 0x4c]
test eax, eax
je 0x4734c8
dec eax
mov ecx, 4
mov dword [esi + 0x4c], eax
jmp 0x473500
mov eax, dword [esi + 0x48]
test eax, eax
je 0x4734da
dec eax
mov ecx, 3
mov dword [esi + 0x48], eax
jmp 0x473500
mov eax, dword [esi + 0x44]
test eax, eax
je 0x4734ec
dec eax
mov ecx, 2
mov dword [esi + 0x44], eax
jmp 0x473500
mov eax, dword [esi + 0x40]
test eax, eax
je 0x473604
dec eax
mov ecx, 1
mov dword [esi + 0x40], eax
imul eax, ecx, 0x13
mov dword [ebp - 0x104c], ecx
lea eax, [eax + 0x60f22d]
push eax
lea eax, [ebp - 0x418]
push str._s_Ingot
push eax
call fcn.0043d360
push 0x120
call fcn.0055644a
add esp, 0x10
mov dword [ebp - 0x1084], eax
mov byte [ebp - 4], 6
test eax, eax
je 0x473550
lea ecx, [ebp - 0x418]
push ecx
push 0
push 4
mov ecx, eax
call fcn.0050ce20
jmp 0x473552
xor eax, eax
mov edx, dword [eax + 0x11c]
mov dword [ebp - 0x1010], eax
mov eax, dword [ebp - 0x104c]
mov byte [ebp - 4], 0
movd xmm0, eax
lea ecx, [eax + eax*2]
cvtdq2ps xmm0, xmm0
movss dword [edx + 0xc], xmm0
movss dword [edx + 0x10], xmm0
mov eax, dword [ecx*4 + 0x60f3cc]
mov dword [edx], eax
mov eax, dword [ecx*4 + 0x60f3d0]
mov dword [edx + 4], eax
mov eax, dword [ecx*4 + 0x60f3d4]
mov ecx, dword [ebp - 0x1010]
mov dword [edx + 8], eax
mov eax, dword [ebp - 0x104c]
push ecx
mov dword [ecx + 0x108], 0x3f800000
movd xmm0, dword [eax*4 + 0x60f398]
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.0050da70
mov ecx, dword [ebp - 0x1074]
inc ecx
mov dword [ebp - 0x1074], ecx
cmp ecx, dword [ebp - 0x1014]
jl 0x4733d5
mov edi, dword [ebp - 0x1028]
lea eax, [ebp - 0xf10]
mov esi, 0x60f240
mov dword [ebp - 0x1010], eax
nop dword [eax + eax]
mov ecx, dword [eax]
test ecx, ecx
jle 0x47367b
push esi
push ecx
lea eax, [ebp - 0x418]
push str.You_recover__d__s_Ingots.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov ecx, dword [edi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x20
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
mov eax, dword [ebp - 0x1010]
add eax, 4
add esi, 0x13
mov dword [ebp - 0x1010], eax
cmp esi, 0x60f41b
jl 0x473620
movss xmm2, dword [ebp - 0x103c]
divss xmm2, dword [0x5d0bb8]
mov esi, dword [ebp - 0x102c]
mov dword [ebp - 0x1034], 0
movd xmm1, dword [esi + 0x24]
divss xmm2, dword [ebp - 0x1030]
cvtdq2ps xmm1, xmm1
movss dword [ebp - 0x1040], xmm2
movaps xmm0, xmm1
mulss xmm0, dword [0x5d3dac]
cvttss2si eax, xmm0
movaps xmm0, xmm1
mulss xmm0, dword [0x5d3d9c]
push eax
cvttss2si eax, xmm0
movaps xmm0, xmm2
mulss xmm0, xmm1
push eax
cvttss2si eax, xmm0
push eax
call fcn.0044cb60
mov edi, dword [ebp - 0x106c]
add esp, 0xc
movd xmm0, eax
mov eax, dword [esi + 0x24]
cvtdq2ps xmm0, xmm0
mov dword [ebp - 0x1024], eax
comiss xmm0, dword [0x5d0048]
movss dword [ebp - 0x1014], xmm0
jb 0x47380b
push 0x120
call fcn.0055644a
add esp, 4
mov dword [ebp - 0x1010], eax
mov byte [ebp - 4], 7
test eax, eax
je 0x473755
push 0x5d174c
push 0
push 8
mov ecx, eax
call fcn.0050ce20
mov ecx, eax
jmp 0x473757
xor ecx, ecx
mov eax, dword [ecx + 0x11c]
cvttss2si esi, dword [ebp - 0x1014]
push ecx
mov byte [ebp - 4], 0
mov dword [eax], 3
mov dword [eax + 4], 1
mov dword [ecx + 0x108], 0
mov dword [ecx + 0x10c], 0x447a0000
mov dword [ecx + 0x118], esi
imul ecx, dword [edi + 0x188], 0x980
mov ecx, dword [ecx + edi + 0x2d8]
call fcn.0050da70
push esi
lea eax, [ebp - 0x418]
mov dword [ebp - 0x1034], 1
push str.You_recover__d_Glowing_White_Dust.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov eax, dword [ebp - 0x1028]
lea edx, [ebp - 0x105c]
add esp, 0x1c
mov ecx, dword [eax + 0x11c]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
mov esi, dword [ebp - 0x102c]
movd xmm1, dword [esi + 0x28]
cvtdq2ps xmm1, xmm1
movaps xmm0, xmm1
mulss xmm0, dword [0x5d3dac]
cvttss2si eax, xmm0
movaps xmm0, xmm1
mulss xmm1, dword [ebp - 0x1040]
push eax
mulss xmm0, dword [0x5d3d9c]
cvttss2si eax, xmm0
push eax
cvttss2si eax, xmm1
push eax
call fcn.0044cb60
add esp, 0xc
movd xmm0, eax
mov eax, dword [ebp - 0x1024]
add eax, dword [esi + 0x28]
cvtdq2ps xmm0, xmm0
mov dword [ebp - 0x1024], eax
comiss xmm0, dword [0x5d0048]
movss dword [ebp - 0x1014], xmm0
jb 0x473958
push 0x120
call fcn.0055644a
add esp, 4
mov dword [ebp - 0x1010], eax
mov byte [ebp - 4], 8
test eax, eax
je 0x4738a2
push 0x5d1724
push 0
push 8
mov ecx, eax
call fcn.0050ce20
mov ecx, eax
jmp 0x4738a4
xor ecx, ecx
mov eax, dword [ecx + 0x11c]
cvttss2si esi, dword [ebp - 0x1014]
push ecx
mov byte [ebp - 4], 0
mov dword [eax], 4
mov dword [eax + 4], 1
mov dword [ecx + 0x108], 0
mov dword [ecx + 0x10c], 0x447a0000
mov dword [ecx + 0x118], esi
imul ecx, dword [edi + 0x188], 0x980
mov ecx, dword [ecx + edi + 0x2d8]
call fcn.0050da70
push esi
lea eax, [ebp - 0x418]
mov dword [ebp - 0x1034], 1
push str.You_recover__d_Glowing_Red_Dust.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov eax, dword [ebp - 0x1028]
lea edx, [ebp - 0x105c]
add esp, 0x1c
mov ecx, dword [eax + 0x11c]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
mov esi, dword [ebp - 0x102c]
movd xmm1, dword [esi + 0x2c]
cvtdq2ps xmm1, xmm1
movaps xmm0, xmm1
mulss xmm0, dword [0x5d3dac]
cvttss2si eax, xmm0
movaps xmm0, xmm1
mulss xmm1, dword [ebp - 0x1040]
push eax
mulss xmm0, dword [0x5d3d9c]
cvttss2si eax, xmm0
push eax
cvttss2si eax, xmm1
push eax
call fcn.0044cb60
add esp, 0xc
movd xmm0, eax
mov eax, dword [ebp - 0x1024]
add eax, dword [esi + 0x2c]
cvtdq2ps xmm0, xmm0
mov dword [ebp - 0x1024], eax
comiss xmm0, dword [0x5d0048]
movss dword [ebp - 0x1014], xmm0
jb 0x473aa5
push 0x120
call fcn.0055644a
add esp, 4
mov dword [ebp - 0x1010], eax
mov byte [ebp - 4], 9
test eax, eax
je 0x4739ef
push 0x5d1738
push 0
push 8
mov ecx, eax
call fcn.0050ce20
mov ecx, eax
jmp 0x4739f1
xor ecx, ecx
mov eax, dword [ecx + 0x11c]
cvttss2si esi, dword [ebp - 0x1014]
push ecx
mov byte [ebp - 4], 0
mov dword [eax], 0
mov dword [eax + 4], 1
mov dword [ecx + 0x108], 0
mov dword [ecx + 0x10c], 0x447a0000
mov dword [ecx + 0x118], esi
imul ecx, dword [edi + 0x188], 0x980
mov ecx, dword [ecx + edi + 0x2d8]
call fcn.0050da70
push esi
lea eax, [ebp - 0x418]
mov dword [ebp - 0x1034], 1
push str.You_recover__d_Glowing_Green_Dust.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov eax, dword [ebp - 0x1028]
lea edx, [ebp - 0x105c]
add esp, 0x1c
mov ecx, dword [eax + 0x11c]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
mov esi, dword [ebp - 0x102c]
movd xmm1, dword [esi + 0x20]
cvtdq2ps xmm1, xmm1
movaps xmm0, xmm1
mulss xmm0, dword [0x5d3dac]
cvttss2si eax, xmm0
movaps xmm0, xmm1
mulss xmm1, dword [ebp - 0x1040]
push eax
mulss xmm0, dword [0x5d3d9c]
cvttss2si eax, xmm0
push eax
cvttss2si eax, xmm1
push eax
call fcn.0044cb60
add esp, 0xc
movd xmm0, eax
mov eax, dword [ebp - 0x1024]
add eax, dword [esi + 0x20]
cvtdq2ps xmm0, xmm0
mov dword [ebp - 0x1024], eax
comiss xmm0, dword [0x5d0048]
movss dword [ebp - 0x1014], xmm0
jb 0x473bf2
push 0x120
call fcn.0055644a
add esp, 4
mov dword [ebp - 0x1010], eax
mov byte [ebp - 4], 0xa
test eax, eax
je 0x473b3c
push 0x5d1760
push 0
push 8
mov ecx, eax
call fcn.0050ce20
mov ecx, eax
jmp 0x473b3e
xor ecx, ecx
mov eax, dword [ecx + 0x11c]
cvttss2si esi, dword [ebp - 0x1014]
push ecx
mov byte [ebp - 4], 0
mov dword [eax], 2
mov dword [eax + 4], 1
mov dword [ecx + 0x108], 0
mov dword [ecx + 0x10c], 0x447a0000
mov dword [ecx + 0x118], esi
imul ecx, dword [edi + 0x188], 0x980
mov ecx, dword [ecx + edi + 0x2d8]
call fcn.0050da70
push esi
lea eax, [ebp - 0x418]
mov dword [ebp - 0x1034], 1
push str.You_recover__d_Glowing_Black_Dust.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov eax, dword [ebp - 0x1028]
lea edx, [ebp - 0x105c]
add esp, 0x1c
mov ecx, dword [eax + 0x11c]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
mov esi, dword [ebp - 0x102c]
mov eax, dword [esi + 0x34]
push eax
movd xmm1, eax
cvtdq2ps xmm1, xmm1
movaps xmm0, xmm1
mulss xmm1, dword [ebp - 0x1040]
mulss xmm0, dword [0x5d3d9c]
cvttss2si eax, xmm0
push eax
cvttss2si eax, xmm1
push eax
call fcn.0044cb60
add esp, 0xc
movd xmm0, eax
mov eax, dword [ebp - 0x1024]
add eax, dword [esi + 0x34]
cvtdq2ps xmm0, xmm0
mov dword [ebp - 0x1024], eax
comiss xmm0, dword [0x5d0048]
movss dword [ebp - 0x1014], xmm0
jb 0x473d32
push 0x120
call fcn.0055644a
add esp, 4
mov dword [ebp - 0x1010], eax
mov byte [ebp - 4], 0xb
test eax, eax
je 0x473c7c
push 0x5d2c94
push 0
push 8
mov ecx, eax
call fcn.0050ce20
mov ecx, eax
jmp 0x473c7e
xor ecx, ecx
mov eax, dword [ecx + 0x11c]
cvttss2si esi, dword [ebp - 0x1014]
push ecx
mov byte [ebp - 4], 0
mov dword [eax], 0xe
mov dword [eax + 4], 1
mov dword [ecx + 0x108], 0
mov dword [ecx + 0x10c], 0x447a0000
mov dword [ecx + 0x118], esi
imul ecx, dword [edi + 0x188], 0x980
mov ecx, dword [ecx + edi + 0x2d8]
call fcn.0050da70
push esi
lea eax, [ebp - 0x418]
mov dword [ebp - 0x1034], 1
push str.You_recover__d_Glowing_Gold_Dust.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov eax, dword [ebp - 0x1028]
lea edx, [ebp - 0x105c]
add esp, 0x1c
mov ecx, dword [eax + 0x11c]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
mov esi, dword [ebp - 0x102c]
cmp dword [esi + 0x3c], 1
mov eax, dword [esi + 4]
jne 0x473d52
add eax, 0xffffffeb
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movaps xmm1, xmm0
mulss xmm1, dword [ebp - 0x1040]
jmp 0x473d66
movss xmm1, dword [ebp - 0x1040]
dec eax
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm1, xmm0
movaps xmm2, xmm0
mulss xmm0, dword [0x5d16d8]
mulss xmm2, dword [0x5d3da4]
cvttss2si eax, xmm2
push eax
cvttss2si eax, xmm0
push eax
cvttss2si eax, xmm1
push eax
call fcn.0044cb60
add esp, 0xc
movd xmm0, eax
mov eax, dword [ebp - 0x1024]
cvtdq2ps xmm0, xmm0
cvttss2si ecx, xmm0
add eax, ecx
mov dword [ebp - 0x1010], ecx
comiss xmm0, dword [0x5d0048]
mov dword [ebp - 0x1024], eax
jb 0x473ea4
push 0x120
call fcn.0055644a
add esp, 4
mov dword [ebp - 0x1014], eax
mov byte [ebp - 4], 0xc
test eax, eax
je 0x473deb
push 0x5d1710
push 0
push 8
mov ecx, eax
call fcn.0050ce20
mov ecx, eax
jmp 0x473ded
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.0050da70
push dword [ebp - 0x1010]
lea eax, [ebp - 0x418]
mov dword [ebp - 0x1034], 1
push str.You_recover__d_Glowing_Blue_Dust.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov eax, dword [ebp - 0x1028]
lea edx, [ebp - 0x105c]
add esp, 0x1c
mov ecx, dword [eax + 0x11c]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
mov eax, dword [ebp - 0x1024]
movss xmm0, dword [ebp - 0x103c]
divss xmm0, dword [0x5d1b74]
add eax, dword [esi + 0x30]
mov dword [ebp - 0x1024], eax
push 1
push 0
divss xmm0, dword [ebp - 0x1030]
cvttss2si eax, xmm0
push eax
call fcn.0044cb60
mov ecx, dword [esi + 0x38]
add esp, 0xc
xor edx, edx
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x1010], xmm0
cmp ecx, 0x2710
jl 0x473f0c
add ecx, 0xffffd8f0
mov eax, 0x68db8bad
imul ecx
sar edx, 0xa
mov eax, edx
add edx, 5
shr eax, 0x1f
add edx, eax
xor ecx, ecx
cmp dword [ebp - 0x1024], 5
cmovge ecx, edx
cmp dword [ebp - 0x1024], 0xe
mov dword [ebp - 0x101c], ecx
jle 0x473f3a
mov dword [ebp - 0x101c], ecx
test ecx, ecx
je 0x473f3a
lea eax, [ecx + 0xa]
mov dword [ebp - 0x101c], eax
call fcn.00565b3a
movss xmm0, dword [ebp - 0x1010]
mov ecx, 0x64
cdq
xorps xmm1, xmm1
idiv ecx
comiss xmm0, xmm1
jbe 0x4740bc
cmp dword [esi + 0x38], 0x2710
jl 0x4740bc
cmp dword [ebp - 0x1034], 0
je 0x4740bc
cmp edx, dword [ebp - 0x101c]
jge 0x4740bc
movss xmm0, dword [ebp - 0x1020]
comiss xmm0, dword [0x5d3e60]
jb 0x4740bc
call fcn.00565b3a
mov esi, eax
and esi, 0x80000007
jns 0x473faa
dec esi
or esi, 0xfffffff8
inc esi
push 0x120
add esi, 5
call fcn.0055644a
add esp, 4
mov dword [ebp - 0x1014], eax
mov byte [ebp - 4], 0xd
test eax, eax
je 0x473fe3
mov ecx, esi
shl ecx, 6
add ecx, str.Glowing_Green_Dust
push ecx
push 0
push 8
mov ecx, eax
call fcn.0050ce20
mov ecx, eax
jmp 0x473fe5
xor ecx, ecx
mov eax, dword [ecx + 0x11c]
mov dword [eax], esi
mov dword [eax + 4], 1
mov dword [ecx + 0x108], 0
mov dword [ecx + 0x10c], 0x447a4000
mov dword [ecx + 0x118], 1
push ecx
imul ecx, dword [edi + 0x188], 0x980
mov byte [ebp - 4], 0
mov ecx, dword [ecx + edi + 0x2d8]
call fcn.0050da70
lea eax, [ebp - 0x418]
push str.You_find_something_special_inside_the_weapon.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov esi, dword [ebp - 0x1028]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov ecx, dword [esi + 0x11c]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
imul eax, dword [edi + 0x188], 0x980
add eax, 0x2a0
add eax, edi
push eax
lea eax, [ebp - 0x418]
push str._s_got_a_shard_n
push eax
call fcn.0043d360
lea eax, [ebp - 0x418]
push eax
push str.ShardCreationLog.txt
call fcn.0049eb10
add esp, 0x14
jmp 0x4741a1
mov eax, dword [0x62ca90]
cmp dword [eax + 0x7c], 0
je 0x47419b
call fcn.00565b3a
movss xmm0, dword [ebp - 0x1010]
mov ecx, 0xa
cdq
xorps xmm1, xmm1
idiv ecx
comiss xmm0, xmm1
jbe 0x47419b
cmp dword [esi + 0x38], 0x2710
jl 0x47419b
cmp dword [ebp - 0x1034], 0
je 0x47419b
cmp edx, 1
jne 0x47419b
movss xmm0, dword [ebp - 0x1064]
comiss xmm0, dword [0x5d3e64]
jb 0x47419b
call fcn.00565b3a
mov esi, eax
and esi, 0x80000007
jns 0x474138
dec esi
or esi, 0xfffffff8
inc esi
push 0x120
add esi, 5
call fcn.0055644a
add esp, 4
mov dword [ebp - 0x1014], eax
mov byte [ebp - 4], 0xe
test eax, eax
je 0x474171
mov ecx, esi
shl ecx, 6
add ecx, str.Glowing_Green_Dust
push ecx
push 0
push 8
mov ecx, eax
call fcn.0050ce20
mov ecx, eax
jmp 0x474173
xor ecx, ecx
mov eax, dword [ecx + 0x11c]
mov dword [eax], esi
mov dword [eax + 4], 1
mov dword [ecx + 0x108], 0
mov dword [ecx + 0x10c], 0x447a0000
jmp 0x474008
mov esi, dword [ebp - 0x1028]
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e020
mov dword [ebp - 0x1014], eax
test eax, eax
je 0x47424e
mov esi, eax
nop word [eax + eax]
cmp dword [ebp - 0x107c], esi
jne 0x474229
mov eax, dword [esi + 0x118]
cmp eax, 1
jle 0x4741ec
dec eax
mov dword [esi + 0x118], eax
jmp 0x474210
imul eax, dword [edi + 0x188], 0x980
push esi
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e210
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e090
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e0d0
mov esi, eax
test esi, esi
jne 0x4741d0
mov esi, dword [ebp - 0x1028]
lea eax, [ebp - 0x418]
push str.You_dismantle_the_weapon.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
mov esi, dword [ebp - 0x1044]
mov ecx, dword [esi + 0xc]
mov eax, dword [esi + 8]
test ecx, ecx
ja 0x47b566
jb 0x4742bc
cmp eax, 0x7530
jae 0x47b566
movss xmm1, dword [ebp - 0x103c]
movaps xmm0, xmm1
movss xmm2, dword [ebp - 0x1030]
divss xmm0, dword [0x5d0bb8]
comiss xmm2, xmm0
jbe 0x47b566
mov eax, dword [0x62ca90]
mov edx, dword [esi + 4]
mov ecx, dword [esi]
movd xmm0, dword [eax + 0x98]
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
movss dword [ebp - 0x1014], xmm0
call fcn.00556830
movss xmm1, dword [ebp - 0x1014]
cvtsd2ss xmm0, xmm0
addss xmm1, xmm0
xorps xmm0, xmm0
movlpd qword [ebp - 0x1018], xmm0
movss xmm0, dword [0x5d3e90]
comiss xmm1, xmm0
jb 0x474359
subss xmm1, xmm0
comiss xmm0, xmm1
jbe 0x474359
mov eax, dword [ebp - 0x1018]
add eax, 0
mov dword [ebp - 0x1010], eax
mov eax, dword [ebp - 0x1014]
adc eax, 0x80000000
mov dword [ebp - 0x1074], eax
jmp 0x474371
mov eax, dword [ebp - 0x1014]
mov dword [ebp - 0x1074], eax
mov eax, dword [ebp - 0x1018]
mov dword [ebp - 0x1010], eax
movaps xmm0, xmm1
call fcn.005565b0
mov edi, eax
mov eax, edx
add edi, dword [ebp - 0x1010]
mov dword [esi], edi
adc eax, dword [ebp - 0x1074]
mov dword [esi + 4], eax
mov ecx, dword [esi + 0xc]
push ecx
mov dword [ebp - 0x101c], eax
mov eax, dword [esi + 8]
push eax
push ecx
push eax
call fcn.005575c0
mov esi, eax
mov ecx, edx
shld ecx, esi, 4
shl esi, 4
sub esi, eax
sbb ecx, edx
shld ecx, esi, 1
add esi, esi
cmp ecx, dword [ebp - 0x101c]
ja 0x47b566
jb 0x4743ce
cmp esi, edi
ja 0x47b566
mov ecx, 0x88888889
mov eax, edi
mul ecx
mov esi, edx
mov dword [ebp - 0x1018], eax
mov eax, edi
mov edx, 0x88888888
mul edx
mov edi, eax
mov dword [ebp - 0x1064], edx
mov eax, dword [ebp - 0x101c]
mul ecx
mov dword [ebp - 0x1014], edx
mov ecx, eax
mov eax, dword [ebp - 0x101c]
mov edx, 0x88888888
mul edx
add ecx, esi
mov dword [ebp - 0x1074], edx
mov edx, dword [ebp - 0x1014]
adc edx, 0
mov dword [ebp - 0x1010], eax
mov esi, eax
add edi, ecx
mov ecx, dword [ebp - 0x1064]
adc ecx, 0
mov dword [ebp - 0x1018], edi
xor eax, eax
add edx, ecx
mov ecx, dword [ebp - 0x1074]
adc eax, eax
add esi, edx
adc ecx, eax
shrd esi, ecx, 4
shr ecx, 4
mov edx, ecx
mov ecx, esi
call fcn.00556830
xorps xmm1, xmm1
ucomisd xmm1, xmm0
ja 0x474466
sqrtsd xmm0, xmm0
jmp 0x47446b
call fcn.00592a30
movaps xmm1, xmm0
xorps xmm0, xmm0
addsd xmm1, qword [0x5d0050]
movlpd qword [ebp - 0x1018], xmm0
movsd xmm0, qword [0x5d3e78]
comisd xmm1, xmm0
jb 0x4744b0
subsd xmm1, xmm0
comisd xmm0, xmm1
jbe 0x4744b0
mov esi, dword [ebp - 0x1018]
mov edi, dword [ebp - 0x1014]
add esi, 0
adc edi, 0x80000000
jmp 0x4744bc
mov edi, dword [ebp - 0x1014]
mov esi, dword [ebp - 0x1018]
movaps xmm0, xmm1
call fcn.00556780
mov ecx, dword [ebp - 0x1044]
add eax, esi
push str.You_gained_a_skill_level__
adc edx, edi
mov dword [ecx + 8], eax
lea eax, [ebp - 0x418]
push eax
mov dword [ecx + 0xc], edx
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov ecx, dword [ebp - 0x106c]
imul eax, dword [ecx + 0x188], 0x980
movss xmm0, dword [eax + ecx + 0x300]
addss xmm0, dword [0x5d3d88]
movss dword [eax + ecx + 0x300], xmm0
mov eax, dword [ebp - 0x1028]
mov ecx, dword [eax + 0x11c]
jmp 0x47b54a
push str.Put_a_weapon_in_the_workbench_to_dismantle_it.
jmp 0x47b51e
mov ecx, 0x5d2d64
lea eax, [edi + 0x260]
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x474570
test dl, dl
je 0x47456c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x474570
add eax, 2
add ecx, 2
test dl, dl
jne 0x474550
xor eax, eax
jmp 0x474575
sbb eax, eax
or eax, 1
test eax, eax
jne 0x474f7f
mov dword [ebp - 0x1040], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e020
test eax, eax
je 0x474f75
xor esi, esi
cmp dword [eax + 0x110], 0xd
jne 0x4745d4
add esi, dword [eax + 0x118]
mov dword [ebp - 0x1040], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e090
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e0d0
test eax, eax
jne 0x4745a6
cmp esi, 1
mov esi, dword [ebp - 0x1028]
jl 0x474f75
mov eax, dword [ebp - 0x1040]
cmp dword [eax + 0x118], 1
mov ecx, dword [eax + 0x11c]
mov dword [ebp - 0x1020], ecx
jle 0x4746b1
push 0x120
call fcn.0055644a
add esp, 4
mov dword [ebp - 0x1014], eax
mov byte [ebp - 4], 0xf
test eax, eax
je 0x474654
push str.UNNAMED
push 0
push 0
mov ecx, eax
call fcn.0050ce20
mov edx, eax
mov dword [ebp - 0x1010], eax
jmp 0x47465c
xor edx, edx
mov dword [ebp - 0x1010], edx
mov ecx, dword [ebp - 0x1040]
push edx
mov byte [ebp - 4], 0
mov eax, dword [ecx]
mov eax, dword [eax + 0x18]
call eax
mov ecx, dword [ebp - 0x1040]
mov edx, dword [ebp - 0x1010]
push edx
mov eax, dword [ecx + 0x118]
dec eax
mov dword [edx + 0x118], eax
mov dword [ecx + 0x118], 1
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e130
mov ecx, dword [ebp - 0x1020]
movss xmm1, dword [0x5d0048]
divss xmm1, dword [ecx + 4]
mov eax, dword [ecx + 0xc]
inc eax
mov dword [ebp - 0x1034], 0
movd xmm0, eax
imul eax, dword [edi + 0x188], 0x980
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [ecx]
mov ecx, dword [eax + edi + 0x2e0]
add ecx, 8
mulss xmm1, xmm0
movss dword [ebp - 0x101c], xmm1
call fcn.0044e020
mov dword [ebp - 0x1014], eax
test eax, eax
je 0x4723cb
mov esi, eax
nop dword [eax]
mov ecx, esi
call fcn.0044c8e0
lea ecx, [edi + 0x260]
nop dword [eax]
mov dl, byte [ecx]
cmp dl, byte [eax]
jne 0x474740
test dl, dl
je 0x47473c
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x474740
add ecx, 2
add eax, 2
test dl, dl
jne 0x474720
xor eax, eax
jmp 0x474745
sbb eax, eax
or eax, 1
test eax, eax
jne 0x474755
mov eax, dword [esi + 0x11c]
mov dword [ebp - 0x1034], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e0]
add ecx, 8
call fcn.0044e0d0
mov esi, eax
test esi, esi
jne 0x474710
mov esi, dword [ebp - 0x1028]
cmp dword [ebp - 0x1034], eax
je 0x4723cb
mov ecx, edi
call fcn.0047bec0
mov ecx, dword [ebp - 0x1034]
cdq
push dword [ecx + 0xc]
push dword [ecx + 8]
push edx
push eax
call fcn.005575c0
mov ecx, eax
call fcn.00556830
cvtsd2ss xmm0, xmm0
sub esp, 8
mov dword [esp + 4], 0x3f8ccccd
movss dword [ebp - 0x1014], xmm0
mov dword [esp], 0x3f666666
call fcn.0048da70
fmul dword [ebp - 0x1014]
add esp, 8
mov ecx, 0x62d4e8
push esi
fmul dword [0x5d3e38]
push 1
fstp dword [ebp - 0x1010]
call fcn.0052e910
test eax, eax
je 0x474820
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.0052f3e0
test eax, eax
je 0x474820
movss xmm0, dword [ebp - 0x1010]
mulss xmm0, dword [0x5d3db4]
jmp 0x474828
movss xmm0, dword [ebp - 0x1010]
push esi
push 0
mov ecx, 0x62d4e8
movss dword [ebp - 0x1030], xmm0
call fcn.0052e910
test eax, eax
je 0x474876
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.0052f3e0
test eax, eax
je 0x474876
movss xmm0, dword [ebp - 0x1030]
mulss xmm0, dword [0x5d3db4]
movss dword [ebp - 0x1030], xmm0
push esi
push 2
mov ecx, 0x62d4e8
call fcn.0052e910
test eax, eax
je 0x4748be
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.0052f3e0
movss xmm1, dword [ebp - 0x1030]
test eax, eax
je 0x4748c6
mulss xmm1, dword [0x5d3db4]
movss dword [ebp - 0x1030], xmm1
jmp 0x4748c6
movss xmm1, dword [ebp - 0x1030]
mov eax, dword [edi + 0x14f60]
test eax, eax
jle 0x4748f3
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x5d3d8c]
addss xmm0, dword [0x5d0048]
mulss xmm0, xmm1
movss dword [ebp - 0x1030], xmm0
movss xmm0, dword [ebp - 0x101c]
lea eax, [ebp - 0x418]
cvtps2pd xmm0, xmm0
sub esp, 8
movsd qword [esp], xmm0
push str.This_bombs_difficulty_is__4.2f.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x20
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
movss xmm0, dword [ebp - 0x1030]
lea eax, [ebp - 0x418]
cvtps2pd xmm0, xmm0
sub esp, 8
movsd qword [esp], xmm0
push str.Your_work_value_was__4.2f.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x20
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
movss xmm0, dword [ebp - 0x1030]
movss xmm1, dword [ebp - 0x101c]
comiss xmm0, xmm1
jb 0x474b71
mov eax, dword [ebp - 0x1040]
movss xmm0, dword [eax + 0x10c]
mov eax, dword [ebp - 0x1020]
addss xmm0, xmm0
mov eax, dword [eax + 0xc]
lea eax, [eax + eax*4]
add eax, eax
movd xmm1, eax
imul eax, dword [edi + 0x188], 0x980
cvtdq2ps xmm1, xmm1
addss xmm1, xmm0
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
movss dword [ebp - 0x1064], xmm1
call fcn.0044e020
mov dword [ebp - 0x1014], eax
test eax, eax
je 0x474aa6
mov esi, eax
cmp dword [ebp - 0x1040], esi
jne 0x474a81
mov eax, dword [esi + 0x118]
cmp eax, 1
jle 0x474a44
dec eax
mov dword [esi + 0x118], eax
jmp 0x474a68
imul eax, dword [edi + 0x188], 0x980
push esi
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e210
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e090
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e0d0
mov esi, eax
test esi, esi
jne 0x474a28
mov esi, dword [ebp - 0x1028]
push 0x120
call fcn.0055644a
add esp, 4
mov dword [ebp - 0x1014], eax
mov byte [ebp - 4], 0x10
test eax, eax
je 0x474ad3
push str.Disarmed_Bomb
push 0
push 0
mov ecx, eax
call fcn.0050ce20
jmp 0x474ad5
xor eax, eax
movss xmm0, dword [ebp - 0x1064]
mov dword [eax + 0x108], 0x3f800000
movss dword [eax + 0x10c], xmm0
mov dword [eax + 0x118], 1
imul ecx, dword [edi + 0x188], 0x980
push eax
mov byte [ebp - 4], 0
mov ecx, dword [ecx + edi + 0x2d8]
call fcn.0050da70
lea eax, [ebp - 0x418]
push str.You_disarmed_the_bomb.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
movss xmm0, dword [ebp - 0x1030]
movss xmm1, dword [ebp - 0x101c]
mov ecx, dword [ebp - 0x1034]
mov edx, dword [ecx + 0xc]
mov eax, dword [ecx + 8]
mov dword [ebp - 0x1074], eax
mov dword [ebp - 0x1064], edx
test edx, edx
ja 0x474dcd
jb 0x474b9e
cmp eax, 0x7530
jae 0x474dcd
comiss xmm0, xmm1
jb 0x474dcd
mov eax, dword [0x62ca90]
mov edx, dword [ecx + 4]
mov ecx, dword [ecx]
movd xmm0, dword [eax + 0x9c]
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
movss dword [ebp - 0x1014], xmm0
call fcn.00556830
movss xmm1, dword [ebp - 0x1014]
cvtsd2ss xmm0, xmm0
addss xmm1, xmm0
xorps xmm0, xmm0
movlpd qword [ebp - 0x1018], xmm0
movss xmm0, dword [0x5d3e90]
comiss xmm1, xmm0
jb 0x474c14
subss xmm1, xmm0
comiss xmm0, xmm1
jbe 0x474c14
mov esi, dword [ebp - 0x1018]
mov eax, dword [ebp - 0x1014]
add esi, 0
adc eax, 0x80000000
jmp 0x474c20
mov eax, dword [ebp - 0x1014]
mov esi, dword [ebp - 0x1018]
movaps xmm0, xmm1
mov dword [ebp - 0x1010], eax
call fcn.005565b0
mov edi, eax
mov ecx, edx
mov eax, dword [ebp - 0x1034]
add edi, esi
adc ecx, dword [ebp - 0x1010]
mov dword [ebp - 0x101c], ecx
mov dword [eax], edi
mov dword [eax + 4], ecx
mov ecx, dword [ebp - 0x1064]
mov eax, dword [ebp - 0x1074]
push ecx
push eax
push ecx
push eax
call fcn.005575c0
mov esi, eax
mov ecx, edx
shld ecx, esi, 4
shl esi, 4
sub esi, eax
sbb ecx, edx
shld ecx, esi, 1
add esi, esi
cmp ecx, dword [ebp - 0x101c]
ja 0x47b566
jb 0x474c8b
cmp esi, edi
ja 0x47b566
mov ecx, 0x88888889
mov eax, edi
mul ecx
mov esi, edx
mov dword [ebp - 0x1018], eax
mov eax, edi
mov edx, 0x88888888
mul edx
mov edi, eax
mov dword [ebp - 0x1064], edx
mov eax, dword [ebp - 0x101c]
mul ecx
mov dword [ebp - 0x1014], edx
mov ecx, eax
mov eax, dword [ebp - 0x101c]
mov edx, 0x88888888
mul edx
add ecx, esi
mov dword [ebp - 0x1074], edx
mov edx, dword [ebp - 0x1014]
adc edx, 0
mov dword [ebp - 0x1010], eax
mov esi, eax
add edi, ecx
mov ecx, dword [ebp - 0x1064]
adc ecx, 0
mov dword [ebp - 0x1018], edi
xor eax, eax
add edx, ecx
mov ecx, dword [ebp - 0x1074]
adc eax, eax
add esi, edx
adc ecx, eax
shrd esi, ecx, 4
shr ecx, 4
mov edx, ecx
mov ecx, esi
call fcn.00556830
xorps xmm1, xmm1
ucomisd xmm1, xmm0
ja 0x474d23
sqrtsd xmm0, xmm0
jmp 0x474d28
call fcn.00592a30
movaps xmm1, xmm0
xorps xmm0, xmm0
addsd xmm1, qword [0x5d0050]
movlpd qword [ebp - 0x1018], xmm0
movsd xmm0, qword [0x5d3e78]
comisd xmm1, xmm0
jb 0x474d6d
subsd xmm1, xmm0
comisd xmm0, xmm1
jbe 0x474d6d
mov esi, dword [ebp - 0x1018]
mov edi, dword [ebp - 0x1014]
add esi, 0
adc edi, 0x80000000
jmp 0x474d79
mov edi, dword [ebp - 0x1014]
mov esi, dword [ebp - 0x1018]
movaps xmm0, xmm1
call fcn.00556780
mov ecx, dword [ebp - 0x1034]
add eax, esi
push str.You_gained_a_skill_level__
adc edx, edi
mov dword [ecx + 8], eax
lea eax, [ebp - 0x418]
push eax
mov dword [ecx + 0xc], edx
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov eax, dword [ebp - 0x1028]
mov ecx, dword [eax + 0x11c]
jmp 0x47b54a
lea eax, [ebp - 0x418]
push str.You_failed_to_disarm_the_bomb_
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
push 0x1a0
call fcn.0055644a
add esp, 4
mov dword [ebp - 0x1014], eax
mov byte [ebp - 4], 0x11
test eax, eax
je 0x474e47
push edi
mov ecx, eax
call fcn.0048dae0
mov ecx, eax
mov dword [ebp - 0x101c], eax
jmp 0x474e4f
xor ecx, ecx
mov dword [ebp - 0x101c], ecx
mov eax, dword [edi + 0x108]
mov edx, dword [ebp - 0x1020]
mov dword [ecx + 0x108], eax
mov eax, dword [edi + 0x10c]
mov dword [ecx + 0x10c], eax
mov eax, dword [edx + 8]
mov dword [ecx + 0x184], eax
mov eax, dword [edx + 0x10]
mov dword [ecx + 0x188], eax
mov eax, dword [edx + 0x14]
mov dword [ecx + 0x18c], eax
mov eax, dword [edx + 0x18]
mov dword [ecx + 0x190], eax
mov eax, dword [edx + 0x1c]
mov dword [ecx + 0x194], eax
mov eax, dword [edx]
mov byte [ebp - 4], 0
mov dword [ecx + 0x180], eax
call dword [sym.imp.WINMM.dll_timeGetTime]
mov ecx, dword [ebp - 0x101c]
mov dword [ecx + 0x198], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e020
mov dword [ebp - 0x1014], eax
test eax, eax
je 0x474f5f
mov esi, eax
cmp dword [ebp - 0x1040], esi
jne 0x474f3a
mov eax, dword [esi + 0x118]
cmp eax, 1
jle 0x474efd
dec eax
mov dword [esi + 0x118], eax
jmp 0x474f21
imul eax, dword [edi + 0x188], 0x980
push esi
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e210
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e090
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e0d0
mov esi, eax
test esi, esi
jne 0x474ee1
mov esi, dword [ebp - 0x1028]
push dword [ebp - 0x101c]
mov ecx, dword [esi + 0x118]
call fcn.005155c0
jmp 0x47b566
push str.Put_a_bomb_in_the_workbench_to_attempt_to_disarm_it.
jmp 0x47b51e
mov ecx, 0x5d2618
lea eax, [edi + 0x260]
nop word [eax + eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x474fb0
test dl, dl
je 0x474fac
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x474fb0
add eax, 2
add ecx, 2
test dl, dl
jne 0x474f90
xor eax, eax
jmp 0x474fb5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x475b44
imul eax, dword [edi + 0x188], 0x980
xor edx, edx
movss xmm0, dword [0x5d0048]
mov dword [ebp - 0x1074], edx
mov dword [ebp - 0x1020], edx
mov dword [ebp - 0x1040], 0xffffffff
movss dword [ebp - 0x1030], xmm0
movss dword [ebp - 0x1038], xmm0
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e020
test eax, eax
je 0x475b3a
or esi, 0xffffffff
mov ecx, dword [ebp - 0x1040]
mov edx, esi
mov dword [ebp - 0x1064], ecx
mov ecx, dword [eax + 0x110]
mov dword [ebp - 0x1014], esi
cmp ecx, 0xa
jne 0x47506b
mov eax, dword [eax + 0x11c]
cmp edx, 0xffffffff
mov ecx, dword [eax]
cmove esi, ecx
mov eax, dword [eax + 8]
cmp edx, 0xffffffff
cmove ecx, dword [ebp - 0x1064]
mov dword [ebp - 0x1040], ecx
cmp eax, 0x17
jg 0x47505f
cmp eax, 0xfffffffe
jne 0x4750cb
mov dword [ebp - 0x1074], 1
jmp 0x4750cb
cmp ecx, 0x10
jne 0x4750cb
mov ecx, dword [eax + 0x11c]
mov edx, dword [ecx]
test edx, edx
jne 0x4750a6
mov eax, dword [eax + 0x118]
add dword [ebp - 0x1020], eax
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [ecx + 4]
addss xmm0, dword [ebp - 0x1030]
movss dword [ebp - 0x1030], xmm0
jmp 0x4750cb
cmp edx, 1
jne 0x4750cb
movd xmm0, dword [eax + 0x118]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [ecx + 4]
addss xmm0, dword [ebp - 0x1038]
movss dword [ebp - 0x1038], xmm0
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e0d0
test eax, eax
jne 0x475011
mov dword [ebp - 0x1044], esi
cmp esi, 0xffffffff
mov esi, dword [ebp - 0x1028]
je 0x475b3a
cmp dword [ebp - 0x1020], 1
jge 0x475114
push str.An_EarthKey_requires_at_least_one_bead_to_power_it.
jmp 0x47b51e
imul eax, dword [edi + 0x188], 0x980
mov dword [ebp - 0x1050], 0
mov ecx, dword [eax + edi + 0x2e0]
add ecx, 8
call fcn.0044e020
mov dword [ebp - 0x1014], eax
test eax, eax
je 0x4723cb
mov esi, eax
mov ecx, esi
call fcn.0044c8e0
lea ecx, [edi + 0x260]
mov dl, byte [ecx]
cmp dl, byte [eax]
jne 0x475174
test dl, dl
je 0x475170
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x475174
add ecx, 2
add eax, 2
test dl, dl
jne 0x475154
xor eax, eax
jmp 0x475179
sbb eax, eax
or eax, 1
test eax, eax
jne 0x475189
mov eax, dword [esi + 0x11c]
mov dword [ebp - 0x1050], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e0]
add ecx, 8
call fcn.0044e0d0
mov esi, eax
test esi, esi
jne 0x475147
mov esi, dword [ebp - 0x1028]
cmp dword [ebp - 0x1050], eax
je 0x4723cb
mov ecx, edi
call fcn.00481680
mov ecx, dword [ebp - 0x1050]
cdq
push dword [ecx + 0xc]
push dword [ecx + 8]
push edx
push eax
call fcn.005575c0
mov ecx, eax
call fcn.00556830
cvtsd2ss xmm0, xmm0
sub esp, 8
mov dword [esp + 4], 0x3fa66666
mulss xmm0, dword [0x5d3d98]
mov dword [esp], 0x3f333333
movss dword [ebp - 0x1014], xmm0
call fcn.0048da70
fmul dword [ebp - 0x1014]
add esp, 8
mov ecx, 0x62d4e8
push esi
push 6
fstp dword [ebp - 0x1010]
call fcn.0052e910
test eax, eax
je 0x475256
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.0052f3e0
test eax, eax
je 0x475256
movss xmm0, dword [ebp - 0x1010]
mulss xmm0, dword [0x5d0db8]
jmp 0x47525e
movss xmm0, dword [ebp - 0x1010]
push esi
push 7
mov ecx, 0x62d4e8
movss dword [ebp - 0x1024], xmm0
call fcn.0052e910
test eax, eax
je 0x4752ae
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.0052f3e0
movss xmm1, dword [ebp - 0x1024]
test eax, eax
je 0x4752b6
mulss xmm1, dword [0x5d3dc4]
movss dword [ebp - 0x1024], xmm1
jmp 0x4752b6
movss xmm1, dword [ebp - 0x1024]
mov eax, dword [edi + 0x14f5c]
test eax, eax
jle 0x4752e3
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x5d3d8c]
addss xmm0, dword [0x5d0048]
mulss xmm0, xmm1
movss dword [ebp - 0x1024], xmm0
mov eax, dword [ebp - 0x1020]
imul eax
mov ecx, eax
call fcn.00556880
cvtsd2ss xmm0, xmm0
sub esp, 8
lea eax, [ebp - 0x418]
mulss xmm0, dword [ebp - 0x1038]
mulss xmm0, dword [0x5d3dd8]
movss dword [ebp - 0x1020], xmm0
cvtss2sd xmm0, xmm0
movsd qword [esp], xmm0
push str.Task_difficulty_is__4.2f.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x20
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
movss xmm0, dword [ebp - 0x1024]
lea eax, [ebp - 0x418]
cvtps2pd xmm0, xmm0
sub esp, 8
movsd qword [esp], xmm0
push str.Your_work_value_was__4.2f.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x20
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
movss xmm0, dword [ebp - 0x1024]
comiss xmm0, dword [ebp - 0x1020]
jb 0x475a1e
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e020
mov dword [ebp - 0x1014], eax
test eax, eax
je 0x47545a
mov esi, eax
mov eax, dword [esi + 0x110]
cmp eax, 0xa
je 0x475411
cmp eax, 0x10
jne 0x475435
imul eax, dword [edi + 0x188], 0x980
push esi
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e210
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e0d0
mov esi, eax
test esi, esi
jne 0x475401
mov esi, dword [ebp - 0x1028]
movss xmm0, dword [ebp - 0x1030]
mulss xmm0, dword [ebp - 0x1038]
push 4
push 0
cvttss2si eax, xmm0
movss dword [ebp - 0x1030], xmm0
and eax, reloc.WS2_32.dll_closesocket
jns 0x475486
dec eax
or eax, 0xfffffffc
inc eax
push eax
call fcn.0044cb60
movss xmm0, dword [ebp - 0x1030]
divss xmm0, dword [0x5d0bb8]
push 4
push 0
cvttss2si eax, xmm0
and eax, reloc.WS2_32.dll_closesocket
jns 0x4754b0
dec eax
or eax, 0xfffffffc
inc eax
push eax
call fcn.0044cb60
mov eax, dword [0x62ca90]
add esp, 0x18
cmp dword [eax + 0x7c], 0
jne 0x475568
mov eax, dword [ebp - 0x1044]
cmp eax, 0x15
je 0x4754e2
cmp eax, 0x1b
je 0x4754e2
cmp eax, 0x1f
je 0x4754e2
cmp eax, 0x20
jne 0x4754ec
mov dword [ebp - 0x1044], 0
mov eax, dword [ebp - 0x1040]
cmp eax, 0x15
je 0x475506
cmp eax, 0x1b
je 0x475506
cmp eax, 0x1f
je 0x475506
cmp eax, 0x20
jne 0x47556e
movss xmm0, dword [ebp - 0x1030]
addss xmm0, dword [0x5d3e50]
mov dword [ebp - 0x1040], 0
cvttss2si ecx, xmm0
push ecx
lea eax, [ebp - 0x418]
push str._dm_mixed_EarthKey
push eax
call fcn.0043d360
add esp, 0xc
push 0x120
call fcn.0055644a
add esp, 4
mov dword [ebp - 0x1014], eax
mov byte [ebp - 4], 0x12
test eax, eax
je 0x4755ad
lea ecx, [ebp - 0x418]
push ecx
push 0
push 0x11
mov ecx, eax
call fcn.0050ce20
jmp 0x4755af
mov eax, dword [ebp - 0x1040]
movss xmm0, dword [ebp - 0x1030]
addss xmm0, dword [0x5d3e50]
cvttss2si ecx, xmm0
test eax, eax
jns 0x475524
imul eax, dword [ebp - 0x1044], 0x258
add eax, str.Ghost
push eax
push ecx
lea eax, [ebp - 0x418]
push str._dm__s_EarthKey
push eax
call fcn.0043d360
add esp, 0x10
jmp 0x475539
xor eax, eax
movss xmm1, dword [ebp - 0x1030]
movaps xmm0, xmm1
mov dword [eax + 0x108], 0
mulss xmm0, dword [0x5d3e38]
mov dword [ebp - 0x101c], eax
mov byte [ebp - 4], 0
addss xmm0, dword [0x5d3e68]
movss dword [eax + 0x10c], xmm0
mov dword [eax + 0x118], 1
mov ecx, dword [eax + 0x11c]
mov eax, dword [ebp - 0x1044]
cvtps2pd xmm0, xmm1
mov dword [ebp - 0x1010], ecx
movss dword [ecx + 8], xmm1
xorps xmm1, xmm1
ucomisd xmm1, xmm0
mov dword [ecx + 0xc], eax
mov eax, dword [ebp - 0x1040]
mov dword [ecx + 0x10], eax
ja 0x475625
sqrtsd xmm0, xmm0
jmp 0x47562a
call fcn.00592a30
divsd xmm0, qword [0x5d3e98]
mov ecx, 2
cvttsd2si eax, xmm0
sub ecx, eax
mov eax, dword [ebp - 0x1010]
lea ecx, [ecx + ecx*4]
mov dword [ebp - 0x1084], ecx
mov dword [eax], ecx
cmp ecx, 0xa
jge 0x475663
mov dword [eax], 0xa
mov dword [ebp - 0x1084], 0xa
movss xmm0, dword [ebp - 0x1030]
xorps xmm1, xmm1
mulss xmm0, dword [0x5d3da8]
cvtps2pd xmm0, xmm0
ucomisd xmm1, xmm0
ja 0x475685
sqrtsd xmm0, xmm0
jmp 0x47568a
call fcn.00592a30
divsd xmm0, qword [0x5d3e98]
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 0x4756ba
mov dword [eax + 4], 0xa
mov ecx, 0xa
cmp dword [ebp - 0x1074], 1
jne 0x4756d2
mov edx, dword [ebp - 0x1084]
neg edx
neg ecx
mov dword [eax], edx
mov dword [eax + 4], ecx
lea eax, [ebp - 0x418]
push str.You_have_created_a
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
mov ecx, dword [ebp - 0x101c]
call fcn.0044c8e0
push eax
lea eax, [ebp - 0x418]
push 0x5d28d4
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x1c
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
imul ecx, dword [edi + 0x188], 0x980
push dword [ebp - 0x101c]
mov ecx, dword [ecx + edi + 0x2d8]
call fcn.0050da70
mov esi, dword [ebp - 0x1050]
mov ecx, dword [esi + 0xc]
mov eax, dword [esi + 8]
test ecx, ecx
ja 0x47b566
jb 0x4757b5
cmp eax, 0x7530
jae 0x47b566
movss xmm1, dword [ebp - 0x1024]
movaps xmm0, xmm1
movss xmm2, dword [ebp - 0x1020]
divss xmm0, dword [0x5d3e50]
comiss xmm2, xmm0
jbe 0x47b566
mov eax, dword [0x62ca90]
mov edx, dword [esi + 4]
mov ecx, dword [esi]
movd xmm0, dword [eax + 0xa0]
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
movss dword [ebp - 0x1014], xmm0
call fcn.00556830
movss xmm1, dword [ebp - 0x1014]
cvtsd2ss xmm0, xmm0
addss xmm1, xmm0
xorps xmm0, xmm0
movlpd qword [ebp - 0x1018], xmm0
movss xmm0, dword [0x5d3e90]
comiss xmm1, xmm0
jb 0x475852
subss xmm1, xmm0
comiss xmm0, xmm1
jbe 0x475852
mov eax, dword [ebp - 0x1018]
add eax, 0
mov dword [ebp - 0x1010], eax
mov eax, dword [ebp - 0x1014]
adc eax, 0x80000000
mov dword [ebp - 0x1074], eax
jmp 0x47586a
mov eax, dword [ebp - 0x1014]
mov dword [ebp - 0x1074], eax
mov eax, dword [ebp - 0x1018]
mov dword [ebp - 0x1010], eax
movaps xmm0, xmm1
call fcn.005565b0
mov edi, eax
mov eax, edx
add edi, dword [ebp - 0x1010]
mov dword [esi], edi
adc eax, dword [ebp - 0x1074]
mov dword [esi + 4], eax
mov ecx, dword [esi + 0xc]
push ecx
mov dword [ebp - 0x101c], eax
mov eax, dword [esi + 8]
push eax
push ecx
push eax
call fcn.005575c0
mov esi, eax
mov ecx, edx
shld ecx, esi, 4
shl esi, 4
sub esi, eax
sbb ecx, edx
shld ecx, esi, 1
add esi, esi
cmp ecx, dword [ebp - 0x101c]
ja 0x47b566
jb 0x4758c7
cmp esi, edi
ja 0x47b566
mov ecx, 0x88888889
mov eax, edi
mul ecx
mov esi, edx
mov dword [ebp - 0x1018], eax
mov eax, edi
mov edx, 0x88888888
mul edx
mov edi, eax
mov dword [ebp - 0x1064], edx
mov eax, dword [ebp - 0x101c]
mul ecx
mov dword [ebp - 0x1014], edx
mov ecx, eax
mov eax, dword [ebp - 0x101c]
mov edx, 0x88888888
mul edx
add ecx, esi
mov dword [ebp - 0x1074], edx
mov edx, dword [ebp - 0x1014]
adc edx, 0
mov dword [ebp - 0x1010], eax
mov esi, eax
add edi, ecx
mov ecx, dword [ebp - 0x1064]
adc ecx, 0
mov dword [ebp - 0x1018], edi
xor eax, eax
add edx, ecx
mov ecx, dword [ebp - 0x1074]
adc eax, eax
add esi, edx
adc ecx, eax
shrd esi, ecx, 4
shr ecx, 4
mov edx, ecx
mov ecx, esi
call fcn.00556830
xorps xmm1, xmm1
ucomisd xmm1, xmm0
ja 0x47595f
sqrtsd xmm0, xmm0
jmp 0x475964
call fcn.00592a30
movaps xmm1, xmm0
xorps xmm0, xmm0
addsd xmm1, qword [0x5d0050]
movlpd qword [ebp - 0x1018], xmm0
movsd xmm0, qword [0x5d3e78]
comisd xmm1, xmm0
jb 0x4759a9
subsd xmm1, xmm0
comisd xmm0, xmm1
jbe 0x4759a9
mov esi, dword [ebp - 0x1018]
mov edi, dword [ebp - 0x1014]
add esi, 0
adc edi, 0x80000000
jmp 0x4759b5
mov edi, dword [ebp - 0x1014]
mov esi, dword [ebp - 0x1018]
movaps xmm0, xmm1
call fcn.00556780
mov ecx, dword [ebp - 0x1050]
add eax, esi
push str.You_gained_a_skill_level__
adc edx, edi
mov dword [ecx + 8], eax
lea eax, [ebp - 0x418]
push eax
mov dword [ecx + 0xc], edx
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov ecx, dword [ebp - 0x106c]
imul eax, dword [ecx + 0x188], 0x980
movss xmm0, dword [eax + ecx + 0x300]
addss xmm0, dword [0x5d3d9c]
jmp 0x47165f
lea eax, [ebp - 0x418]
push str.Your_Eye_of_the_Earth_fails_to_see.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e020
mov esi, eax
test esi, esi
je 0x47b566
movss xmm0, dword [ebp - 0x1024]
divss xmm0, dword [ebp - 0x1020]
movss dword [ebp - 0x1024], xmm0
call fcn.00565b3a
xorps xmm1, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
divss xmm0, dword [0x5d3e8c]
addss xmm0, xmm1
comiss xmm0, dword [ebp - 0x1024]
jbe 0x475b12
mov eax, dword [esi + 0x110]
cmp eax, 0xa
je 0x475ada
cmp eax, 0x10
jne 0x475b12
mov eax, dword [esi + 0x118]
cmp eax, 1
jle 0x475aee
dec eax
mov dword [esi + 0x118], eax
jmp 0x475b12
imul eax, dword [edi + 0x188], 0x980
push esi
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e210
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e0d0
mov esi, eax
test esi, esi
jne 0x475aa6
jmp 0x47b566
push str.An_EarthKey_requires_the_flesh_of_a_monster.
jmp 0x47b51e
mov ecx, 0x5d2624
lea eax, [edi + 0x260]
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x475b70
test dl, dl
je 0x475b6c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x475b70
add eax, 2
add ecx, 2
test dl, dl
jne 0x475b50
xor eax, eax
jmp 0x475b75
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47795c
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e020
test eax, eax
je 0x477952
xor esi, esi
cmp dword [eax + 0x110], 2
cmove esi, eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e0d0
test eax, eax
jne 0x475ba0
mov dword [ebp - 0x1038], esi
test esi, esi
mov esi, dword [ebp - 0x1028]
je 0x477952
mov dword [ebp - 0x1040], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e0]
add ecx, 8
call fcn.0044e020
mov dword [ebp - 0x1014], eax
test eax, eax
je 0x4723cb
mov esi, eax
nop word [eax + eax]
mov ecx, esi
call fcn.0044c8e0
lea ecx, [edi + 0x260]
nop dword [eax]
mov dl, byte [ecx]
cmp dl, byte [eax]
jne 0x475c40
test dl, dl
je 0x475c3c
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x475c40
add ecx, 2
add eax, 2
test dl, dl
jne 0x475c20
xor eax, eax
jmp 0x475c45
sbb eax, eax
or eax, 1
test eax, eax
jne 0x475c55
mov eax, dword [esi + 0x11c]
mov dword [ebp - 0x1040], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e0]
add ecx, 8
call fcn.0044e0d0
mov esi, eax
test esi, esi
jne 0x475c10
mov esi, dword [ebp - 0x1028]
cmp dword [ebp - 0x1040], eax
je 0x4723cb
mov ecx, edi
call fcn.00481680
mov ecx, dword [ebp - 0x1040]
cdq
push dword [ecx + 0xc]
push dword [ecx + 8]
push edx
push eax
call fcn.005575c0
mov ecx, eax
call fcn.00556830
cvtsd2ss xmm0, xmm0
sub esp, 8
mov dword [esp + 4], 0x3fc00000
mulss xmm0, dword [0x5d3d98]
mov dword [esp], 0x3f4ccccd
movss dword [ebp - 0x1014], xmm0
call fcn.0048da70
fmul dword [ebp - 0x1014]
add esp, 8
mov ecx, 0x62d4e8
push esi
push 8
fstp dword [ebp - 0x1010]
call fcn.0052e910
test eax, eax
je 0x475d22
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.0052f3e0
test eax, eax
je 0x475d22
movss xmm1, dword [ebp - 0x1010]
mulss xmm1, dword [0x5d3db0]
jmp 0x475d2a
movss xmm1, dword [ebp - 0x1010]
mov eax, dword [edi + 0x14f5c]
movss dword [ebp - 0x1050], xmm1
test eax, eax
jle 0x475d5f
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x5d3d8c]
addss xmm0, dword [0x5d0048]
mulss xmm0, xmm1
movss dword [ebp - 0x1050], xmm0
mov ecx, dword [ebp - 0x1038]
xor esi, esi
mov edi, 9
mov edx, dword [ecx + 0x11c]
add edx, 0x1c
cvttss2si eax, dword [edx]
lea edx, [edx + 4]
add esi, eax
sub edi, 1
jne 0x475d75
mov eax, dword [ecx + 0x11c]
mov dword [ebp - 0x1014], esi
mov ecx, dword [eax + 4]
lea eax, [ecx + ecx]
imul ecx
mov ecx, eax
mov esi, edx
mov eax, dword [ebp - 0x1014]
shld esi, ecx, 1
add ecx, ecx
lea eax, [eax + eax*4]
add eax, eax
cdq
add ecx, eax
adc edx, esi
call fcn.00556880
movss xmm1, dword [0x5d0048]
lea eax, [ebp - 0x418]
cvtsd2ss xmm0, xmm0
sub esp, 8
maxss xmm1, xmm0
cvtps2pd xmm0, xmm1
movss dword [ebp - 0x1074], xmm1
movsd qword [esp], xmm0
push str.Task_difficulty_is__4.2f.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov esi, dword [ebp - 0x1028]
lea edx, [ebp - 0x105c]
add esp, 0x20
mov ecx, dword [esi + 0x11c]
push edx
push edi
lea edx, [ebp - 0xfc8]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
movss xmm0, dword [ebp - 0x1050]
lea eax, [ebp - 0x418]
cvtps2pd xmm0, xmm0
sub esp, 8
movsd qword [esp], xmm0
push str.Your_work_value_was__4.2f.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x20
mov eax, dword [ecx]
push edx
push edi
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
movss xmm0, dword [ebp - 0x1050]
lea eax, [ebp - 0x418]
comiss xmm0, dword [ebp - 0x1074]
mov edi, dword [ebp - 0x106c]
jb 0x4778ea
push str.You_successfully_shatter_the_totem_with_magic___Its_power_engulfs_the_items_in_your_workbench.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
mov esi, dword [ebp - 0x1038]
movss xmm1, dword [0x5d3e48]
mov esi, dword [esi + 0x11c]
movss xmm0, dword [esi + 0x34]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x47611a
movss xmm0, dword [esi + 0x38]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x47611a
lea eax, [ebp - 0x418]
push str.The_released_power_wants_to_break_a_Heart_Gem_apart.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov eax, dword [ebp - 0x1028]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov ecx, dword [eax + 0x11c]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e020
mov dword [ebp - 0x1010], eax
test eax, eax
je 0x47611a
nop dword [eax]
nop dword [eax + eax]
cmp dword [eax + 0x110], 0x10
jne 0x4760f3
mov ecx, dword [eax + 0x11c]
cmp dword [ecx], 1
jne 0x4760f3
movss xmm1, dword [esi + 0x3c]
movss xmm2, dword [0x5d0048]
comiss xmm1, xmm2
jbe 0x4760f3
movss xmm0, dword [ecx + 4]
comiss xmm0, xmm2
jbe 0x4760f3
comiss xmm1, xmm0
jb 0x4760f3
dec dword [eax + 0x118]
cmp dword [eax + 0x118], 1
jge 0x476028
push eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e210
mov eax, dword [ebp - 0x1010]
mov eax, dword [eax + 0x11c]
movss xmm0, dword [esi + 0x3c]
push 0x120
movss xmm1, dword [eax + 4]
cvttss2si eax, xmm1
subss xmm0, xmm1
mov dword [ebp - 0x1014], eax
movss dword [esi + 0x3c], xmm0
call fcn.0055644a
add esp, 4
mov dword [ebp - 0x1064], eax
mov byte [ebp - 4], 0x13
test eax, eax
je 0x476078
push str.Plain_Heart_Gem
push 0
push 0x10
mov ecx, eax
call fcn.0050ce20
jmp 0x47607a
xor eax, eax
push 8
mov dword [ebp - 0x1010], eax
mov byte [ebp - 4], 0
call fcn.0055644a
add esp, 4
test eax, eax
je 0x47609b
xorps xmm0, xmm0
movq qword [eax], xmm0
jmp 0x47609d
xor eax, eax
mov ecx, dword [ebp - 0x1010]
push ecx
mov dword [ecx + 0x11c], eax
mov dword [eax], 1
mov eax, dword [ecx + 0x11c]
mov dword [eax + 4], 0x3f800000
mov eax, dword [ebp - 0x1014]
mov dword [ecx + 0x118], eax
mov dword [ecx + 0x108], 0
mov dword [ecx + 0x10c], 0x43c80000
imul ecx, dword [edi + 0x188], 0x980
mov ecx, dword [ecx + edi + 0x2d8]
call fcn.0050da70
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e0d0
mov dword [ebp - 0x1010], eax
test eax, eax
jne 0x475fb0
movss xmm0, dword [esi + 0x2c]
movss xmm1, dword [0x5d0058]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x47652d
movss xmm0, dword [esi + 0x1c]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x47632c
lea eax, [ebp - 0x418]
push str.The_released_power_wants_to_turn_Green_Dust_into_White_Dust.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov eax, dword [ebp - 0x1028]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov ecx, dword [eax + 0x11c]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e020
mov ecx, eax
mov dword [ebp - 0x101c], ecx
test ecx, ecx
je 0x476525
cmp dword [ecx + 0x110], 8
jne 0x4762fe
mov eax, dword [ecx + 0x11c]
cmp dword [eax], 0
jne 0x4762fe
movss xmm1, dword [esi + 0x3c]
xorps xmm0, xmm0
comiss xmm1, xmm0
jbe 0x4762fe
movd xmm0, dword [ecx + 0x118]
cvtdq2ps xmm0, xmm0
comiss xmm1, xmm0
jb 0x476247
imul eax, dword [edi + 0x188], 0x980
push ecx
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e210
mov eax, dword [ebp - 0x101c]
add eax, 8
push 0x5d174c
push eax
call fcn.0043d360
mov ecx, dword [ebp - 0x101c]
add esp, 8
mov eax, dword [ecx + 0x11c]
mov dword [eax], 3
jmp 0x4762e7
subss xmm0, xmm1
push 0x120
cvttss2si eax, xmm0
mov dword [ecx + 0x118], eax
call fcn.0055644a
add esp, 4
mov dword [ebp - 0x1014], eax
mov byte [ebp - 4], 0x14
test eax, eax
je 0x476282
push 0x5d174c
push 0
push 8
mov ecx, eax
call fcn.0050ce20
jmp 0x476284
xor eax, eax
push 8
mov dword [ebp - 0x1010], eax
mov byte [ebp - 4], 0
call fcn.0055644a
mov edx, eax
add esp, 4
test edx, edx
je 0x4762a7
xorps xmm0, xmm0
movq qword [edx], xmm0
jmp 0x4762a9
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.0050da70
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e0d0
mov ecx, eax
mov dword [ebp - 0x101c], eax
test ecx, ecx
jne 0x4761c2
jmp 0x476525
movss xmm0, dword [esi + 0x38]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x47652d
lea eax, [ebp - 0x418]
push str.The_released_power_wants_to_turn_Black_Dust_into_Red_Dust.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov eax, dword [ebp - 0x1028]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov ecx, dword [eax + 0x11c]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e020
mov ecx, eax
mov dword [ebp - 0x101c], ecx
test ecx, ecx
je 0x476525
nop word [eax + eax]
cmp dword [ecx + 0x110], 8
jne 0x4764fc
mov eax, dword [ecx + 0x11c]
cmp dword [eax], 2
jne 0x4764fc
movss xmm1, dword [esi + 0x3c]
xorps xmm0, xmm0
comiss xmm1, xmm0
jbe 0x4764fc
movd xmm0, dword [ecx + 0x118]
cvtdq2ps xmm0, xmm0
comiss xmm1, xmm0
jb 0x476445
imul eax, dword [edi + 0x188], 0x980
push ecx
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e210
mov eax, dword [ebp - 0x101c]
add eax, 8
push 0x5d1724
push eax
call fcn.0043d360
mov ecx, dword [ebp - 0x101c]
add esp, 8
mov eax, dword [ecx + 0x11c]
mov dword [eax], 4
jmp 0x4764e5
subss xmm0, xmm1
push 0x120
cvttss2si eax, xmm0
mov dword [ecx + 0x118], eax
call fcn.0055644a
add esp, 4
mov dword [ebp - 0x1014], eax
mov byte [ebp - 4], 0x15
test eax, eax
je 0x476480
push 0x5d1724
push 0
push 8
mov ecx, eax
call fcn.0050ce20
jmp 0x476482
xor eax, eax
push 8
mov dword [ebp - 0x1010], eax
mov byte [ebp - 4], 0
call fcn.0055644a
mov edx, eax
add esp, 4
test edx, edx
je 0x4764a5
xorps xmm0, xmm0
movq qword [edx], xmm0
jmp 0x4764a7
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.0050da70
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e0d0
mov ecx, eax
mov dword [ebp - 0x101c], eax
test ecx, ecx
jne 0x4763c0
movss xmm1, dword [0x5d0058]
movss xmm0, dword [esi + 0x30]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x47673d
movss xmm0, dword [esi + 0x38]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x47673d
lea eax, [ebp - 0x418]
push str.The_released_power_wants_to_turn_White_into_Green_Dust.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov eax, dword [ebp - 0x1028]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov ecx, dword [eax + 0x11c]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e020
mov ecx, eax
mov dword [ebp - 0x101c], ecx
test ecx, ecx
je 0x476735
nop dword [eax]
cmp dword [ecx + 0x110], 8
jne 0x47670c
mov eax, dword [ecx + 0x11c]
cmp dword [eax], 3
jne 0x47670c
movss xmm1, dword [esi + 0x3c]
xorps xmm0, xmm0
comiss xmm1, xmm0
jbe 0x47670c
movd xmm0, dword [ecx + 0x118]
cvtdq2ps xmm0, xmm0
comiss xmm1, xmm0
jb 0x476655
imul eax, dword [edi + 0x188], 0x980
push ecx
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e210
mov eax, dword [ebp - 0x101c]
add eax, 8
push 0x5d1738
push eax
call fcn.0043d360
mov ecx, dword [ebp - 0x101c]
add esp, 8
mov eax, dword [ecx + 0x11c]
mov dword [eax], 0
jmp 0x4766f5
subss xmm0, xmm1
push 0x120
cvttss2si eax, xmm0
mov dword [ecx + 0x118], eax
call fcn.0055644a
add esp, 4
mov dword [ebp - 0x1014], eax
mov byte [ebp - 4], 0x16
test eax, eax
je 0x476690
push 0x5d1738
push 0
push 8
mov ecx, eax
call fcn.0050ce20
jmp 0x476692
xor eax, eax
push 8
mov dword [ebp - 0x1010], eax
mov byte [ebp - 4], 0
call fcn.0055644a
mov edx, eax
add esp, 4
test edx, edx
je 0x4766b5
xorps xmm0, xmm0
movq qword [edx], xmm0
jmp 0x4766b7
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.0050da70
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e0d0
mov ecx, eax
mov dword [ebp - 0x101c], eax
test ecx, ecx
jne 0x4765d0
movss xmm1, dword [0x5d0058]
movss xmm4, dword [esi + 0x34]
ucomiss xmm4, xmm1
lahf
test ah, 0x44
jp 0x47694a
movss xmm0, dword [esi + 0x30]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x47694a
lea eax, [ebp - 0x418]
push str.The_released_power_wants_to_turn_White_into_Black_Dust.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov eax, dword [ebp - 0x1028]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov ecx, dword [eax + 0x11c]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e020
mov ecx, eax
mov dword [ebp - 0x101c], ecx
test ecx, ecx
je 0x477621
nop dword [eax]
cmp dword [ecx + 0x110], 8
jne 0x47691c
mov eax, dword [ecx + 0x11c]
cmp dword [eax], 3
jne 0x47691c
movss xmm1, dword [esi + 0x3c]
xorps xmm0, xmm0
comiss xmm1, xmm0
jbe 0x47691c
movd xmm0, dword [ecx + 0x118]
cvtdq2ps xmm0, xmm0
comiss xmm1, xmm0
jb 0x476865
imul eax, dword [edi + 0x188], 0x980
push ecx
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e210
mov eax, dword [ebp - 0x101c]
add eax, 8
push 0x5d1760
push eax
call fcn.0043d360
mov ecx, dword [ebp - 0x101c]
add esp, 8
mov eax, dword [ecx + 0x11c]
mov dword [eax], 2
jmp 0x476905
subss xmm0, xmm1
push 0x120
cvttss2si eax, xmm0
mov dword [ecx + 0x118], eax
call fcn.0055644a
add esp, 4
mov dword [ebp - 0x1014], eax
mov byte [ebp - 4], 0x17
test eax, eax
je 0x4768a0
push 0x5d1760
push 0
push 8
mov ecx, eax
call fcn.0050ce20
jmp 0x4768a2
xor eax, eax
push 8
mov dword [ebp - 0x1010], eax
mov byte [ebp - 4], 0
call fcn.0055644a
mov edx, eax
add esp, 4
test edx, edx
je 0x4768c5
xorps xmm0, xmm0
movq qword [edx], xmm0
jmp 0x4768c7
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.0050da70
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e0d0
mov ecx, eax
mov dword [ebp - 0x101c], eax
test ecx, ecx
jne 0x4767e0
jmp 0x477621
movss xmm0, dword [esi + 0x24]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x476d5a
movss xmm0, dword [esi + 0x2c]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x476b5a
lea eax, [ebp - 0x418]
push str.The_released_power_wants_to_turn_Red_Dust_into_Black_Dust.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov eax, dword [ebp - 0x1028]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov ecx, dword [eax + 0x11c]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e020
mov ecx, eax
mov dword [ebp - 0x101c], ecx
test ecx, ecx
je 0x477621
nop word [eax + eax]
cmp dword [ecx + 0x110], 8
jne 0x476b2c
mov eax, dword [ecx + 0x11c]
cmp dword [eax], 4
jne 0x476b2c
movss xmm1, dword [esi + 0x3c]
xorps xmm0, xmm0
comiss xmm1, xmm0
jbe 0x476b2c
movd xmm0, dword [ecx + 0x118]
cvtdq2ps xmm0, xmm0
comiss xmm1, xmm0
jb 0x476a75
imul eax, dword [edi + 0x188], 0x980
push ecx
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e210
mov eax, dword [ebp - 0x101c]
add eax, 8
push 0x5d1760
push eax
call fcn.0043d360
mov ecx, dword [ebp - 0x101c]
add esp, 8
mov eax, dword [ecx + 0x11c]
mov dword [eax], 2
jmp 0x476b15
subss xmm0, xmm1
push 0x120
cvttss2si eax, xmm0
mov dword [ecx + 0x118], eax
call fcn.0055644a
add esp, 4
mov dword [ebp - 0x1014], eax
mov byte [ebp - 4], 0x18
test eax, eax
je 0x476ab0
push 0x5d1760
push 0
push 8
mov ecx, eax
call fcn.0050ce20
jmp 0x476ab2
xor eax, eax
push 8
mov dword [ebp - 0x1010], eax
mov byte [ebp - 4], 0
call fcn.0055644a
mov edx, eax
add esp, 4
test edx, edx
je 0x476ad5
xorps xmm0, xmm0
movq qword [edx], xmm0
jmp 0x476ad7
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.0050da70
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e0d0
mov ecx, eax
mov dword [ebp - 0x101c], eax
test ecx, ecx
jne 0x4769f0
jmp 0x477621
movss xmm0, dword [esi + 0x38]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x476d5a
lea eax, [ebp - 0x418]
push str.The_released_power_wants_to_turn_Red_Dust_into_Green_Dust.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov eax, dword [ebp - 0x1028]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov ecx, dword [eax + 0x11c]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e020
mov ecx, eax
mov dword [ebp - 0x101c], ecx
test ecx, ecx
je 0x477621
nop dword [eax + eax]
cmp dword [ecx + 0x110], 8
jne 0x476d2c
mov eax, dword [ecx + 0x11c]
cmp dword [eax], 4
jne 0x476d2c
movss xmm1, dword [esi + 0x3c]
xorps xmm0, xmm0
comiss xmm1, xmm0
jbe 0x476d2c
movd xmm0, dword [ecx + 0x118]
cvtdq2ps xmm0, xmm0
comiss xmm1, xmm0
jb 0x476c75
imul eax, dword [edi + 0x188], 0x980
push ecx
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e210
mov eax, dword [ebp - 0x101c]
add eax, 8
push 0x5d1738
push eax
call fcn.0043d360
mov ecx, dword [ebp - 0x101c]
add esp, 8
mov eax, dword [ecx + 0x11c]
mov dword [eax], 0
jmp 0x476d15
subss xmm0, xmm1
push 0x120
cvttss2si eax, xmm0
mov dword [ecx + 0x118], eax
call fcn.0055644a
add esp, 4
mov dword [ebp - 0x1014], eax
mov byte [ebp - 4], 0x19
test eax, eax
je 0x476cb0
push 0x5d1738
push 0
push 8
mov ecx, eax
call fcn.0050ce20
jmp 0x476cb2
xor eax, eax
push 8
mov dword [ebp - 0x1010], eax
mov byte [ebp - 4], 0
call fcn.0055644a
mov edx, eax
add esp, 4
test edx, edx
je 0x476cd5
xorps xmm0, xmm0
movq qword [edx], xmm0
jmp 0x476cd7
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.0050da70
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e0d0
mov ecx, eax
mov dword [ebp - 0x101c], eax
test ecx, ecx
jne 0x476bf0
jmp 0x477621
movss xmm2, dword [esi + 0x1c]
movss xmm1, dword [0x5d0bd8]
ucomiss xmm2, xmm1
lahf
test ah, 0x44
jp 0x476f6c
movss xmm0, dword [esi + 0x38]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x476f6c
lea eax, [ebp - 0x418]
push str.The_released_power_wants_to_turn_Green_Dust_into_Blue_Dust.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov eax, dword [ebp - 0x1028]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov ecx, dword [eax + 0x11c]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e020
mov ecx, eax
mov dword [ebp - 0x101c], ecx
test ecx, ecx
je 0x477621
cmp dword [ecx + 0x110], 8
jne 0x476f3e
mov eax, dword [ecx + 0x11c]
cmp dword [eax], 0
jne 0x476f3e
movss xmm1, dword [esi + 0x3c]
xorps xmm0, xmm0
comiss xmm1, xmm0
jbe 0x476f3e
movd xmm0, dword [ecx + 0x118]
cvtdq2ps xmm0, xmm0
comiss xmm1, xmm0
jb 0x476e87
imul eax, dword [edi + 0x188], 0x980
push ecx
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e210
mov eax, dword [ebp - 0x101c]
add eax, 8
push 0x5d1710
push eax
call fcn.0043d360
mov ecx, dword [ebp - 0x101c]
add esp, 8
mov eax, dword [ecx + 0x11c]
mov dword [eax], 1
jmp 0x476f27
subss xmm0, xmm1
push 0x120
cvttss2si eax, xmm0
mov dword [ecx + 0x118], eax
call fcn.0055644a
add esp, 4
mov dword [ebp - 0x1014], eax
mov byte [ebp - 4], 0x1a
test eax, eax
je 0x476ec2
push 0x5d1710
push 0
push 8
mov ecx, eax
call fcn.0050ce20
jmp 0x476ec4
xor eax, eax
push 8
mov dword [ebp - 0x1010], eax
mov byte [ebp - 4], 0
call fcn.0055644a
mov edx, eax
add esp, 4
test edx, edx
je 0x476ee7
xorps xmm0, xmm0
movq qword [edx], xmm0
jmp 0x476ee9
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.0050da70
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e0d0
mov ecx, eax
mov dword [ebp - 0x101c], eax
test ecx, ecx
jne 0x476e02
jmp 0x477621
movss xmm1, dword [0x5d3e48]
ucomiss xmm2, xmm1
lahf
test ah, 0x44
jp 0x47717a
movss xmm0, dword [esi + 0x38]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x47717a
lea eax, [ebp - 0x418]
push str.The_released_power_wants_to_turn_Black_Dust_into_Blue_Dust.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov eax, dword [ebp - 0x1028]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov ecx, dword [eax + 0x11c]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e020
mov ecx, eax
mov dword [ebp - 0x101c], ecx
test ecx, ecx
je 0x477621
nop
cmp dword [ecx + 0x110], 8
jne 0x47714c
mov eax, dword [ecx + 0x11c]
cmp dword [eax], 2
jne 0x47714c
movss xmm1, dword [esi + 0x3c]
xorps xmm0, xmm0
comiss xmm1, xmm0
jbe 0x47714c
movd xmm0, dword [ecx + 0x118]
cvtdq2ps xmm0, xmm0
comiss xmm1, xmm0
jb 0x477095
imul eax, dword [edi + 0x188], 0x980
push ecx
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e210
mov eax, dword [ebp - 0x101c]
add eax, 8
push 0x5d1710
push eax
call fcn.0043d360
mov ecx, dword [ebp - 0x101c]
add esp, 8
mov eax, dword [ecx + 0x11c]
mov dword [eax], 1
jmp 0x477135
subss xmm0, xmm1
push 0x120
cvttss2si eax, xmm0
mov dword [ecx + 0x118], eax
call fcn.0055644a
add esp, 4
mov dword [ebp - 0x1014], eax
mov byte [ebp - 4], 0x1b
test eax, eax
je 0x4770d0
push 0x5d1710
push 0
push 8
mov ecx, eax
call fcn.0050ce20
jmp 0x4770d2
xor eax, eax
push 8
mov dword [ebp - 0x1010], eax
mov byte [ebp - 4], 0
call fcn.0055644a
mov edx, eax
add esp, 4
test edx, edx
je 0x4770f5
xorps xmm0, xmm0
movq qword [edx], xmm0
jmp 0x4770f7
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.0050da70
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e0d0
mov ecx, eax
mov dword [ebp - 0x101c], eax
test ecx, ecx
jne 0x477010
jmp 0x477621
movss xmm3, dword [esi + 0x20]
movss xmm1, dword [0x5d3e3c]
ucomiss xmm3, xmm1
lahf
test ah, 0x44
jp 0x4772aa
movss xmm0, dword [esi + 0x28]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x4772aa
movss xmm0, dword [esi + 0x38]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x4772aa
lea eax, [ebp - 0x418]
push str.The_released_power_wants_to_change_a_shards_color.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov eax, dword [ebp - 0x1028]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov ecx, dword [eax + 0x11c]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e020
mov ecx, eax
test ecx, ecx
je 0x477621
nop
cmp dword [ecx + 0x110], 8
jne 0x47724b
mov edx, dword [ecx + 0x11c]
mov eax, dword [edx]
cmp eax, 5
jl 0x47724b
cmp eax, 0xd
jle 0x47726f
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e0d0
mov ecx, eax
test ecx, ecx
jne 0x477230
jmp 0x477621
inc eax
mov dword [edx], eax
mov eax, dword [ecx + 0x11c]
cmp dword [eax], 0xd
jle 0x477283
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 0x477297
jmp 0x477621
movss xmm0, dword [0x5d0048]
ucomiss xmm3, xmm0
lahf
test ah, 0x44
jp 0x477621
ucomiss xmm2, xmm0
lahf
test ah, 0x44
jp 0x477621
ucomiss xmm4, xmm0
lahf
test ah, 0x44
jp 0x477621
lea eax, [ebp - 0x418]
push str.The_released_power_wants_to_release_your_pets.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov esi, dword [ebp - 0x1028]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov ecx, dword [esi + 0x11c]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
imul eax, dword [edi + 0x188], 0x980
lea ecx, [edi + 0x334]
mov byte [ebp - 0x109c], 0x38
mov byte [ebp - 0xfe8], 0x3a
add ecx, eax
add eax, 0x368
add eax, edi
mov dword [ebp - 0x1020], ecx
mov dword [ebp - 0x1044], eax
cmp byte [ecx + 0x10], 0xff
je 0x4774c3
mov eax, dword [edi + 0x180]
mov ecx, esi
mov dword [ebp - 0x109b], eax
mov dword [ebp - 0x1097], 0xffffffff
mov al, byte [edi + 0x108]
mov byte [ebp - 0x1093], al
mov al, byte [edi + 0x10c]
push 0
push 5
mov byte [ebp - 0x1092], al
lea eax, [ebp - 0x109c]
push eax
push 0x11
mov word [ebp - 0x1091], 0x2828
mov dword [ebp - 0x108f], 0x50032
push dword [edi + 0x10c]
push dword [edi + 0x108]
push 0
call fcn.0052acd0
push dword [ebp - 0x1020]
lea eax, [ebp - 0x418]
push str._s_is_freed_into_the_wild.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
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.0052acd0
mov eax, dword [edi + 0x180]
mov dword [ebp - 0xfe7], eax
lea eax, [ebp - 0xfdb]
push 0x10
push eax
push 0x10
push dword [ebp - 0x1020]
call fcn.0044cdd0
mov ecx, dword [ebp - 0x1020]
add esp, 0x10
mov al, byte [ecx + 0x11]
mov byte [ebp - 0xfe2], al
mov byte [ebp - 0xfe3], 0xff
mov al, byte [ecx + 0x12]
mov byte [ebp - 0xfe1], al
movss xmm1, dword [ecx + 0x20]
divss xmm1, dword [0x5d0bb8]
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.0052acd0
mov eax, dword [ebp - 0x1020]
mov byte [eax + 0x10], 0xff
mov eax, dword [ebp - 0x1044]
cmp byte [eax + 0x10], 0xff
je 0x477621
mov eax, dword [edi + 0x180]
mov ecx, esi
mov dword [ebp - 0x109b], eax
mov dword [ebp - 0x1097], 0xffffffff
mov al, byte [edi + 0x108]
mov byte [ebp - 0x1093], al
mov al, byte [edi + 0x10c]
push 0
push 5
mov byte [ebp - 0x1092], al
lea eax, [ebp - 0x109c]
push eax
push 0x11
mov word [ebp - 0x1091], 0x2828
mov dword [ebp - 0x108f], 0x50032
push dword [edi + 0x10c]
push dword [edi + 0x108]
push 0
call fcn.0052acd0
push dword [ebp - 0x1044]
lea eax, [ebp - 0x418]
push str._s_is_freed_into_the_wild.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
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.0052acd0
mov eax, dword [edi + 0x180]
mov dword [ebp - 0xfe7], eax
lea eax, [ebp - 0xfdb]
push 0x10
push eax
push 0x10
push dword [ebp - 0x1044]
call fcn.0044cdd0
mov ecx, dword [ebp - 0x1044]
add esp, 0x10
mov al, byte [ecx + 0x11]
mov byte [ebp - 0xfe2], al
mov byte [ebp - 0xfe3], 0xff
mov al, byte [ecx + 0x12]
mov byte [ebp - 0xfe1], al
movss xmm1, dword [ecx + 0x20]
divss xmm1, dword [0x5d0bb8]
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.0052acd0
mov eax, dword [ebp - 0x1044]
mov byte [eax + 0x10], 0xff
mov esi, dword [ebp - 0x1038]
mov eax, dword [esi + 0x118]
cmp eax, 1
jle 0x47763b
dec eax
mov dword [esi + 0x118], eax
jmp 0x47765f
imul eax, dword [edi + 0x188], 0x980
push esi
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e210
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
mov esi, dword [ebp - 0x1040]
mov ecx, dword [esi + 0xc]
mov eax, dword [esi + 8]
test ecx, ecx
ja 0x47b566
jb 0x477680
cmp eax, 0x7530
jae 0x47b566
movss xmm0, dword [ebp - 0x1050]
divss xmm0, dword [0x5d3e50]
movss xmm1, dword [ebp - 0x1074]
comiss xmm1, xmm0
jbe 0x47b566
mov eax, dword [0x62ca90]
mov edx, dword [esi + 4]
mov ecx, dword [esi]
movd xmm0, dword [eax + 0xa4]
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
movss dword [ebp - 0x1014], xmm0
call fcn.00556830
movss xmm1, dword [ebp - 0x1014]
cvtsd2ss xmm0, xmm0
addss xmm1, xmm0
xorps xmm0, xmm0
movlpd qword [ebp - 0x1018], xmm0
movss xmm0, dword [0x5d3e90]
comiss xmm1, xmm0
jb 0x47771a
subss xmm1, xmm0
comiss xmm0, xmm1
jbe 0x47771a
mov eax, dword [ebp - 0x1018]
add eax, 0
mov dword [ebp - 0x1010], eax
mov eax, dword [ebp - 0x1014]
adc eax, 0x80000000
mov dword [ebp - 0x1074], eax
jmp 0x477732
mov eax, dword [ebp - 0x1014]
mov dword [ebp - 0x1074], eax
mov eax, dword [ebp - 0x1018]
mov dword [ebp - 0x1010], eax
movaps xmm0, xmm1
call fcn.005565b0
mov edi, eax
mov eax, edx
add edi, dword [ebp - 0x1010]
mov dword [esi], edi
adc eax, dword [ebp - 0x1074]
mov dword [esi + 4], eax
mov ecx, dword [esi + 0xc]
push ecx
mov dword [ebp - 0x1010], eax
mov eax, dword [esi + 8]
push eax
push ecx
push eax
call fcn.005575c0
mov ecx, eax
mov esi, edx
shld esi, ecx, 2
shl ecx, 2
add eax, ecx
mov ecx, dword [ebp - 0x1010]
adc edx, esi
shld edx, eax, 2
shl eax, 2
cmp edx, ecx
ja 0x47b566
jb 0x477792
cmp eax, edi
ja 0x47b566
mov eax, edi
mov edx, 0xcccccccd
mul edx
mov esi, edx
mov dword [ebp - 0x1018], eax
mov eax, edi
mov edx, 0xcccccccc
mul edx
mov edi, eax
mov dword [ebp - 0x1064], edx
mov eax, ecx
mov ecx, 0xcccccccd
mul ecx
mov dword [ebp - 0x1014], edx
mov ecx, eax
mov eax, dword [ebp - 0x1010]
mov edx, 0xcccccccc
mul edx
add ecx, esi
mov dword [ebp - 0x1074], edx
mov edx, dword [ebp - 0x1014]
adc edx, 0
mov dword [ebp - 0x1010], eax
mov esi, eax
add edi, ecx
mov ecx, dword [ebp - 0x1064]
adc ecx, 0
mov dword [ebp - 0x1018], edi
xor eax, eax
add edx, ecx
mov ecx, dword [ebp - 0x1074]
adc eax, eax
add esi, edx
adc ecx, eax
shrd esi, ecx, 4
shr ecx, 4
mov edx, ecx
mov ecx, esi
call fcn.00556830
xorps xmm1, xmm1
ucomisd xmm1, xmm0
ja 0x47782b
sqrtsd xmm0, xmm0
jmp 0x477830
call fcn.00592a30
movaps xmm1, xmm0
xorps xmm0, xmm0
addsd xmm1, qword [0x5d0050]
movlpd qword [ebp - 0x1018], xmm0
movsd xmm0, qword [0x5d3e78]
comisd xmm1, xmm0
jb 0x477875
subsd xmm1, xmm0
comisd xmm0, xmm1
jbe 0x477875
mov esi, dword [ebp - 0x1018]
mov edi, dword [ebp - 0x1014]
add esi, 0
adc edi, 0x80000000
jmp 0x477881
mov edi, dword [ebp - 0x1014]
mov esi, dword [ebp - 0x1018]
movaps xmm0, xmm1
call fcn.00556780
mov ecx, dword [ebp - 0x1040]
add eax, esi
push str.You_gained_a_skill_level__
adc edx, edi
mov dword [ecx + 8], eax
lea eax, [ebp - 0x418]
push eax
mov dword [ecx + 0xc], edx
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov ecx, dword [ebp - 0x106c]
imul eax, dword [ecx + 0x188], 0x980
movss xmm0, dword [eax + ecx + 0x300]
addss xmm0, dword [0x5d3d8c]
jmp 0x47165f
push str.Your_attempt_to_magically_break_the_totem_fails._It_crumbles_to_dust.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
mov esi, dword [ebp - 0x1038]
mov eax, dword [esi + 0x118]
cmp eax, 1
jle 0x47809b
dec eax
mov dword [esi + 0x118], eax
jmp 0x47b566
push str.You_must_have_a_totem_in_your_workbench_to_shatter.
jmp 0x47b51e
xor edx, edx
mov dword [ebp - 0x1034], 0xffffffff
mov dword [ebp - 0x1010], edx
lea esi, [edi + 0x260]
lea eax, [edx + edx*2]
lea edx, [eax*4 + str.BEAR]
mov ecx, edx
lea eax, [ecx + 1]
mov dword [ebp - 0x1014], eax
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x477990
sub ecx, dword [ebp - 0x1014]
push ecx
push esi
push edx
call fcn.005a2ac6
mov edx, dword [ebp - 0x1010]
add esp, 0xc
test eax, eax
mov ecx, edx
cmovne ecx, dword [ebp - 0x1034]
inc edx
mov dword [ebp - 0x1010], edx
mov eax, ecx
mov dword [ebp - 0x1034], eax
cmp edx, 9
jl 0x477974
mov esi, dword [ebp - 0x1028]
cmp eax, 0xffffffff
jle 0x478e40
xor eax, eax
xor ecx, ecx
mov dword [ebp - 0x1020], eax
mov dword [ebp - 0x1038], eax
mov dword [ebp - 0x107c], eax
imul eax, dword [edi + 0x188], 0x980
mov dword [ebp - 0x101c], ecx
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e020
test eax, eax
je 0x478e36
or esi, 0xffffffff
nop dword [eax]
mov ecx, dword [eax + 0x110]
cmp ecx, 2
jne 0x477a48
mov ecx, dword [ebp - 0x101c]
add ecx, dword [eax + 0x118]
mov dword [ebp - 0x101c], ecx
mov dword [ebp - 0x103c], eax
jmp 0x477ab2
cmp ecx, 0xe
jne 0x477a67
mov ecx, dword [ebp - 0x1038]
add ecx, dword [eax + 0x118]
mov dword [ebp - 0x1038], ecx
mov dword [ebp - 0x1040], eax
jmp 0x477ab2
cmp ecx, 9
jne 0x477a86
mov ecx, dword [ebp - 0x1020]
add ecx, dword [eax + 0x118]
mov dword [ebp - 0x1020], ecx
mov dword [ebp - 0x1074], eax
jmp 0x477ab2
cmp ecx, 0xf
jne 0x477ab2
mov ecx, dword [ebp - 0x107c]
add ecx, dword [eax + 0x118]
mov dword [ebp - 0x107c], ecx
cmp esi, 0xffffffff
jne 0x477aad
mov eax, dword [eax + 0x11c]
movsx esi, byte [eax]
jmp 0x477ab2
mov esi, 0xfffffffe
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e0d0
test eax, eax
jne 0x477a20
mov ecx, dword [ebp - 0x101c]
mov dword [ebp - 0x1050], esi
mov esi, dword [ebp - 0x1028]
cmp ecx, 1
jle 0x477af4
push str.Use_magic_on_one_totem_at_a_time.
jmp 0x47b51e
mov eax, dword [ebp - 0x1020]
cmp eax, 1
jle 0x477b09
push str.Use_magic_on_one_egg_at_a_time.
jmp 0x47b51e
mov edx, dword [ebp - 0x1038]
cmp edx, 1
jle 0x477b1e
push str.Use_magic_on_one_staff_at_a_time.
jmp 0x47b51e
cmp ecx, 1
jge 0x477b31
cmp eax, 1
jge 0x477b31
cmp edx, 1
jl 0x478e36
add eax, edx
add eax, ecx
cmp eax, 1
jle 0x477b44
push str.You_have_too_many_imbuable_items_in_the_workbench.
jmp 0x47b51e
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e0]
add ecx, 8
call fcn.0044e020
mov dword [ebp - 0x1010], eax
test eax, eax
je 0x478e2c
xor esi, esi
nop dword [eax]
mov ecx, eax
call fcn.0044c8e0
lea ecx, [edi + 0x260]
nop dword [eax]
mov dl, byte [ecx]
cmp dl, byte [eax]
jne 0x477ba0
test dl, dl
je 0x477b9c
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x477ba0
add ecx, 2
add eax, 2
test dl, dl
jne 0x477b80
xor eax, eax
jmp 0x477ba5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x477bb5
mov esi, dword [ebp - 0x1010]
mov esi, dword [esi + 0x11c]
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e0]
add ecx, 8
call fcn.0044e0d0
mov dword [ebp - 0x1010], eax
test eax, eax
jne 0x477b70
mov dword [ebp - 0x1024], esi
test esi, esi
mov esi, dword [ebp - 0x1028]
je 0x478e2c
mov eax, dword [ebp - 0x1020]
test eax, eax
jle 0x478100
mov eax, dword [ebp - 0x1074]
mov eax, dword [eax + 0x11c]
mov dword [ebp - 0x1014], eax
mov ecx, dword [eax + 4]
mov esi, dword [eax]
add ecx, 4
add esi, ecx
mov eax, 0xa
cmp esi, eax
mov ecx, edi
cmovg esi, eax
call fcn.00481680
cmp eax, esi
jge 0x477c67
lea eax, [ebp - 0x418]
push str.Your_magic_is_too_weak_to_hatch_this_egg.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov eax, dword [ebp - 0x1028]
mov ecx, dword [eax + 0x11c]
jmp 0x47b54a
imul ecx, dword [edi + 0x188], 0x980
cmp byte [ecx + edi + 0x344], 0xff
jne 0x477c8e
mov dword [ebp - 0x1020], 0
xor esi, esi
mov edx, str.Pet_A
jmp 0x477cb0
cmp byte [ecx + edi + 0x378], 0xff
jne 0x4780c4
mov dword [ebp - 0x1020], 1
mov esi, 0x34
mov edx, str.Pet_B
mov eax, esi
mov dword [ebp - 0x1010], esi
add eax, edi
add ecx, 0x334
push 0x10
add eax, ecx
push eax
push 0x400
push edx
call fcn.0044cdd0
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.005153e0
imul eax, dword [edi + 0x188], 0x980
mov edx, dword [ebp - 0x1014]
add eax, esi
mov byte [eax + edi + 0x347], 0
imul ecx, dword [edi + 0x188], 0x980
mov al, byte [edx]
add ecx, esi
mov byte [ecx + edi + 0x344], al
imul ecx, dword [edi + 0x188], 0x980
mov al, byte [edx + 4]
add ecx, esi
mov byte [ecx + edi + 0x345], al
imul eax, dword [edi + 0x188], 0x980
add eax, esi
mov byte [eax + edi + 0x346], 0
imul eax, dword [edi + 0x188], 0x980
add eax, esi
mov byte [eax + edi + 0x34c], 0
imul eax, dword [edi + 0x188], 0x980
add eax, esi
mov byte [eax + edi + 0x34d], 0
imul eax, dword [edi + 0x188], 0x980
add eax, esi
mov dword [eax + edi + 0x354], 0
mov eax, dword [edx + 4]
lea ecx, [eax*8]
sub ecx, eax
add ecx, dword [edx]
lea eax, [ecx + ecx*8]
mov ecx, dword [ebp - 0x1034]
shl eax, 4
cmp ecx, dword [eax + 0x60f51c]
jne 0x477dd4
imul eax, dword [edi + 0x188], 0x980
add eax, esi
mov dword [eax + edi + 0x354], 0x3f800000
mov eax, dword [edx + 4]
mov esi, dword [ebp - 0x1028]
push esi
lea ecx, [eax*8]
sub ecx, eax
add ecx, dword [edx]
lea eax, [ecx + ecx*8]
mov ecx, 0x62d4e8
shl eax, 4
push dword [eax + 0x60f51c]
call fcn.0052e910
test eax, eax
je 0x477e51
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.0052f3e0
test eax, eax
je 0x477e51
imul eax, dword [edi + 0x188], 0x980
add eax, dword [ebp - 0x1010]
movss xmm0, dword [eax + edi + 0x354]
cvtps2pd xmm0, xmm0
addsd xmm0, qword [0x5d0050]
cvtpd2ps xmm0, xmm0
movss dword [eax + edi + 0x354], xmm0
mov eax, dword [edi + 0x14f5c]
test eax, eax
jle 0x477e89
imul edx, dword [edi + 0x188], 0x980
imul ecx, dword [ebp - 0x1020], 0x34
add edx, edi
add eax, eax
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm0, dword [ecx + edx + 0x354]
movss dword [ecx + edx + 0x354], xmm0
imul edx, dword [ebp - 0x1020], 0x34
mov byte [ebp - 0x1008], 0x3a
mov eax, dword [edi + 0x180]
mov dword [ebp - 0x1007], eax
mov byte [ebp - 0xffb], 0
imul ecx, dword [edi + 0x188], 0x980
add edx, edi
push 0
push 5
mov al, byte [ecx + edx + 0x345]
mov byte [ebp - 0x1002], al
mov al, byte [ecx + edx + 0x344]
mov byte [ebp - 0x1003], al
mov al, byte [ecx + edx + 0x346]
mov byte [ebp - 0x1001], al
movss xmm1, dword [ecx + edx + 0x354]
divss xmm1, dword [0x5d0bb8]
movzx eax, byte [ecx + edx + 0x347]
mov ecx, esi
movd xmm0, eax
mov eax, dword [ebp - 0x1020]
cvtdq2ps xmm0, xmm0
mov byte [ebp - 0x1000], al
lea eax, [ebp - 0x1008]
push eax
push 0x1d
addss xmm1, xmm0
movss dword [ebp - 0xfff], xmm1
push dword [edi + 0x10c]
push dword [edi + 0x108]
push 0
call fcn.0052acd0
lea eax, [ebp - 0x418]
push str.You_have_hatched_a_pet_drake_
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
mov byte [ebp - 0x10c4], 0x38
mov ecx, esi
mov eax, dword [edi + 0x180]
mov dword [ebp - 0x10c3], eax
mov dword [ebp - 0x10bf], 0xffffffff
mov al, byte [edi + 0x108]
mov byte [ebp - 0x10bb], al
mov al, byte [edi + 0x10c]
push 0
push 5
mov byte [ebp - 0x10ba], al
lea eax, [ebp - 0x10c4]
push eax
push 0x11
mov word [ebp - 0x10b9], 0xffff
mov dword [ebp - 0x10b7], 0x50000
push dword [edi + 0x10c]
push dword [edi + 0x108]
push 0
call fcn.0052acd0
push 0x5ce640
push str.petInfo.txt
call fcn.00566191
mov esi, eax
lea eax, [ebp - 0x418]
push eax
call fcn.0058dd8e
lea eax, [ebp - 0x418]
push eax
push str._s_
push esi
call fcn.0043d330
lea eax, [ebp - 0x418]
push eax
call fcn.0058dfce
lea eax, [ebp - 0x418]
push eax
push str._s_
push esi
call fcn.0043d330
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.0043d330
add esp, 0x40
push esi
call fcn.00565ea3
mov esi, dword [ebp - 0x1074]
add esp, 4
imul eax, dword [edi + 0x188], 0x980
push esi
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e210
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
jmp 0x47b566
lea eax, [ebp - 0x418]
push str.You_already_have_two_pet_drakes.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov eax, dword [ebp - 0x1028]
mov ecx, dword [eax + 0x11c]
jmp 0x47b54a
mov ecx, edi
call fcn.00481680
mov ecx, dword [ebp - 0x1024]
cdq
push dword [ecx + 0xc]
push dword [ecx + 8]
push edx
push eax
call fcn.005575c0
mov ecx, eax
call fcn.00556830
cvtsd2ss xmm0, xmm0
sub esp, 8
mov dword [esp + 4], 0x3fa66666
mulss xmm0, dword [0x5d3d98]
mov dword [esp], 0x3f333333
movss dword [ebp - 0x1014], xmm0
call fcn.0048da70
fmul dword [ebp - 0x1014]
add esp, 8
mov ecx, 0x62d4e8
push esi
push dword [ebp - 0x1034]
fstp dword [ebp - 0x1010]
call fcn.0052e910
test eax, eax
je 0x4781a0
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.0052f3e0
test eax, eax
je 0x4781a0
movss xmm1, dword [ebp - 0x1010]
mulss xmm1, dword [0x5d3dc4]
jmp 0x4781a8
movss xmm1, dword [ebp - 0x1010]
mov eax, dword [edi + 0x14f5c]
movss dword [ebp - 0x1030], xmm1
test eax, eax
jle 0x4781dd
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x5d3d8c]
addss xmm0, dword [0x5d0048]
mulss xmm1, xmm0
movss dword [ebp - 0x1030], xmm1
mov eax, dword [ebp - 0x1038]
test eax, eax
jle 0x478626
push ecx
movss dword [esp], xmm1
push dword [ebp - 0x1034]
push dword [ebp - 0x1040]
call fcn.0052c4d0
mov dword [ebp - 0x1014], eax
mov eax, dword [ebp - 0x1040]
mov eax, dword [eax + 0x11c]
push eax
mov dword [ebp - 0x1074], eax
call fcn.0052c560
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.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x20
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
movss xmm1, dword [ebp - 0x1030]
lea eax, [ebp - 0x418]
cvtps2pd xmm0, xmm1
sub esp, 8
movsd qword [esp], xmm0
push str.Your_work_value_was__4.2f.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x20
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
mov eax, dword [ebp - 0x1024]
push dword [eax + 8]
push dword [ebp - 0x1040]
call fcn.0052c5a0
mov ecx, dword [0x62ca90]
add esp, 8
mov ecx, dword [ecx + 0xa8]
imul ecx, eax
mov eax, dword [ebp - 0x1024]
add dword [eax], ecx
adc dword [eax + 4], 0
mov eax, dword [ebp - 0x1014]
sub eax, 0
je 0x4783ba
sub eax, 1
je 0x478368
sub eax, 1
jne 0x478456
lea eax, [ebp - 0x418]
push str.The_attempt_destroys_the_staff.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
add esp, 0x18
jmp 0x4784ad
lea eax, [ebp - 0x418]
push str.The_magic_fails_to_imbue_the_staff.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
jmp 0x478456
lea eax, [ebp - 0x418]
push str.The_magic_infuses_the_staff_
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
movss xmm0, dword [ebp - 0x1030]
push ecx
movss dword [esp], xmm0
push dword [ebp - 0x1040]
call fcn.0052c610
movss xmm0, dword [ebp - 0x1030]
lea eax, [edi + 0x260]
add esp, 8
mov ecx, edi
push eax
sub esp, 8
movss dword [esp + 4], xmm0
movss xmm0, dword [ebp - 0x1010]
movss dword [esp], xmm0
push dword [ebp - 0x1040]
push esi
call fcn.00483c90
mov eax, dword [ebp - 0x1074]
xor ecx, ecx
add eax, 0x10
lea edx, [ecx + 9]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
addss xmm0, dword [eax]
add eax, 4
cvttss2si ecx, xmm0
sub edx, 1
jne 0x478464
mov eax, dword [ebp - 0x1074]
mov eax, dword [eax + 4]
add eax, 4
lea eax, [eax + eax*4]
cmp ecx, eax
jle 0x4784f6
push 0x64
lea eax, [ebp - 0xfc7]
push eax
push 0x400
push str.The_staff_cant_hold_that_much_magic.__It_shatters_
call fcn.0044cdd0
add esp, 0x10
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
imul eax, dword [edi + 0x188], 0x980
mov esi, dword [ebp - 0x1040]
push esi
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e210
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
mov eax, dword [ebp - 0x1024]
mov esi, dword [eax + 0xc]
mov edx, dword [eax + 8]
test esi, esi
ja 0x47b566
jb 0x478515
cmp edx, 0x64
jae 0x47b566
mov edi, dword [eax]
mov ecx, edx
mov eax, dword [eax + 4]
mov dword [ebp - 0x101c], eax
mov eax, esi
shld eax, ecx, 4
shl ecx, 4
sub ecx, edx
sbb eax, esi
shld eax, ecx, 1
add ecx, ecx
cmp eax, dword [ebp - 0x101c]
ja 0x47b566
jb 0x47854b
cmp ecx, edi
ja 0x47b566
mov ecx, 0x88888889
mov eax, edi
mul ecx
mov eax, edi
mov esi, edx
mov edx, 0x88888888
mul edx
mov edi, eax
mov dword [ebp - 0x1064], edx
mov eax, dword [ebp - 0x101c]
mul ecx
mov dword [ebp - 0x1014], edx
mov ecx, eax
mov eax, dword [ebp - 0x101c]
mov edx, 0x88888888
mul edx
add ecx, esi
mov dword [ebp - 0x1074], edx
mov edx, dword [ebp - 0x1014]
adc edx, 0
mov dword [ebp - 0x1010], eax
add edi, ecx
mov ecx, dword [ebp - 0x1064]
adc ecx, 0
xor eax, eax
add edx, ecx
mov ecx, dword [ebp - 0x1010]
adc eax, eax
add ecx, edx
mov edx, dword [ebp - 0x1074]
adc edx, eax
mov eax, dword [ebp - 0x1024]
shrd ecx, edx, 4
push str.You_gained_a_skill_level__
shr edx, 4
add ecx, 1
mov dword [eax + 8], ecx
adc edx, 0
mov dword [eax + 0xc], edx
lea eax, [ebp - 0x418]
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov ecx, dword [ebp - 0x106c]
imul eax, dword [ecx + 0x188], 0x980
movss xmm0, dword [eax + ecx + 0x300]
addss xmm0, dword [0x5d3d9c]
jmp 0x47165f
mov ecx, dword [ebp - 0x103c]
mov eax, dword [ecx + 0x11c]
mov dword [ebp - 0x1044], eax
cmp byte [eax + 8], 0
je 0x478672
mov eax, dword [eax]
sub eax, 7
cmp eax, 2
ja 0x4789f3
push 0x64
lea eax, [ebp - 0xfc7]
push eax
push 0x400
push str.This_type_of_totem_cannot_be_further_imbued.
call fcn.0044cdd0
mov ecx, dword [esi + 0x11c]
add esp, 0x10
jmp 0x47b54d
mov edx, dword [ebp - 0x1050]
test edx, edx
js 0x4789f3
cmp dword [ebp - 0x1034], edx
je 0x4786ae
push 0x64
lea eax, [ebp - 0xfc7]
push eax
push 0x400
push str.The_attempt_feels_painful_and_improper__it_fizzles.
call fcn.0044cdd0
mov ecx, dword [esi + 0x11c]
add esp, 0x10
jmp 0x47b54d
mov eax, dword [eax + 4]
add eax, dword [ebp - 0x107c]
push eax
lea eax, [ebp - 0x418]
push str.Task_difficulty_is__d.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x1c
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
movss xmm0, dword [ebp - 0x1030]
lea eax, [ebp - 0x418]
cvtps2pd xmm0, xmm0
sub esp, 8
movsd qword [esp], xmm0
push str.Your_work_value_was__4.2f.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x20
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
mov ecx, dword [ebp - 0x1044]
movss xmm1, dword [ebp - 0x1030]
mov eax, dword [ecx + 4]
add eax, dword [ebp - 0x107c]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
comiss xmm1, xmm0
jb 0x4788ed
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e020
mov esi, eax
test esi, esi
je 0x4787fc
nop dword [eax + eax]
cmp dword [esi + 0x110], 0xf
jne 0x4787dd
imul eax, dword [edi + 0x188], 0x980
push esi
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e210
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e0d0
mov esi, eax
test esi, esi
jne 0x4787b0
movd xmm0, dword [ebp - 0x107c]
xorps xmm1, xmm1
mov edi, dword [ebp - 0x1044]
cvtdq2ps xmm0, xmm0
mov byte [edi + 8], 1
cvtps2pd xmm0, xmm0
ucomisd xmm1, xmm0
ja 0x478823
sqrtsd xmm0, xmm0
jmp 0x478828
call fcn.00592a30
cvtsd2ss xmm0, xmm0
lea ecx, [edi + 0xa]
movss dword [edi + 0x40], xmm0
call fcn.005153e0
mov eax, dword [edi + 4]
lea ecx, [edi + 0xa]
lea edx, [eax + 1]
inc eax
imul edx, eax
lea eax, [edx + edx*4]
add eax, eax
push eax
call fcn.00515350
mov eax, dword [ebp - 0x1050]
cmp eax, 7
ja case.0x47885c.0
jmp dword [eax*4 + 0x47b5a8]
mov dword [edi], 8
mov eax, str.Mage_Stat
jmp 0x478888
mov dword [edi], 9
mov eax, str.Crea_Stat
jmp 0x478888
mov dword [edi], 7
mov eax, str.Phys_Stat
push eax
mov eax, dword [edi + 4]
lea eax, [eax + eax*2]
lea eax, [eax*4 + str.Wood]
push eax
mov eax, dword [ebp - 0x103c]
add eax, 8
push str._s__s_Totem
push eax
call fcn.0043d360
mov esi, dword [ebp - 0x1024]
add esp, 0x10
mov ecx, dword [ebp - 0x107c]
sub ecx, dword [esi + 8]
mov eax, ecx
cdq
xor eax, edx
sub eax, edx
cmp eax, 8
jge 0x478940
inc ecx
mov eax, 1
cmp ecx, eax
cmovge eax, ecx
mov ecx, dword [0x62ca90]
imul eax, dword [ecx + 0xa8]
cdq
add dword [esi], eax
adc dword [esi + 4], edx
jmp 0x478940
lea eax, [ebp - 0x418]
push str.The_attempt_fails.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
mov esi, dword [ebp - 0x1024]
mov eax, dword [esi + 4]
mov ecx, dword [esi + 0xc]
mov edx, ecx
mov edi, dword [esi]
mov dword [ebp - 0x1010], eax
mov eax, dword [esi + 8]
mov esi, eax
shld edx, esi, 4
shl esi, 4
sub esi, eax
sbb edx, ecx
mov ecx, dword [ebp - 0x1010]
shld edx, esi, 1
add esi, esi
cmp edx, ecx
ja 0x47b566
jb 0x47897e
cmp esi, edi
ja 0x47b566
mov eax, edi
mov edx, 0x88888889
mul edx
mov eax, edi
mov esi, edx
mov edx, 0x88888888
mul edx
mov edi, eax
mov dword [ebp - 0x1064], edx
mov eax, ecx
mov ecx, 0x88888889
mul ecx
mov dword [ebp - 0x1014], edx
mov ecx, eax
mov eax, dword [ebp - 0x1010]
mov edx, 0x88888888
mul edx
add ecx, esi
mov dword [ebp - 0x1074], edx
mov edx, dword [ebp - 0x1014]
adc edx, 0
mov dword [ebp - 0x1010], eax
add edi, ecx
mov ecx, dword [ebp - 0x1064]
adc ecx, 0
xor eax, eax
add edx, ecx
mov ecx, dword [ebp - 0x1010]
adc eax, eax
add ecx, edx
mov edx, dword [ebp - 0x1074]
jmp 0x4785ba
push ecx
movss dword [esp], xmm1
push dword [ebp - 0x1034]
push ecx
call fcn.0052e9e0
mov ecx, dword [ebp - 0x1044]
add esp, 4
mov dword [ebp - 0x1014], eax
lea eax, [ebp - 0x418]
movd xmm0, dword [ecx + 4]
cvtdq2ps xmm0, xmm0
cvtps2pd xmm0, xmm0
movsd qword [esp], xmm0
push str.Task_difficulty_is__4.2f.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x20
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
movss xmm0, dword [ebp - 0x1030]
lea eax, [ebp - 0x418]
cvtps2pd xmm0, xmm0
sub esp, 8
movsd qword [esp], xmm0
push str.Your_work_value_was__4.2f.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x20
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
mov eax, dword [ebp - 0x1024]
push dword [eax + 8]
mov eax, dword [ebp - 0x103c]
push eax
call fcn.0052ea50
mov ecx, dword [0x62ca90]
add esp, 8
mov ecx, dword [ecx + 0xa8]
imul ecx, eax
mov eax, dword [ebp - 0x1024]
add dword [eax], ecx
adc dword [eax + 4], 0
mov eax, dword [ebp - 0x1014]
sub eax, 0
je 0x478bfe
sub eax, 1
je 0x478bac
sub eax, 1
jne 0x478c92
lea eax, [ebp - 0x418]
push str.The_attempt_destroys_the_totem.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
imul eax, dword [edi + 0x188], 0x980
push dword [ebp - 0x103c]
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e210
mov ecx, dword [ebp - 0x103c]
push 1
mov eax, dword [ecx]
mov eax, dword [eax]
call eax
xor ecx, ecx
mov dword [ebp - 0x103c], ecx
jmp 0x478c98
lea eax, [ebp - 0x418]
push str.The_magic_fails_to_imbue_the_totem.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
jmp 0x478c92
lea eax, [ebp - 0x418]
push str.The_magic_infuses_the_totem_
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
push dword [ebp - 0x103c]
call fcn.0052ea80
movss xmm0, dword [ebp - 0x1030]
lea eax, [edi + 0x260]
add esp, 4
mov ecx, edi
push eax
mov eax, dword [ebp - 0x1044]
sub esp, 8
movss dword [esp + 4], xmm0
movd xmm0, dword [eax + 4]
cvtdq2ps xmm0, xmm0
movss dword [esp], xmm0
push dword [ebp - 0x103c]
push esi
call fcn.00483c90
mov ecx, dword [ebp - 0x103c]
mov eax, dword [ebp - 0x1044]
xor edx, edx
mov edi, dword [ebp - 0x106c]
mov dword [ebp - 0x101c], 0
lea esi, [eax + 0x1c]
test ecx, ecx
je 0x478cdf
movd xmm0, dword [ebp - 0x101c]
inc edx
cvtdq2ps xmm0, xmm0
addss xmm0, dword [esi]
add esi, 4
cvttss2si edi, xmm0
mov dword [ebp - 0x101c], edi
mov edi, dword [ebp - 0x106c]
cmp edx, 9
jl 0x478cb3
mov eax, dword [eax + 4]
mov esi, dword [ebp - 0x1028]
add eax, 0xa
cmp dword [ebp - 0x101c], eax
jle 0x478d63
test ecx, ecx
je 0x478d63
push 0x64
lea eax, [ebp - 0xfc7]
push eax
push 0x400
push str.The_totem_cant_hold_that_much_magic.__It_shatters_
call fcn.0044cdd0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x10
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
imul eax, dword [edi + 0x188], 0x980
mov esi, dword [ebp - 0x103c]
push esi
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e210
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
mov eax, dword [ebp - 0x1024]
mov esi, dword [eax + 0xc]
mov edx, dword [eax + 8]
test esi, esi
ja 0x47b566
jb 0x478d82
cmp edx, 0x64
jae 0x47b566
mov edi, dword [eax]
mov ecx, edx
mov eax, dword [eax + 4]
mov dword [ebp - 0x101c], eax
mov eax, esi
shld eax, ecx, 4
shl ecx, 4
sub ecx, edx
sbb eax, esi
shld eax, ecx, 1
add ecx, ecx
cmp eax, dword [ebp - 0x101c]
ja 0x47b566
jb 0x478db8
cmp ecx, edi
ja 0x47b566
mov ecx, 0x88888889
mov eax, edi
mul ecx
mov eax, edi
mov esi, edx
mov edx, 0x88888888
mul edx
mov edi, eax
mov dword [ebp - 0x1064], edx
mov eax, dword [ebp - 0x101c]
mul ecx
mov dword [ebp - 0x1014], edx
mov ecx, eax
mov eax, dword [ebp - 0x101c]
mov edx, 0x88888888
mul edx
add ecx, esi
mov dword [ebp - 0x1074], edx
mov edx, dword [ebp - 0x1014]
adc edx, 0
mov dword [ebp - 0x1010], eax
add edi, ecx
mov ecx, dword [ebp - 0x1064]
adc ecx, 0
xor eax, eax
add edx, ecx
mov ecx, dword [ebp - 0x1010]
adc eax, eax
add ecx, edx
mov edx, dword [ebp - 0x1074]
jmp 0x4785ba
push str.BUG:_Cannot_find_skill_for_magic.
jmp 0x47b51e
push str.Put_a_totem_in_your_workbench.
jmp 0x47b51e
push str.No_combining_happened.
jmp 0x47b51e
xorps xmm0, xmm0
mov dword [ebp - 0x1030], 0
or eax, 0xffffffff
mov dword [ebp - 0x104c], 0
mov dword [ebp - 0x1014], eax
mov dword [ebp - 0x103c], eax
imul eax, dword [edi + 0x188], 0x980
mov dword [ebp - 0x1080], 0
mov dword [ebp - 0x1084], 0
mov dword [ebp - 0x1074], 0
mov dword [ebp - 0x1010], 0
movss dword [ebp - 0x10a0], xmm0
movss dword [ebp - 0x10a4], xmm0
movss dword [ebp - 0x1038], xmm0
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
mov dword [ebp - 0x1050], 0
mov byte [ebp - 0x1085], 0
mov dword [ebp - 0x1034], 0
mov dword [ebp - 0x107c], 0
mov dword [ebp - 0x1040], 0xffffffff
mov dword [ebp - 0x1044], 0xffffffff
mov byte [ebp - 0x1045], 0
movups xmmword [ebp - 0xea8], xmm0
movups xmmword [ebp - 0xe98], xmm0
movups xmmword [ebp - 0xe88], xmm0
movups xmmword [ebp - 0xe78], xmm0
movups xmmword [ebp - 0xf60], xmm0
movups xmmword [ebp - 0xf50], xmm0
movups xmmword [ebp - 0xf40], xmm0
movups xmmword [ebp - 0xf30], xmm0
movups xmmword [ebp - 0xf20], xmm0
movups xmmword [ebp - 0xe68], xmm0
movups xmmword [ebp - 0xe58], xmm0
movups xmmword [ebp - 0xe48], xmm0
movups xmmword [ebp - 0xe38], xmm0
movups xmmword [ebp - 0xe28], xmm0
call fcn.0044e020
mov edx, eax
mov dword [ebp - 0x1024], edx
test edx, edx
je 0x4793f9
nop dword [eax + eax]
mov esi, dword [ebp - 0x107c]
lea eax, [edi + 0x260]
mov dword [ebp - 0x1020], esi
mov ecx, 0x5d2594
nop word [eax + eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x1024]
jne 0x478fe2
cmp byte [ebp - 0x1009], 0
je 0x478fde
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x1024]
jne 0x478fe2
add eax, 2
add ecx, 2
cmp byte [ebp - 0x1009], 0
jne 0x478fa0
xor eax, eax
jmp 0x478fe7
sbb eax, eax
or eax, 1
test eax, eax
je 0x479078
cmp dword [edx + 0x110], 8
jne 0x479078
mov eax, dword [edx + 0x11c]
mov ecx, dword [eax]
test ecx, ecx
js 0x470643
cmp ecx, 0x10
jg 0x470643
lea eax, [ecx - 5]
cmp eax, 8
ja 0x47904d
cmp byte [ebp - 0x1085], 0
jne 0x470607
cmp dword [edx + 0x118], 1
jne 0x470607
inc dword [ebp + ecx*4 - 0xea8]
inc dword [ebp - 0x1050]
mov byte [ebp - 0x1085], 1
jmp 0x479078
mov eax, dword [ebp - 0x1050]
mov esi, dword [edx + 0x118]
add eax, esi
add dword [ebp + ecx*4 - 0xea8], esi
mov dword [ebp - 0x1050], eax
cmp ecx, 0xe
jne 0x479078
add eax, esi
lea eax, [eax + esi*2]
mov dword [ebp - 0x1050], eax
mov ecx, 0x5d2594
lea eax, [edi + 0x260]
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x1024]
jne 0x4790c5
cmp byte [ebp - 0x1009], 0
je 0x4790c1
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x1024]
jne 0x4790c5
add eax, 2
add ecx, 2
cmp byte [ebp - 0x1009], 0
jne 0x479083
xor eax, eax
jmp 0x4790ca
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4791d6
cmp dword [edx + 0x110], 0xe
jne 0x4791d6
mov ecx, dword [ebp - 0x1044]
mov eax, dword [edx + 0x11c]
test ecx, ecx
js 0x4790f8
cmp dword [eax + 4], ecx
jne 0x47946b
mov ecx, dword [eax + 8]
test ecx, ecx
jle 0x479115
cmp byte [ebp - 0x1045], 0
jne 0x479115
cmp dword [ebp - 0x1034], 0
jg 0x4794a7
movss xmm0, dword [eax + 0x34]
comiss xmm0, dword [0x5d0044]
jbe 0x47912b
test ecx, ecx
jg 0x4794e3
cmp ecx, 1
jge 0x47913d
cmp byte [ebp - 0x1045], 0
jne 0x4794a7
cmp dword [ebp - 0x1040], 0xffffffff
jle 0x47915a
mov edi, dword [ebp - 0x1040]
cmp dword [eax], edi
mov edi, dword [ebp - 0x106c]
jne 0x47951f
test ecx, ecx
jle 0x4791b0
cmp dword [eax], 0xd
jl 0x47955b
mov esi, dword [eax + 4]
mov eax, dword [eax]
mov edi, dword [edx + 0x118]
add dword [ebp - 0x1034], edi
mov dword [ebp - 0x1040], eax
mov eax, edi
imul eax, ecx
mov dword [ebp - 0x107c], edi
mov edi, dword [ebp - 0x106c]
mov dword [ebp - 0x1044], esi
mov esi, dword [edx + 0x110]
add eax, dword [ebp - 0x1020]
mov dword [ebp - 0x107c], eax
mov byte [ebp - 0x1045], 1
jmp 0x4791f9
mov esi, dword [eax + 4]
mov eax, dword [eax]
mov dword [ebp - 0x1040], eax
mov eax, dword [edx + 0x118]
add dword [ebp - 0x1034], eax
imul ecx, eax
mov dword [ebp - 0x1044], esi
add dword [ebp - 0x107c], ecx
mov esi, dword [edx + 0x110]
cmp esi, 1
jne 0x4791f9
mov eax, dword [ebp - 0x1080]
add eax, dword [edx + 0x118]
mov dword [ebp - 0x1080], eax
mov dword [ebp - 0x104c], edx
mov ecx, 0x5d2594
lea eax, [edi + 0x260]
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x1024]
jne 0x479246
cmp byte [ebp - 0x1009], 0
je 0x479242
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x1024]
jne 0x479246
add eax, 2
add ecx, 2
cmp byte [ebp - 0x1009], 0
jne 0x479204
xor eax, eax
jmp 0x47924b
sbb eax, eax
or eax, 1
test eax, eax
je 0x4793ca
cmp esi, 4
jne 0x4793ca
mov ecx, dword [edx + 0x118]
mov eax, 0x20
mov esi, dword [edx + 0x11c]
cmp ecx, 0x20
mov dword [ebp - 0x1064], esi
cmovg ecx, eax
add dword [ebp - 0x1030], ecx
mov eax, dword [esi]
imul eax, ecx
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
mov dword [ebp - 0x101c], ecx
add dword [ebp - 0x1084], eax
mov eax, dword [esi + 4]
imul eax, ecx
movaps xmm0, xmm1
mulss xmm0, dword [esi + 0x10]
add dword [ebp - 0x1074], eax
addss xmm0, dword [ebp - 0x1038]
mov eax, dword [esi + 8]
imul eax, ecx
movss dword [ebp - 0x1038], xmm0
movaps xmm0, xmm1
mulss xmm0, dword [esi + 0xc]
add dword [ebp - 0x1010], eax
xor esi, esi
mulss xmm1, dword [edx + 0x10c]
addss xmm0, dword [ebp - 0x10a0]
addss xmm1, dword [ebp - 0x10a4]
movss dword [ebp - 0x10a0], xmm0
movss dword [ebp - 0x10a4], xmm1
nop dword [eax]
mov eax, esi
shl eax, 6
mov dword [ebp - 0x1020], eax
mov eax, dword [ebp + esi*4 - 0xf60]
test eax, eax
jle 0x479380
mov ecx, edx
call fcn.0044c8e0
mov ecx, dword [ebp - 0x1020]
lea ecx, [ebp + ecx - 0x918]
nop
mov dl, byte [ecx]
cmp dl, byte [eax]
jne 0x479350
test dl, dl
je 0x47934c
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x479350
add ecx, 2
add eax, 2
test dl, dl
jne 0x479330
xor eax, eax
jmp 0x479355
sbb eax, eax
or eax, 1
mov ecx, dword [ebp - 0x101c]
mov edx, dword [ebp - 0x1024]
test eax, eax
jne 0x479382
mov eax, dword [ebp - 0x1064]
mov dword [ebp + esi*4 - 0xf60], ecx
cvttss2si eax, dword [eax + 0x10]
mov dword [ebp + eax*4 - 0xe6c], ecx
jmp 0x479382
je 0x47938e
inc esi
cmp esi, 0x14
jl 0x479300
jmp 0x4793ca
mov dword [ebp + esi*4 - 0xf60], ecx
mov ecx, edx
call fcn.0044c8e0
push eax
lea eax, [ebp - 0x918]
add eax, dword [ebp - 0x1020]
push eax
call fcn.0043d360
mov eax, dword [ebp - 0x1064]
add esp, 8
mov ecx, dword [ebp - 0x101c]
cvttss2si eax, dword [eax + 0x10]
mov dword [ebp + eax*4 - 0xe6c], ecx
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e0d0
mov edx, eax
mov dword [ebp - 0x1024], eax
test edx, edx
jne 0x478f80
mov esi, dword [ebp - 0x1028]
xor eax, eax
mov dword [ebp - 0x1064], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e0]
add ecx, 8
call fcn.0044e020
mov dword [ebp - 0x101c], eax
test eax, eax
je 0x47b519
mov esi, eax
nop word [eax + eax]
mov ecx, esi
call fcn.0044c8e0
mov ecx, 0x5d2518
nop dword [eax]
mov dl, byte [ecx]
cmp dl, byte [eax]
jne 0x479597
test dl, dl
je 0x479464
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x479597
add ecx, 2
add eax, 2
test dl, dl
jne 0x479440
xor eax, eax
jmp 0x47959c
lea eax, [ebp - 0x418]
push str.You_can_only_have_one_quality_of_staff_when_making_a_scythe.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov eax, dword [ebp - 0x1028]
mov ecx, dword [eax + 0x11c]
jmp 0x47b54a
lea eax, [ebp - 0x418]
push str.Cant_mix_imbued_and_unimbued_staffs.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov eax, dword [ebp - 0x1028]
mov ecx, dword [eax + 0x11c]
jmp 0x47b54a
lea eax, [ebp - 0x418]
push str.Cant_use_an_imperfect_staff.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov eax, dword [ebp - 0x1028]
mov ecx, dword [eax + 0x11c]
jmp 0x47b54a
lea eax, [ebp - 0x418]
push str.Cant_mix_different_imbued_staffs.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov eax, dword [ebp - 0x1028]
mov ecx, dword [eax + 0x11c]
jmp 0x47b54a
lea eax, [ebp - 0x418]
push str.Only_taming_staffs_may_be_used_inbued.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov eax, dword [ebp - 0x1028]
mov ecx, dword [eax + 0x11c]
jmp 0x47b54a
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4795ac
mov eax, dword [esi + 0x11c]
mov dword [ebp - 0x1064], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e0]
add ecx, 8
call fcn.0044e0d0
mov esi, eax
test esi, esi
jne 0x479430
mov eax, dword [ebp - 0x1064]
mov esi, dword [ebp - 0x1028]
test eax, eax
je 0x47b519
cmp dword [eax + 0xc], 0
ja 0x4795fb
jb 0x4795f1
cmp dword [eax + 8], 0x14
jae 0x4795fb
push str.You_must_first_reach_level_20_in_your_Swordsmith_skill.
jmp 0x47b51e
mov eax, dword [ebp - 0x104c]
test eax, eax
je 0x47b512
cmp dword [ebp - 0x1080], 1
jl 0x47b512
mov eax, dword [eax + 0x11c]
mov dword [ebp - 0x1064], eax
cmp dword [eax + 0x3c], 0
jne 0x47b512
movss xmm0, dword [0x5d3e38]
comiss xmm0, dword [eax + 8]
jbe 0x479644
push str.The_sacrifical_blade_is_not_big_enough.
jmp 0x47b51e
mov ecx, 0x5d2594
lea eax, [edi + 0x260]
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x479670
test dl, dl
je 0x47966c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x479670
add eax, 2
add ecx, 2
test dl, dl
jne 0x479650
xor eax, eax
jmp 0x479675
sbb eax, eax
or eax, 1
mov dword [ebp - 0x1080], 2
mov dword [ebp - 0x101c], 3
mov dword [ebp - 0x1020], 4
test eax, eax
jne 0x4798ee
mov ecx, dword [ebp - 0x104c]
mov esi, 1
mov edx, dword [ecx + 0x11c]
mov eax, dword [edx + 0x40]
mov ecx, dword [edx + 0x44]
xor edx, edx
cmp eax, 1
setg dl
dec edx
cmp ecx, eax
cmovge edx, esi
cmovl ecx, eax
mov dword [ebp - 0x103c], edx
mov edx, dword [ebp - 0x1064]
mov esi, dword [ebp - 0x103c]
mov dword [ebp - 0x1064], 5
mov eax, dword [edx + 0x48]
cmp eax, ecx
cmovge esi, dword [ebp - 0x1080]
cmovl eax, ecx
mov ecx, dword [edx + 0x4c]
cmp ecx, eax
cmovge esi, dword [ebp - 0x101c]
cmovl ecx, eax
mov eax, dword [edx + 0x50]
cmp eax, ecx
cmovge esi, dword [ebp - 0x1020]
cmovl eax, ecx
mov ecx, dword [edx + 0x54]
cmp ecx, eax
cmovge esi, dword [ebp - 0x1064]
cmovl ecx, eax
mov eax, dword [edx + 0x58]
cmp eax, ecx
mov dword [ebp - 0x1064], 6
cmovge esi, dword [ebp - 0x1064]
cmovl eax, ecx
mov ecx, dword [edx + 0x5c]
cmp ecx, eax
mov edx, dword [edx + 0x60]
cmovl ecx, eax
mov dword [ebp - 0x1064], 7
cmovge esi, dword [ebp - 0x1064]
cmp edx, ecx
mov dword [ebp - 0x103c], esi
mov esi, 8
mov eax, dword [ebp - 0x103c]
cmovl edx, ecx
cmovge eax, esi
mov dword [ebp - 0x1064], 0xa
mov dword [ebp - 0x103c], eax
mov esi, 9
mov eax, dword [ebp - 0x104c]
mov ecx, dword [eax + 0x11c]
mov eax, dword [ecx + 0x64]
cmp eax, edx
mov ecx, dword [ebp - 0x103c]
cmovge ecx, esi
cmovl eax, edx
mov dword [ebp - 0x103c], ecx
mov ecx, dword [ebp - 0x104c]
mov esi, dword [ebp - 0x103c]
mov edx, dword [ecx + 0x11c]
mov ecx, dword [edx + 0x68]
cmp ecx, eax
cmovge esi, dword [ebp - 0x1064]
cmovl ecx, eax
mov eax, dword [edx + 0x6c]
cmp eax, ecx
mov dword [ebp - 0x1064], 0xb
cmovge esi, dword [ebp - 0x1064]
cmovl eax, ecx
mov ecx, dword [edx + 0x70]
cmp ecx, eax
mov edx, dword [edx + 0x74]
mov dword [ebp - 0x1064], 0xc
cmovl ecx, eax
cmovge esi, dword [ebp - 0x1064]
cmp edx, ecx
mov dword [ebp - 0x103c], esi
mov esi, 0xd
mov eax, dword [ebp - 0x103c]
cmovl edx, ecx
cmovge eax, esi
mov dword [ebp - 0x1064], 0xe
mov dword [ebp - 0x103c], eax
mov eax, dword [ebp - 0x104c]
mov esi, dword [ebp - 0x103c]
mov ecx, dword [eax + 0x11c]
mov eax, dword [ecx + 0x78]
cmp eax, edx
cmovge esi, dword [ebp - 0x1064]
cmovl eax, edx
mov dword [ebp - 0x103c], esi
mov esi, dword [ebp - 0x1028]
cmp eax, 0x40
jge 0x47985c
push str.The_sacrifical_blade_is_not_a_proper_greatsword.
jmp 0x47b51e
mov edx, dword [ebp - 0x107c]
test edx, edx
jle 0x479882
cmp dword [ecx + 0x34], 1
jge 0x479876
push str.The_sacrifical_blade_does_not_have_any_Gold_Dust.
jmp 0x47b51e
mov eax, dword [ebp - 0x1040]
mov dword [ebp - 0x1014], eax
mov ecx, dword [ebp - 0x1044]
lea eax, [edx + edx]
test edx, edx
cmovle eax, edx
mov edx, dword [ebp - 0x1030]
mov dword [ebp - 0x107c], eax
cmp ecx, 0xffffffff
mov eax, 1
cmovg edx, eax
test ecx, ecx
mov eax, 2
cmovg edx, eax
cmp ecx, 1
mov eax, 4
cmovg edx, eax
cmp ecx, 2
mov eax, 8
cmovg edx, eax
cmp ecx, 3
mov eax, 0x10
cmovg edx, eax
cmp ecx, 4
mov eax, 0x20
cmovg edx, eax
mov eax, edx
mov edx, dword [ebp - 0x1034]
imul edx, eax
mov dword [ebp - 0x1030], edx
mov ecx, 0x5d2594
lea eax, [edi + 0x260]
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x479920
test dl, dl
je 0x47991c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x479920
add eax, 2
add ecx, 2
test dl, dl
jne 0x479900
xor eax, eax
jmp 0x479925
sbb eax, eax
or eax, 1
movss xmm1, dword [0x5d1b6c]
test eax, eax
jne 0x47995d
mov eax, dword [ebp - 0x103c]
movss xmm0, dword [0x5d0048]
inc eax
imul eax, dword [ebp - 0x1030]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
comiss xmm0, xmm1
jbe 0x479998
push str.Please_use_both_a_staff_and_a_greatsword.
jmp 0x47b51e
mov eax, dword [ebp - 0x1030]
cmp eax, 0x20
jle 0x479990
add eax, 0xffffffe0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm1, xmm0
addss xmm1, dword [0x5d0048]
mulss xmm1, dword [ebp - 0x1038]
addss xmm1, dword [ebp - 0x1038]
jmp 0x479998
movss xmm1, dword [ebp - 0x1038]
movd xmm0, dword [ebp - 0x1050]
lea eax, [edi + 0x260]
movaps xmm2, xmm1
mov dword [ebp - 0x1050], 0xffffffff
divss xmm2, dword [0x5d0bd8]
xor esi, esi
mov dword [ebp - 0x1034], 0xffffffff
xor edx, edx
mov ecx, 0x5d2594
cvtdq2ps xmm0, xmm0
mulss xmm2, xmm0
addss xmm2, xmm1
movss dword [ebp - 0x1038], xmm2
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x1009], dl
mov edx, esi
jne 0x479a19
cmp byte [ebp - 0x1009], dl
je 0x479a15
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x1009], dl
mov edx, esi
jne 0x479a19
add eax, 2
add ecx, 2
cmp byte [ebp - 0x1009], dl
jne 0x4799e1
xor eax, eax
jmp 0x479a1e
sbb eax, eax
or eax, 1
test eax, eax
je 0x479b17
mov edx, 2
lea ecx, [ebp - 0xf5c]
mov dword [ebp - 0x1020], edx
mov dword [ebp - 0x1024], ecx
nop dword [eax]
mov edi, dword [ecx - 4]
lea eax, [edx - 2]
cmp esi, edi
cmovge eax, dword [ebp - 0x1050]
cmovge edi, esi
mov dword [ebp - 0x1080], edi
mov edi, dword [ecx]
mov ecx, dword [ebp - 0x1024]
mov dword [ebp - 0x1064], eax
mov eax, dword [ebp - 0x1080]
cmp eax, edi
jge 0x479a79
dec edx
cmp eax, edi
mov dword [ebp - 0x1064], edx
mov ecx, dword [ecx + 4]
cmovge edi, eax
mov eax, dword [ebp - 0x1024]
cmp edi, ecx
mov esi, ecx
mov dword [ebp - 0x1080], edi
cmovge esi, edi
mov edx, dword [eax + 8]
cmp esi, edx
mov eax, dword [eax + 0xc]
mov edi, edx
cmovge edi, esi
mov dword [ebp - 0x101c], eax
cmp dword [ebp - 0x1080], ecx
mov eax, dword [ebp - 0x1020]
cmovge eax, dword [ebp - 0x1064]
mov ecx, dword [ebp - 0x1020]
inc ecx
cmp esi, edx
mov edx, dword [ebp - 0x1020]
mov esi, dword [ebp - 0x101c]
cmovge ecx, eax
cmp edi, esi
lea eax, [edx + 2]
cmovge eax, ecx
mov ecx, dword [ebp - 0x1024]
add edx, 5
mov dword [ebp - 0x1050], eax
add ecx, 0x14
mov dword [ebp - 0x1020], edx
cmp edi, esi
mov dword [ebp - 0x1024], ecx
lea eax, [edx - 2]
cmovge esi, edi
cmp eax, 0x14
jl 0x479a40
mov edi, dword [ebp - 0x106c]
xor edx, edx
mov esi, dword [ebp - 0x1050]
jmp 0x479b23
mov esi, dword [ebp - 0x103c]
mov dword [ebp - 0x1050], esi
test esi, esi
jns 0x479b63
lea eax, [ebp - 0x418]
push str.Use_ingots_to_make_weapons.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov eax, dword [ebp - 0x1028]
mov ecx, dword [eax + 0x11c]
jmp 0x47b54a
mov ecx, 0x5d2594
lea eax, [edi + 0x260]
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x1009], dl
mov edx, 0
jne 0x479bae
cmp byte [ebp - 0x1009], dl
je 0x479baa
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x1009], dl
mov edx, 0
jne 0x479bae
add eax, 2
add ecx, 2
cmp byte [ebp - 0x1009], dl
jne 0x479b70
xor eax, eax
jmp 0x479bb3
sbb eax, eax
or eax, 1
test eax, eax
je 0x479c7c
lea ecx, [ebp - 0xf5c]
mov dword [ebp + esi*4 - 0xf60], 0
mov edi, 2
mov dword [ebp - 0x1080], ecx
mov esi, dword [ecx - 4]
cmp edx, esi
mov ecx, dword [ecx]
cmovge esi, edx
mov dword [ebp - 0x1064], esi
lea esi, [edi - 2]
cmovge esi, dword [ebp - 0x1034]
mov eax, dword [ebp - 0x1064]
cmp eax, ecx
jge 0x479bfe
lea esi, [edi - 1]
cmovge ecx, eax
mov eax, dword [ebp - 0x1080]
mov edx, dword [eax + 4]
cmp ecx, edx
cmovge edx, ecx
cmovl esi, edi
mov dword [ebp - 0x1064], esi
lea ecx, [edi + 2]
mov esi, dword [eax + 8]
cmp edx, esi
mov eax, dword [eax + 0xc]
cmovge esi, edx
mov dword [ebp - 0x101c], eax
mov edx, dword [ebp - 0x101c]
lea eax, [edi + 1]
cmovge eax, dword [ebp - 0x1064]
cmp esi, edx
cmovge ecx, eax
add edi, 5
mov dword [ebp - 0x1034], ecx
mov ecx, dword [ebp - 0x1080]
add ecx, 0x14
cmp esi, edx
lea eax, [edi - 2]
mov dword [ebp - 0x1080], ecx
cmovge edx, esi
cmp eax, 0x14
jl 0x479bd7
mov eax, dword [ebp - 0x1034]
mov edi, dword [ebp - 0x106c]
mov dword [ebp - 0x1034], eax
imul eax, dword [edi + 0x188], 0x980
mov dword [ebp - 0x1020], 0
mov ecx, dword [eax + edi + 0x2e0]
add ecx, 8
call fcn.0044e020
mov esi, eax
test esi, esi
je 0x47b4d9
nop dword [eax]
mov ecx, esi
call fcn.0044c8e0
lea ecx, [edi + 0x260]
nop dword [eax]
mov dl, byte [ecx]
cmp dl, byte [eax]
jne 0x479ce0
test dl, dl
je 0x479cdc
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x479ce0
add ecx, 2
add eax, 2
test dl, dl
jne 0x479cc0
xor eax, eax
jmp 0x479ce5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x479cf5
mov eax, dword [esi + 0x11c]
mov dword [ebp - 0x1020], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2e0]
add ecx, 8
call fcn.0044e0d0
mov esi, eax
test esi, esi
jne 0x479cb0
mov esi, dword [ebp - 0x1020]
test esi, esi
je 0x47b4d9
call fcn.00565b3a
mov ecx, edi
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x5d3dd0]
divss xmm0, dword [0x5d3e8c]
addss xmm0, dword [0x5d3d9c]
movss dword [ebp - 0x1064], xmm0
call fcn.0047bec0
push dword [esi + 0xc]
cdq
push dword [esi + 8]
push edx
push eax
call fcn.005575c0
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.00556830
mov esi, dword [ebp - 0x1028]
mov ecx, 0x62d4e8
cvtsd2ss xmm0, xmm0
push esi
push 1
mulss xmm0, dword [ebp - 0x1064]
movss dword [ebp - 0x1024], xmm0
call fcn.0052e910
test eax, eax
je 0x479dde
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.0052f3e0
test eax, eax
je 0x479dde
movss xmm0, dword [ebp - 0x1024]
mulss xmm0, dword [0x5d3db4]
movss dword [ebp - 0x1024], xmm0
push esi
push 0
mov ecx, 0x62d4e8
call fcn.0052e910
test eax, eax
je 0x479e24
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.0052f3e0
test eax, eax
je 0x479e24
movss xmm0, dword [ebp - 0x1024]
mulss xmm0, dword [0x5d3db4]
movss dword [ebp - 0x1024], xmm0
push esi
push 2
mov ecx, 0x62d4e8
call fcn.0052e910
test eax, eax
je 0x479e6c
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.0052f3e0
movss xmm1, dword [ebp - 0x1024]
test eax, eax
je 0x479e74
mulss xmm1, dword [0x5d3db4]
movss dword [ebp - 0x1024], xmm1
jmp 0x479e74
movss xmm1, dword [ebp - 0x1024]
mov eax, dword [edi + 0x14f60]
test eax, eax
jle 0x479ea1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x5d3d8c]
addss xmm0, dword [0x5d0048]
mulss xmm0, xmm1
movss dword [ebp - 0x1024], xmm0
movss xmm0, dword [ebp - 0x1038]
lea eax, [ebp - 0x418]
cvtps2pd xmm0, xmm0
sub esp, 8
movsd qword [esp], xmm0
push str.Task_difficulty_is__4.2f.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x20
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
movss xmm0, dword [ebp - 0x1024]
lea eax, [ebp - 0x418]
cvtps2pd xmm0, xmm0
sub esp, 8
movsd qword [esp], xmm0
push str.Your_work_value_was__4.2f.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x20
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
imul ecx, dword [edi + 0x188], 0x980
movss xmm0, dword [ebp - 0x1024]
mov ecx, dword [ecx + edi + 0x2dc]
add ecx, 8
comiss xmm0, dword [ebp - 0x1038]
jb 0x47b13d
call fcn.0044e020
mov esi, eax
test esi, esi
je 0x47a094
nop dword [eax]
mov ecx, 0x5d2594
lea eax, [edi + 0x260]
nop dword [eax + eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x479fd0
test dl, dl
je 0x479fcc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x479fd0
add eax, 2
add ecx, 2
test dl, dl
jne 0x479fb0
xor eax, eax
jmp 0x479fd5
sbb eax, eax
or eax, 1
mov ecx, dword [esi + 0x110]
test eax, eax
je 0x47a044
cmp ecx, 4
jne 0x47a019
mov eax, dword [esi + 0x118]
cmp eax, 0x20
jle 0x479ffd
add eax, 0xffffffe0
mov dword [esi + 0x118], eax
jmp 0x47a071
imul eax, dword [edi + 0x188], 0x980
push esi
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e210
jmp 0x47a067
cmp ecx, 8
jne 0x47a071
mov ecx, dword [esi + 0x118]
cmp ecx, 1
jle 0x479ffd
mov eax, dword [esi + 0x11c]
mov eax, dword [eax]
sub eax, 5
cmp eax, 8
ja 0x479ffd
lea eax, [ecx - 1]
mov dword [esi + 0x118], eax
jmp 0x47a071
cmp ecx, 0xe
jne 0x47a071
imul eax, dword [edi + 0x188], 0x980
push esi
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e210
test esi, esi
je 0x47a071
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e0d0
mov esi, eax
test esi, esi
jne 0x479fa0
mov edi, dword [ebp - 0x102c]
mov ecx, 0x5d2594
mov eax, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x47a0c1
test dl, dl
je 0x47a0bd
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x47a0c1
add eax, 2
add ecx, 2
test dl, dl
jne 0x47a0a1
xor eax, eax
jmp 0x47a0c6
sbb eax, eax
or eax, 1
test eax, eax
je 0x47a15f
mov eax, dword [ebp - 0x1050]
lea esi, [ebp - 0x918]
shl eax, 6
lea ecx, [ebp - 0x418]
add eax, esi
mov esi, dword [ebp - 0x1034]
cmp esi, 0xffffffff
jle 0x47a14b
push ecx
push 0x5d00e0
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 0x47a108
sub ecx, edx
lea eax, [ebp - 0x418]
add eax, ecx
push str.__WXZQPNS
push eax
call fcn.0043d360
lea ecx, [ebp - 0x418]
add esp, 8
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x47a130
sub ecx, edx
shl esi, 6
lea eax, [ebp - 0x918]
add eax, esi
lea ecx, [ebp + ecx - 0x418]
push ecx
push 0x5d00e0
push eax
call fcn.0043dd00
add esp, 0xc
jmp 0x47a1fc
lea eax, [ebp - 0x418]
push eax
imul eax, dword [ebp - 0x1050], 0x13
push 0x5d00e0
add eax, 0x60f240
push eax
call fcn.0043dd00
mov esi, dword [ebp - 0x1014]
add esp, 0xc
test esi, esi
jle 0x47a1e8
lea ecx, [ebp - 0x418]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x47a193
sub ecx, edx
lea eax, [ebp - 0x418]
add eax, ecx
push 0x5d28bc
push eax
call fcn.0043d360
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 0x47a1c0
mov eax, esi
sub ecx, edx
shl eax, 4
lea eax, [eax + str.Fire]
add eax, esi
push eax
lea eax, [ebp - 0x418]
add eax, ecx
push eax
call fcn.0043d360
add esp, 8
mov eax, dword [ebp - 0x1040]
cmp eax, 0xc
jle 0x47a1fc
sub eax, 6
mov dword [ebp - 0x1040], eax
lea ecx, [ebp - 0x418]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x47a205
sub ecx, edx
lea eax, [ebp - 0x418]
add eax, ecx
push 0x5d28bc
push eax
call fcn.0043d360
add esp, 8
mov ecx, 0x5d2594
mov eax, edi
nop dword [eax + eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x47a250
test dl, dl
je 0x47a24c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x47a250
add eax, 2
add ecx, 2
test dl, dl
jne 0x47a230
xor eax, eax
jmp 0x47a255
sbb eax, eax
or eax, 1
test eax, eax
je 0x47a28f
mov edx, dword [ebp - 0x1030]
xor ecx, ecx
lea eax, [ecx + ecx*8]
cmp dword [eax*8 + 0x60ebe0], edx
jg 0x47a279
mov eax, 3
inc ecx
cmp ecx, eax
jl 0x47a261
jmp 0x47a27c
lea eax, [ecx - 1]
xor esi, esi
test eax, eax
cmovns esi, eax
cmp esi, 2
jle 0x47a295
mov esi, 2
jmp 0x47a295
mov esi, dword [ebp - 0x1044]
mov ecx, 0x5d2538
mov eax, edi
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x47a2c0
test dl, dl
je 0x47a2bc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x47a2c0
add eax, 2
add ecx, 2
test dl, dl
jne 0x47a2a0
xor eax, eax
jmp 0x47a2c5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47a2e8
lea ecx, [ebp - 0x418]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x47a2d2
lea eax, [esi + esi*8]
lea eax, [eax*8 + str.Tanto]
jmp 0x47a473
mov ecx, 0x5d2584
mov eax, edi
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x47a310
test dl, dl
je 0x47a30c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x47a310
add eax, 2
add ecx, 2
test dl, dl
jne 0x47a2f0
xor eax, eax
jmp 0x47a315
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47a338
lea ecx, [ebp - 0x418]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x47a322
lea eax, [esi + esi*8]
lea eax, [eax*8 + str.Talon]
jmp 0x47a473
mov ecx, 0x5d254c
mov eax, edi
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x47a360
test dl, dl
je 0x47a35c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x47a360
add eax, 2
add ecx, 2
test dl, dl
jne 0x47a340
xor eax, eax
jmp 0x47a365
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47a388
lea ecx, [ebp - 0x418]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x47a372
lea eax, [esi + esi*8]
lea eax, [eax*8 + str.Chaos_Knife]
jmp 0x47a473
mov ecx, 0x5d256c
mov eax, edi
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x47a3b0
test dl, dl
je 0x47a3ac
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x47a3b0
add eax, 2
add ecx, 2
test dl, dl
jne 0x47a390
xor eax, eax
jmp 0x47a3b5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47a3d8
lea ecx, [ebp - 0x418]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x47a3c2
lea eax, [esi + esi*8]
lea eax, [eax*8 + str.Edgestaff]
jmp 0x47a473
mov ecx, 0x5d255c
mov eax, edi
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x47a400
test dl, dl
je 0x47a3fc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x47a400
add eax, 2
add ecx, 2
test dl, dl
jne 0x47a3e0
xor eax, eax
jmp 0x47a405
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47a425
lea ecx, [ebp - 0x418]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x47a412
lea eax, [esi + esi*8]
lea eax, [eax*8 + str.Small_Mace]
jmp 0x47a473
mov ecx, 0x5d2594
mov eax, edi
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x47a450
test dl, dl
je 0x47a44c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x47a450
add eax, 2
add ecx, 2
test dl, dl
jne 0x47a430
xor eax, eax
jmp 0x47a455
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47a487
lea ecx, [ebp - 0x418]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x47a462
lea eax, [esi + esi*8]
lea eax, [eax*8 + str.Pine_Scythe]
push eax
sub ecx, edx
lea eax, [ebp - 0x418]
add eax, ecx
push eax
call fcn.0043d360
add esp, 8
push 0x120
call fcn.0055644a
add esp, 4
mov dword [ebp - 0x1014], eax
mov byte [ebp - 4], 2
test eax, eax
je 0x47a4b6
lea ecx, [ebp - 0x418]
push ecx
push 0
push 1
mov ecx, eax
call fcn.0050ce20
jmp 0x47a4b8
xor eax, eax
mov edi, dword [eax + 0x11c]
mov ecx, 0x5d2594
mov dword [ebp - 0x1050], eax
mov eax, dword [ebp - 0x102c]
mov byte [ebp - 4], 0
mov dword [ebp - 0x1034], edi
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x102c]
jne 0x47a522
cmp byte [ebp - 0x1009], 0
je 0x47a51e
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x102c]
jne 0x47a522
add eax, 2
add ecx, 2
cmp byte [ebp - 0x1009], 0
jne 0x47a4e0
xor eax, eax
jmp 0x47a527
sbb eax, eax
or eax, 1
test eax, eax
je 0x47a580
movd xmm0, dword [ebp - 0x1030]
lea eax, [esi + esi*8]
movd xmm1, dword [eax*8 + 0x60ebe4]
cvtdq2ps xmm1, xmm1
mov esi, dword [ebp - 0x104c]
cvtdq2ps xmm0, xmm0
mulss xmm1, dword [ebp - 0x10a0]
divss xmm1, xmm0
mulss xmm1, dword [0x5d0bb4]
cvttss2si ecx, xmm1
mov dword [edi], ecx
mov eax, dword [esi + 0x11c]
mov eax, dword [eax]
cdq
sub eax, edx
mov edx, dword [ebp - 0x102c]
sar eax, 1
add eax, ecx
jmp 0x47a58e
mov esi, dword [ebp - 0x104c]
mov eax, dword [esi + 0x11c]
mov eax, dword [eax]
mov ecx, edi
mov dword [ecx], eax
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 4]
add eax, dword [ebp - 0xea4]
mov dword [edi + 4], eax
mov eax, dword [ebp - 0x1030]
add eax, 0x20
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x5d1b70]
cvtps2pd xmm0, xmm0
addsd xmm0, qword [0x5d0050]
cvtpd2ps xmm1, xmm0
comiss xmm1, dword [0x5d0bd8]
movss dword [edi + 8], xmm1
movaps xmm0, xmm1
jbe 0x47a675
mov ecx, 0x5d2594
mov eax, edx
nop word [eax + eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x102c]
jne 0x47a632
cmp byte [ebp - 0x1009], 0
je 0x47a62e
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x102c]
jne 0x47a632
add eax, 2
add ecx, 2
cmp byte [ebp - 0x1009], 0
jne 0x47a5f0
xor eax, eax
jmp 0x47a637
sbb eax, eax
or eax, 1
movaps xmm0, xmm1
test eax, eax
jne 0x47a675
mulss xmm1, dword [0x5d1b6c]
cvttss2si eax, xmm1
movss xmm1, dword [0x5d3e54]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm0, dword [0x5d0074]
comiss xmm0, xmm1
movss dword [edi + 8], xmm0
jbe 0x47a675
mov dword [edi + 8], 0x41c80000
movaps xmm0, xmm1
mov ecx, 0x5d2594
mov eax, edx
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x102c]
jne 0x47a6c2
cmp byte [ebp - 0x1009], 0
je 0x47a6be
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x102c]
jne 0x47a6c2
add eax, 2
add ecx, 2
cmp byte [ebp - 0x1009], 0
jne 0x47a680
xor eax, eax
jmp 0x47a6c7
sbb eax, eax
or eax, 1
test eax, eax
je 0x47a6d8
mulss xmm0, dword [0x5d3da4]
movss dword [edi + 8], xmm0
mov ecx, 0x5d2594
mov eax, edx
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x102c]
jne 0x47a722
cmp byte [ebp - 0x1009], 0
je 0x47a71e
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x102c]
jne 0x47a722
add eax, 2
add ecx, 2
cmp byte [ebp - 0x1009], 0
jne 0x47a6e0
xor eax, eax
jmp 0x47a727
sbb eax, eax
or eax, 1
test eax, eax
je 0x47a83f
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x40]
add eax, dword [ebp - 0xe68]
mov dword [edi + 0x40], eax
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x44]
add eax, dword [ebp - 0xe64]
mov dword [edi + 0x44], eax
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x48]
add eax, dword [ebp - 0xe60]
mov dword [edi + 0x48], eax
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x4c]
add eax, dword [ebp - 0xe5c]
mov dword [edi + 0x4c], eax
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x50]
add eax, dword [ebp - 0xe58]
mov dword [edi + 0x50], eax
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x54]
add eax, dword [ebp - 0xe54]
mov dword [edi + 0x54], eax
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x58]
add eax, dword [ebp - 0xe50]
mov dword [edi + 0x58], eax
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x5c]
add eax, dword [ebp - 0xe4c]
mov dword [edi + 0x5c], eax
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x60]
add eax, dword [ebp - 0xe48]
mov dword [edi + 0x60], eax
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x64]
add eax, dword [ebp - 0xe44]
mov dword [edi + 0x64], eax
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x68]
add eax, dword [ebp - 0xe40]
mov dword [edi + 0x68], eax
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x6c]
add eax, dword [ebp - 0xe3c]
mov dword [edi + 0x6c], eax
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x70]
add eax, dword [ebp - 0xe38]
mov dword [edi + 0x70], eax
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x74]
add eax, dword [ebp - 0xe34]
mov dword [edi + 0x74], eax
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x78]
add eax, dword [ebp - 0xe30]
jmp 0x47a9e0
mov eax, dword [ebp - 0x1044]
test eax, eax
jne 0x47a84e
lea ecx, [eax + 1]
jmp 0x47a887
cmp eax, 1
jne 0x47a858
lea ecx, [eax + 1]
jmp 0x47a887
cmp eax, 2
jne 0x47a862
lea ecx, [eax + 2]
jmp 0x47a887
cmp eax, 3
jne 0x47a86c
lea ecx, [eax + 5]
jmp 0x47a887
cmp eax, 4
jne 0x47a876
lea ecx, [eax + 0xc]
jmp 0x47a887
mov ecx, dword [ebp - 0x1014]
cmp eax, 5
mov eax, 0x20
cmove ecx, eax
mov eax, dword [ebp - 0x103c]
test eax, eax
jne 0x47a8a4
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x40]
add eax, ecx
mov dword [edi + 0x40], eax
jmp 0x47a9e3
cmp eax, 1
jne 0x47a8bc
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x44]
add eax, ecx
mov dword [edi + 0x44], eax
jmp 0x47a9e3
cmp eax, 2
jne 0x47a8d4
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x48]
add eax, ecx
mov dword [edi + 0x48], eax
jmp 0x47a9e3
cmp eax, 3
jne 0x47a8ec
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x4c]
add eax, ecx
mov dword [edi + 0x4c], eax
jmp 0x47a9e3
cmp eax, 4
jne 0x47a904
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x50]
add eax, ecx
mov dword [edi + 0x50], eax
jmp 0x47a9e3
cmp eax, 5
jne 0x47a91c
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x54]
add eax, ecx
mov dword [edi + 0x54], eax
jmp 0x47a9e3
cmp eax, 6
jne 0x47a934
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x58]
add eax, ecx
mov dword [edi + 0x58], eax
jmp 0x47a9e3
cmp eax, 7
jne 0x47a94c
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x5c]
add eax, ecx
mov dword [edi + 0x5c], eax
jmp 0x47a9e3
cmp eax, 8
jne 0x47a964
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x60]
add eax, ecx
mov dword [edi + 0x60], eax
jmp 0x47a9e3
cmp eax, 9
jne 0x47a97c
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x64]
add eax, ecx
mov dword [edi + 0x64], eax
jmp 0x47a9e3
cmp eax, 0xa
jne 0x47a991
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x68]
add eax, ecx
mov dword [edi + 0x68], eax
jmp 0x47a9e3
cmp eax, 0xb
jne 0x47a9a6
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x6c]
add eax, ecx
mov dword [edi + 0x6c], eax
jmp 0x47a9e3
cmp eax, 0xc
jne 0x47a9bb
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x70]
add eax, ecx
mov dword [edi + 0x70], eax
jmp 0x47a9e3
cmp eax, 0xd
jne 0x47a9d0
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x74]
add eax, ecx
mov dword [edi + 0x74], eax
jmp 0x47a9e3
cmp eax, 0xe
jne 0x47a9e3
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x78]
add eax, ecx
mov dword [edi + 0x78], eax
mov eax, dword [esi + 0x11c]
mov ecx, 0x5d2594
mov esi, dword [eax + 0x38]
mov eax, 0x2710
cmp esi, eax
cmovg esi, eax
mov eax, edx
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x102c]
jne 0x47aa42
cmp byte [ebp - 0x1009], 0
je 0x47aa3e
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x102c]
jne 0x47aa42
add eax, 2
add ecx, 2
cmp byte [ebp - 0x1009], 0
jne 0x47aa00
xor eax, eax
jmp 0x47aa47
sbb eax, eax
or eax, 1
test eax, eax
je 0x47aa79
movd xmm1, esi
cvtdq2pd xmm1, xmm1
movd xmm0, dword [edi]
divsd xmm1, qword [0x5d3e40]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm1
addsd xmm1, qword [0x5d3e10]
mulsd xmm1, xmm0
cvttsd2si eax, xmm1
mov dword [edi], eax
mov ecx, 0x5d2538
mov eax, edx
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x102c]
jne 0x47aac2
cmp byte [ebp - 0x1009], 0
je 0x47aabe
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x102c]
jne 0x47aac2
add eax, 2
add ecx, 2
cmp byte [ebp - 0x1009], 0
jne 0x47aa80
xor eax, eax
jmp 0x47aac7
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47aadb
mov dword [edi + 0x3c], 1
add dword [edi + 4], 0x14
jmp 0x47aca3
mov ecx, 0x5d2584
mov eax, edx
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x102c]
jne 0x47ab24
cmp byte [ebp - 0x1009], 0
je 0x47ab20
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x102c]
jne 0x47ab24
add eax, 2
add ecx, 2
cmp byte [ebp - 0x1009], 0
jne 0x47aae2
xor eax, eax
jmp 0x47ab29
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47ab39
mov dword [edi + 0x3c], 4
jmp 0x47aca3
mov ecx, 0x5d254c
mov eax, edx
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x102c]
jne 0x47ab82
cmp byte [ebp - 0x1009], 0
je 0x47ab7e
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x102c]
jne 0x47ab82
add eax, 2
add ecx, 2
cmp byte [ebp - 0x1009], 0
jne 0x47ab40
xor eax, eax
jmp 0x47ab87
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47ab97
mov dword [edi + 0x3c], 3
jmp 0x47aca3
mov ecx, 0x5d256c
mov eax, edx
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x102c]
jne 0x47abe2
cmp byte [ebp - 0x1009], 0
je 0x47abde
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x102c]
jne 0x47abe2
add eax, 2
add ecx, 2
cmp byte [ebp - 0x1009], 0
jne 0x47aba0
xor eax, eax
jmp 0x47abe7
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47abf7
mov dword [edi + 0x3c], 5
jmp 0x47aca3
mov ecx, 0x5d2594
mov eax, edx
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x102c]
jne 0x47ac42
cmp byte [ebp - 0x1009], 0
je 0x47ac3e
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x102c]
jne 0x47ac42
add eax, 2
add ecx, 2
cmp byte [ebp - 0x1009], 0
jne 0x47ac00
xor eax, eax
jmp 0x47ac47
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47ac62
mov eax, dword [ebp - 0x1040]
add eax, 6
mov dword [edi + 0x3c], eax
mov eax, dword [ebp - 0x107c]
mov dword [edi + 0x38], eax
jmp 0x47aca3
mov ecx, 0x5d255c
mov eax, edx
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x47ac90
test dl, dl
je 0x47ac8c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x47ac90
add eax, 2
add ecx, 2
test dl, dl
jne 0x47ac70
xor eax, eax
jmp 0x47ac95
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47aca3
mov dword [edi + 0x3c], 2
add dword [edi], 0x1e
movss xmm0, dword [ebp - 0x10a4]
mov eax, dword [ebp - 0x1050]
mulss xmm0, dword [0x5d3dcc]
mov esi, dword [ebp - 0x104c]
mov ecx, dword [ebp - 0x1030]
movss dword [eax + 0x10c], xmm0
addss xmm0, dword [esi + 0x10c]
movss dword [eax + 0x10c], xmm0
mov eax, dword [ebp - 0x1084]
cdq
idiv ecx
mov dword [edi + 0x10], eax
mov eax, dword [ebp - 0x1074]
cdq
idiv ecx
mov dword [edi + 0x14], eax
mov eax, dword [ebp - 0x1010]
cdq
idiv ecx
mov ecx, 0x5d2594
mov dword [edi + 0x18], eax
mov eax, dword [ebp - 0x102c]
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x47ad30
test dl, dl
je 0x47ad2c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x47ad30
add eax, 2
add ecx, 2
test dl, dl
jne 0x47ad10
xor eax, eax
jmp 0x47ad35
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47ad5d
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x10]
mov dword [edi + 0x10], eax
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x14]
mov dword [edi + 0x14], eax
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x18]
mov dword [edi + 0x18], eax
mov eax, dword [esi + 0x11c]
mov dword [ebp - 0x1014], 0xffffffff
mov esi, dword [eax + 0x20]
add esi, dword [ebp - 0xea0]
mov eax, dword [ebp - 0x104c]
mov dword [edi + 0x20], esi
mov eax, dword [eax + 0x11c]
mov edx, dword [eax + 0x2c]
add edx, dword [ebp - 0xea8]
mov eax, dword [ebp - 0x104c]
mov dword [edi + 0x2c], edx
mov eax, dword [eax + 0x11c]
mov edi, dword [eax + 0x28]
add edi, dword [ebp - 0xe98]
mov eax, dword [ebp - 0x1034]
mov dword [eax + 0x28], edi
mov eax, dword [ebp - 0x104c]
mov eax, dword [eax + 0x11c]
mov ecx, dword [eax + 0x24]
mov eax, dword [ebp - 0xe9c]
add eax, ecx
mov ecx, dword [ebp - 0x1034]
mov dword [ebp - 0x1064], eax
mov dword [ecx + 0x24], eax
mov eax, dword [ebp - 0x104c]
mov eax, dword [eax + 0x11c]
mov eax, dword [eax + 0x30]
add eax, dword [ebp - 0xe6c]
mov dword [ecx + 0x30], eax
mov eax, dword [ebp - 0x104c]
mov eax, dword [eax + 0x11c]
mov eax, dword [eax + 0x34]
add eax, dword [ebp - 0xe70]
mov dword [ecx + 0x34], eax
xor ecx, ecx
test esi, esi
mov eax, esi
cmovle eax, ecx
mov ecx, edx
cmp edx, eax
cmovle ecx, eax
test esi, esi
mov esi, 2
cmovle esi, dword [ebp - 0x1014]
mov dword [ebp - 0x1080], esi
xor esi, esi
cmp edx, eax
mov eax, 4
cmovle esi, dword [ebp - 0x1080]
cmp edi, ecx
cmovg esi, eax
cmovle edi, ecx
mov ecx, dword [ebp - 0x1064]
mov eax, 3
cmp ecx, edi
cmovg esi, eax
cmovle ecx, edi
mov eax, dword [ebp - 0x104c]
mov eax, dword [eax + 0x11c]
mov eax, dword [eax + 4]
add eax, dword [ebp - 0xea4]
cmp eax, ecx
jg case.0x47ae87.1
mov eax, ecx
cmp esi, 0xffffffff
jle 0x47af18
mov edi, eax
cmp esi, 4
ja case.0x47ae87.1
jmp dword [esi*4 + 0x47b5c8]
mov ecx, dword [ebp - 0x1034]
mov edx, 0x11
mov eax, edi
mov dword [ecx + 0x1c], 0x11
jmp 0x47aefb
mov ecx, dword [ebp - 0x1034]
mov edx, 0x15
mov eax, edi
mov dword [ecx + 0x1c], 0x15
jmp 0x47aefb
mov ecx, dword [ebp - 0x1034]
mov edx, 9
mov eax, edi
mov dword [ecx + 0x1c], 9
jmp 0x47aefb
mov ecx, dword [ebp - 0x1034]
mov edx, 0xd
mov eax, edi
mov dword [ecx + 0x1c], 0xd
jmp 0x47aefb
mov ecx, dword [ebp - 0x1034]
mov edx, 1
mov dword [ecx + 0x1c], 1
cmp eax, 1
jle 0x47af04
inc edx
mov dword [ecx + 0x1c], edx
cmp eax, 4
jle 0x47af0d
inc edx
mov dword [ecx + 0x1c], edx
cmp eax, 9
jle 0x47af18
lea eax, [edx + 1]
mov dword [ecx + 0x1c], eax
mov eax, 5
nop dword [eax]
cmp dword [ebp + eax*4 - 0xea8], 0
jg 0x47af35
inc eax
or ecx, 0xffffffff
cmp eax, 0xd
jle 0x47af20
jmp 0x47af38
lea ecx, [eax - 5]
mov esi, dword [ebp - 0x1034]
cmp ecx, 0xffffffff
jle 0x47af5c
lea eax, [ecx + 0x19]
mov dword [esi + 0x1c], eax
mov eax, 0x66666667
imul dword [esi]
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
add dword [esi], eax
mov edi, dword [ebp - 0x102c]
mov ecx, 0x5d2594
mov eax, edi
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x47af90
test dl, dl
je 0x47af8c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x47af90
add eax, 2
add ecx, 2
test dl, dl
jne 0x47af70
xor eax, eax
jmp 0x47af95
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47afb0
mov eax, dword [ebp - 0x104c]
mov eax, dword [eax + 0x11c]
mov eax, dword [eax + 0x1c]
cmp eax, 0x19
jl 0x47afb0
mov dword [esi + 0x1c], eax
lea eax, [ebp - 0x418]
push str.You_have_created_a
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov esi, dword [ebp - 0x1028]
lea edx, [ebp - 0x105c]
add esp, 0x18
mov ecx, dword [esi + 0x11c]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [ecx]
push edx
push 0x65
mov eax, dword [eax + 4]
call eax
mov ecx, dword [ebp - 0x1050]
call fcn.0044c8e0
push eax
lea eax, [ebp - 0x418]
push 0x5d28d4
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov ecx, dword [esi + 0x11c]
lea edx, [ebp - 0x105c]
add esp, 0x1c
mov eax, dword [ecx]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
movss xmm0, dword [ebp - 0x1024]
push edi
mov edi, dword [ebp - 0x106c]
sub esp, 8
mov ecx, edi
movss dword [esp + 4], xmm0
movss xmm0, dword [ebp - 0x1038]
movss dword [esp], xmm0
push dword [ebp - 0x1050]
push esi
call fcn.00483280
imul ecx, dword [edi + 0x188], 0x980
push dword [ebp - 0x1050]
mov ecx, dword [ecx + edi + 0x2d8]
call fcn.0050da70
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e020
mov esi, eax
test esi, esi
je 0x47b253
nop
cmp dword [esi + 0x110], 1
jne 0x47b119
cmp dword [ebp - 0x104c], esi
jne 0x47b119
mov eax, dword [esi + 0x118]
cmp eax, 1
jne 0x47b112
imul eax, dword [edi + 0x188], 0x980
push esi
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e210
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
jmp 0x47b119
dec eax
mov dword [esi + 0x118], eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e0d0
mov esi, eax
test esi, esi
jne 0x47b0d0
jmp 0x47b253
call fcn.0044e020
mov esi, eax
test esi, esi
je 0x47b253
movss xmm0, dword [ebp - 0x1024]
divss xmm0, dword [ebp - 0x1038]
movss dword [ebp - 0x1014], xmm0
call fcn.00565b3a
movd xmm0, eax
cvtdq2ps xmm0, xmm0
divss xmm0, dword [0x5d3e8c]
addss xmm0, dword [0x5d0044]
comiss xmm0, dword [ebp - 0x1014]
jbe 0x47b230
mov eax, dword [esi + 0x110]
cmp eax, 4
je 0x47b1ef
cmp eax, 8
jne 0x47b230
mov eax, dword [esi + 0x11c]
mov eax, dword [eax]
cmp eax, 5
jl 0x47b1ef
add eax, 0xfffffffb
cmp eax, 0xa
ja 0x47b230
call fcn.00565b3a
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x5d0bd8]
divss xmm0, dword [0x5d3e8c]
addss xmm0, dword [0x5d0044]
ucomiss xmm0, dword [0x5d0058]
lahf
test ah, 0x44
jp 0x47b230
cmp dword [esi + 0x110], 1
je 0x47b230
mov eax, dword [esi + 0x118]
cmp eax, 1
jle 0x47b20c
dec eax
mov dword [esi + 0x118], eax
jmp 0x47b230
imul eax, dword [edi + 0x188], 0x980
push esi
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e210
mov eax, dword [esi]
mov ecx, esi
push 1
mov eax, dword [eax]
call eax
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e0d0
mov esi, eax
test esi, esi
jne 0x47b164
mov esi, dword [ebp - 0x1020]
mov ecx, dword [esi + 0xc]
mov eax, dword [esi + 8]
mov dword [ebp - 0x1010], eax
mov dword [ebp - 0x1064], ecx
test ecx, ecx
ja 0x47b566
jb 0x47b280
cmp eax, 0x5dc
jae 0x47b566
movss xmm1, dword [ebp - 0x1024]
movaps xmm0, xmm1
movss xmm2, dword [ebp - 0x1038]
divss xmm0, dword [0x5d3e5c]
comiss xmm2, xmm0
jbe 0x47b566
mov eax, dword [0x62ca90]
mov edx, dword [esi + 4]
mov ecx, dword [esi]
movd xmm0, dword [eax + 0x98]
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
movss dword [ebp - 0x1014], xmm0
call fcn.00556830
movss xmm1, dword [ebp - 0x1014]
cvtsd2ss xmm0, xmm0
addss xmm1, xmm0
xorps xmm0, xmm0
movlpd qword [ebp - 0x1078], xmm0
movss xmm0, dword [0x5d3e90]
comiss xmm1, xmm0
jb 0x47b311
subss xmm1, xmm0
comiss xmm0, xmm1
jbe 0x47b311
mov esi, dword [ebp - 0x1078]
mov eax, dword [ebp - 0x1074]
add esi, 0
adc eax, 0x80000000
jmp 0x47b31d
mov eax, dword [ebp - 0x1074]
mov esi, dword [ebp - 0x1078]
movaps xmm0, xmm1
mov dword [ebp - 0x1014], eax
call fcn.005565b0
mov ecx, dword [ebp - 0x1020]
mov edi, eax
add edi, esi
mov eax, edx
adc eax, dword [ebp - 0x1014]
mov dword [ecx], edi
mov dword [ecx + 4], eax
mov ecx, dword [ebp - 0x1064]
push ecx
mov dword [ebp - 0x1014], eax
mov eax, dword [ebp - 0x1010]
push eax
push ecx
push eax
call fcn.005575c0
mov ecx, eax
mov esi, 0xbb8
mov eax, edx
mul esi
mov esi, eax
mov eax, ecx
mov ecx, 0xbb8
mul ecx
mov ecx, dword [ebp - 0x1014]
add esi, edx
cmp esi, ecx
ja 0x47b566
jb 0x47b38d
cmp eax, edi
ja 0x47b566
mov eax, edi
mov edx, 0x671529a5
mul edx
mov eax, edi
mov esi, edx
mov edx, 0xaec33e1f
mul edx
mov edi, eax
mov dword [ebp - 0x1010], edx
mov eax, ecx
mov ecx, 0x671529a5
mul ecx
mov dword [ebp - 0x1064], edx
mov ecx, eax
mov eax, dword [ebp - 0x1014]
mov edx, 0xaec33e1f
mul edx
add ecx, esi
mov dword [ebp - 0x1074], edx
mov edx, dword [ebp - 0x1064]
adc edx, 0
mov dword [ebp - 0x1014], eax
mov esi, eax
add edi, ecx
mov ecx, dword [ebp - 0x1010]
adc ecx, 0
xor eax, eax
add edx, ecx
mov ecx, dword [ebp - 0x1074]
adc eax, eax
add esi, edx
adc ecx, eax
shrd esi, ecx, 0xb
shr ecx, 0xb
mov edx, ecx
mov ecx, esi
call fcn.00556830
xorps xmm1, xmm1
ucomisd xmm1, xmm0
ja 0x47b41a
sqrtsd xmm0, xmm0
jmp 0x47b41f
call fcn.00592a30
movaps xmm1, xmm0
xorps xmm0, xmm0
addsd xmm1, qword [0x5d0050]
movlpd qword [ebp - 0x1018], xmm0
movsd xmm0, qword [0x5d3e78]
comisd xmm1, xmm0
jb 0x47b464
subsd xmm1, xmm0
comisd xmm0, xmm1
jbe 0x47b464
mov esi, dword [ebp - 0x1018]
mov edi, dword [ebp - 0x1014]
add esi, 0
adc edi, 0x80000000
jmp 0x47b470
mov edi, dword [ebp - 0x1014]
mov esi, dword [ebp - 0x1018]
movaps xmm0, xmm1
call fcn.00556780
mov ecx, dword [ebp - 0x1020]
add eax, esi
push str.You_gained_a_skill_level__
adc edx, edi
mov dword [ecx + 8], eax
lea eax, [ebp - 0x418]
push eax
mov dword [ecx + 0xc], edx
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov ecx, dword [ebp - 0x106c]
imul eax, dword [ecx + 0x188], 0x980
movss xmm0, dword [eax + ecx + 0x300]
addss xmm0, dword [0x5d16d8]
jmp 0x47165f
lea eax, [ebp - 0x418]
push str.BUG:_Cannot_find_skill_for_level.
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov eax, dword [ebp - 0x1028]
mov ecx, dword [eax + 0x11c]
jmp 0x47b54a
push str.You_must_sacrifice_one_blade_to_make_this.
jmp 0x47b51e
push str.You_must_first_learn_to_create_swords.
lea eax, [ebp - 0x418]
push eax
call fcn.0043d360
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov ecx, dword [esi + 0x11c]
add esp, 0x18
mov eax, dword [ecx]
lea edx, [ebp - 0x105c]
push edx
push 0
lea edx, [ebp - 0xfc8]
mov eax, dword [eax + 4]
push edx
push 0x65
call eax
lea ecx, [ebp - 0x105c]
call fcn.0046dc40
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.00556488
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret 4