Function at 0x4701e0
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 0x5c50d7
mov eax, dword fs:[0]
push eax
push ebx
mov eax, 0x10c8
call fcn.00559fa0
mov eax, dword [0x62c7a8]
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.0048da40
lea eax, [edi + 0x260]
mov byte [ebp - 0xfc8], 0x17
mov dword [ebp - 0x102c], eax
mov ecx, 0x5d5518
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4702d7
test dl, dl
je 0x4702d3
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4702d7
add eax, 2
add ecx, 2
test dl, dl
jne 0x4702b7
xor eax, eax
jmp 0x4702dc
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4716d5
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 0x47069f
mov eax, dword [edx + 0x110]
cmp eax, 8
jne 0x470447
mov eax, dword [edx + 0x11c]
mov ecx, dword [eax]
test ecx, ecx
js 0x470663
cmp ecx, 0x10
jg 0x470663
lea eax, [ecx - 5]
cmp eax, 8
ja 0x470413
cmp byte [ebp - 0x1045], 0
jne 0x470627
cmp dword [edx + 0x118], 1
jne 0x470627
inc dword [ebp + ecx*4 - 0xea8]
inc dword [ebp - 0x1040]
mov byte [ebp - 0x1045], 1
jmp 0x4705c0
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 0x4705c0
add eax, edx
lea eax, [eax + edx*2]
mov dword [ebp - 0x1040], eax
jmp 0x4705c0
cmp eax, 4
jne 0x4705c0
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 0x47056a
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 0x470540
test dl, dl
je 0x47053c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x470540
add eax, 2
add ecx, 2
test dl, dl
jne 0x470520
xor eax, eax
jmp 0x470545
sbb eax, eax
or eax, 1
mov ecx, dword [ebp - 0x1020]
test eax, eax
jne 0x47056c
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 0x47056c
je 0x470578
inc esi
cmp esi, 0x14
jl 0x4704f0
jmp 0x4705ba
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.0043d380
mov eax, dword [ebp - 0x1074]
add esp, 8
mov ecx, dword [ebp - 0x1020]
cvttss2si eax, dword [eax + 0x10]
mov dword [ebp + eax*4 - 0xe6c], ecx
mov esi, dword [ebp - 0x1024]
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e0d0
mov edx, eax
mov dword [ebp - 0x1038], eax
test edx, edx
jne 0x4703b0
mov ecx, dword [ebp - 0x1024]
movss xmm2, dword [ebp - 0x1044]
cmp ecx, 0x40
jle 0x4706a9
lea eax, [ecx - 0x40]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x5d4b6c]
addss xmm0, dword [0x5d3048]
mulss xmm0, xmm2
addss xmm2, xmm0
jmp 0x4706a9
lea eax, [ebp - 0x418]
push str.You_can_only_have_one_shard_in_your_workbench_when_you_craft.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov eax, dword [ebp - 0x1028]
mov ecx, dword [eax + 0x11c]
jmp 0x47b56a
lea eax, [ebp - 0x418]
push str.Ingredient_type_out_of_bounds___Please_report_this_bug.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov eax, dword [ebp - 0x1028]
mov ecx, dword [eax + 0x11c]
jmp 0x47b56a
movss xmm2, dword [ebp - 0x1044]
xor ecx, ecx
movd xmm0, dword [ebp - 0x1040]
movaps xmm1, xmm2
divss xmm1, dword [0x5d3bd8]
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 0x4707e8
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 0x470700
mov eax, dword [ebp - 0x1050]
test eax, eax
jns 0x47086d
lea eax, [ebp - 0x418]
push str.Use_ingots_to_make_blades.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov eax, dword [ebp - 0x1028]
mov ecx, dword [eax + 0x11c]
jmp 0x47b56a
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 0x470980
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 0x470892
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 0x471699
mov ecx, esi
call fcn.0044c8e0
mov ecx, eax
lea eax, [edi + 0x260]
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x470a30
test dl, dl
je 0x470a2c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x470a30
add eax, 2
add ecx, 2
test dl, dl
jne 0x470a10
xor eax, eax
jmp 0x470a35
sbb eax, eax
or eax, 1
test eax, eax
jne 0x470a45
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 0x470a00
mov esi, dword [ebp - 0x1040]
test esi, esi
je 0x471699
call fcn.00568dab
mov ecx, edi
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x5d6dd0]
divss xmm0, dword [0x5d6e8c]
addss xmm0, dword [0x5d6d9c]
movss dword [ebp - 0x1014], xmm0
call fcn.0047bee0
push dword [esi + 0xc]
cdq
push dword [esi + 8]
push edx
push eax
call fcn.0055a830
mov ecx, eax
call fcn.00559aa0
mov esi, dword [ebp - 0x1028]
mov ecx, 0x631538
cvtsd2ss xmm0, xmm0
push esi
push 1
mulss xmm0, dword [ebp - 0x1014]
movss dword [ebp - 0x103c], xmm0
call fcn.0052fb80
test eax, eax
je 0x470b1a
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.00530650
test eax, eax
je 0x470b1a
movss xmm0, dword [ebp - 0x103c]
mulss xmm0, dword [0x5d6db4]
movss dword [ebp - 0x103c], xmm0
push esi
push 0
mov ecx, 0x631538
call fcn.0052fb80
test eax, eax
je 0x470b60
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.00530650
test eax, eax
je 0x470b60
movss xmm0, dword [ebp - 0x103c]
mulss xmm0, dword [0x5d6db4]
movss dword [ebp - 0x103c], xmm0
push esi
push 2
mov ecx, 0x631538
call fcn.0052fb80
test eax, eax
je 0x470ba8
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.00530650
movss xmm1, dword [ebp - 0x103c]
test eax, eax
je 0x470bb0
mulss xmm1, dword [0x5d6db4]
movss dword [ebp - 0x103c], xmm1
jmp 0x470bb0
movss xmm1, dword [ebp - 0x103c]
mov eax, dword [edi + 0x14f60]
test eax, eax
jle 0x470bdd
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x5d6d8c]
addss xmm0, dword [0x5d3048]
mulss xmm0, xmm1
movss dword [ebp - 0x103c], xmm0
movss xmm0, dword [ebp - 0x1044]
lea eax, [ebp - 0x418]
cvtps2pd xmm0, xmm0
sub esp, 8
movsd qword [esp], xmm0
push str.Task_difficulty_is__4.2f.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.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.0043d380
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 0x4712ac
mov byte [ebp - 0x1045], 0
call fcn.0044e020
mov esi, eax
test esi, esi
je 0x470da6
nop dword [eax]
mov eax, dword [esi + 0x110]
cmp eax, 4
jne 0x470d04
mov eax, dword [esi + 0x118]
cmp eax, 0x40
jle 0x470d5f
add eax, 0xffffffc0
mov dword [esi + 0x118], eax
jmp 0x470d83
cmp eax, 8
jne 0x470d83
mov edx, dword [esi + 0x118]
mov cl, byte [ebp - 0x1045]
cmp edx, 1
jle 0x470d44
mov eax, dword [esi + 0x11c]
mov eax, dword [eax]
sub eax, 5
cmp eax, 8
ja 0x470d44
test cl, cl
jne 0x470d44
lea eax, [edx - 1]
mov byte [ebp - 0x1045], 1
mov dword [esi + 0x118], eax
jmp 0x470d83
mov eax, dword [esi + 0x11c]
mov eax, dword [eax]
sub eax, 5
cmp eax, 8
ja 0x470d5f
test cl, cl
jne 0x470d83
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 0x470ce0
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 0x470e23
push ecx
push 0x5d30e0
push eax
call fcn.0043dd20
lea ecx, [ebp - 0x418]
add esp, 0xc
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x470de0
sub ecx, edx
lea eax, [ebp - 0x418]
add eax, ecx
push str.__WXZQPNS
push eax
call fcn.0043d380
lea ecx, [ebp - 0x418]
add esp, 8
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x470e08
sub ecx, edx
shl esi, 6
lea eax, [ebp - 0xe18]
add eax, esi
lea ecx, [ebp + ecx - 0x418]
push ecx
push 0x5d30e0
push eax
call fcn.0043dd20
lea ecx, [ebp - 0x418]
add esp, 0xc
lea edx, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x470e40
sub ecx, edx
lea eax, [ebp - 0x418]
add eax, ecx
push 0x5d58bc
push eax
call fcn.0043d380
mov esi, dword [ebp - 0x1024]
add esp, 8
xor ecx, ecx
nop word [eax + eax]
lea eax, [ecx + ecx*8]
cmp dword [eax*8 + 0x612a30], esi
jg 0x470e88
mov eax, 6
inc ecx
cmp ecx, eax
jl 0x470e70
jmp 0x470e8b
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 0x470eb0
sub ecx, dword [ebp - 0x1014]
lea edi, [edx + edx*8]
lea eax, [edi*8 + str.Dirk]
push eax
lea eax, [ebp - 0x418]
add eax, ecx
push eax
call fcn.0043d380
push 0x120
call fcn.005596ac
add esp, 0xc
mov dword [ebp - 0x1014], eax
mov byte [ebp - 4], 1
test eax, eax
je 0x470f0d
lea ecx, [ebp - 0x418]
push ecx
push 0
push 1
mov ecx, eax
call fcn.0050ce40
mov edx, eax
mov dword [ebp - 0x1038], eax
jmp 0x470f15
xor edx, edx
mov dword [ebp - 0x1038], edx
movd xmm0, dword [edi*8 + 0x612a34]
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 [0x5d4b70]
cvttss2si ecx, xmm0
movss xmm0, dword [ebp - 0x107c]
mov dword [eax], ecx
mulss xmm0, dword [0x5d6dcc]
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 [0x5d3050]
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.0x4710e1.4
mov dword [ebp - 0x1020], edx
cmp ecx, 0xffffffff
jle 0x471164
cmp ecx, 4
ja case.0x4710e1.1
mov dword [ebp - 0x1020], edx
jmp dword [ecx*4 + 0x47b5b4]
mov ecx, dword [ebp - 0x1024]
mov eax, 0x11
mov dword [ecx + 0x1c], 0x11
jmp 0x471149
mov ecx, dword [ebp - 0x1024]
mov eax, 0x15
mov dword [ecx + 0x1c], 0x15
jmp 0x471149
mov ecx, dword [ebp - 0x1024]
mov eax, 9
mov dword [ecx + 0x1c], 9
jmp 0x471149
mov ecx, dword [ebp - 0x1024]
mov eax, 0xd
mov dword [ecx + 0x1c], 0xd
jmp 0x471143
mov ecx, dword [ebp - 0x1024]
mov eax, edi
mov dword [ecx + 0x1c], edi
mov edx, dword [ebp - 0x1020]
cmp edx, 1
jle 0x471152
inc eax
mov dword [ecx + 0x1c], eax
cmp edx, 4
jle 0x47115b
inc eax
mov dword [ecx + 0x1c], eax
cmp edx, 9
jle 0x471164
inc eax
mov dword [ecx + 0x1c], eax
mov edi, dword [ebp - 0x106c]
mov eax, 5
nop
cmp dword [ebp + eax*4 - 0xea8], 0
jg 0x471185
inc eax
or ecx, 0xffffffff
cmp eax, 0xd
jle 0x471170
jmp 0x471188
lea ecx, [eax - 5]
cmp ecx, 0xffffffff
jle 0x4711ac
mov esi, dword [ebp - 0x1024]
lea eax, [ecx + 0x19]
mov dword [esi + 0x1c], eax
mov eax, 0x66666667
imul dword [esi]
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
add dword [esi], eax
lea eax, [ebp - 0x418]
push str.You_have_created_a
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.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 0x5d58d4
push eax
call fcn.0043d380
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.004832a0
imul ecx, dword [edi + 0x188], 0x980
push dword [ebp - 0x1038]
mov ecx, dword [ecx + edi + 0x2d8]
call fcn.0050da90
jmp 0x4713fa
call fcn.0044e020
mov esi, eax
test esi, esi
je 0x4713fa
movss xmm0, dword [ebp - 0x103c]
divss xmm0, dword [ebp - 0x1044]
movss dword [ebp - 0x1014], xmm0
call fcn.00568dab
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x5d3bd8]
divss xmm0, dword [0x5d6e8c]
addss xmm0, dword [0x5d3044]
cvttss2si eax, xmm0
mov dword [ebp - 0x1064], eax
call fcn.00568dab
movd xmm0, eax
cvtdq2ps xmm0, xmm0
divss xmm0, dword [0x5d6e8c]
addss xmm0, dword [0x5d3044]
comiss xmm0, dword [ebp - 0x1014]
jbe 0x4713d7
mov eax, dword [esi + 0x110]
cmp eax, 4
je 0x471364
cmp eax, 8
jne 0x4713d7
mov eax, dword [esi + 0x11c]
mov eax, dword [eax]
cmp eax, 5
jl 0x471364
add eax, 0xfffffffb
cmp eax, 0xa
ja 0x4713d7
cmp dword [ebp - 0x1064], 2
jne 0x4713d7
mov ecx, dword [edi + 0x188]
mov edx, ecx
imul eax, ecx, 0x980
cmp dword [eax + edi + 0x2f0], 9
jle 0x4713a3
cmp dword [esi + 0x110], 8
jne 0x4713a3
mov eax, dword [esi + 0x11c]
mov eax, dword [eax]
cmp eax, 5
jl 0x4713a3
cmp eax, 0xe
jge 0x4713a3
inc dword [esi + 0x118]
mov edx, dword [edi + 0x188]
mov eax, dword [esi + 0x118]
cmp eax, 1
jle 0x4713b7
dec eax
mov dword [esi + 0x118], eax
jmp 0x4713d7
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 0x4712d3
mov esi, dword [ebp - 0x1040]
mov ecx, dword [esi + 0xc]
mov eax, dword [esi + 8]
test ecx, ecx
ja 0x47b586
jb 0x47141b
cmp eax, 0x7530
jae 0x47b586
movss xmm1, dword [ebp - 0x103c]
movaps xmm0, xmm1
movss xmm2, dword [ebp - 0x1044]
divss xmm0, dword [0x5d6e50]
comiss xmm2, xmm0
jbe 0x47b586
mov eax, dword [0x630ad0]
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.00559aa0
movss xmm1, dword [ebp - 0x1014]
cvtsd2ss xmm0, xmm0
addss xmm1, xmm0
xorps xmm0, xmm0
movlpd qword [ebp - 0x1018], xmm0
movss xmm0, dword [0x5d6e90]
comiss xmm1, xmm0
jb 0x4714b8
subss xmm1, xmm0
comiss xmm0, xmm1
jbe 0x4714b8
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 0x4714d0
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.00559820
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.0055a830
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 0x47b586
jb 0x47152d
cmp esi, edi
ja 0x47b586
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.00559aa0
xorps xmm1, xmm1
ucomisd xmm1, xmm0
ja 0x4715c5
sqrtsd xmm0, xmm0
jmp 0x4715ca
call fcn.00595ca0
movaps xmm1, xmm0
xorps xmm0, xmm0
addsd xmm1, qword [0x5d3050]
movlpd qword [ebp - 0x1018], xmm0
movsd xmm0, qword [0x5d6e78]
comisd xmm1, xmm0
jb 0x47160f
subsd xmm1, xmm0
comisd xmm0, xmm1
jbe 0x47160f
mov esi, dword [ebp - 0x1018]
mov edi, dword [ebp - 0x1014]
add esi, 0
adc edi, 0x80000000
jmp 0x47161b
mov edi, dword [ebp - 0x1014]
mov esi, dword [ebp - 0x1018]
movaps xmm0, xmm1
call fcn.005599f0
add eax, esi
mov esi, dword [ebp - 0x1040]
push str.You_gained_a_skill_level__
adc edx, edi
mov dword [esi + 8], eax
lea eax, [ebp - 0x418]
push eax
mov dword [esi + 0xc], edx
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov ecx, dword [ebp - 0x106c]
imul eax, dword [ecx + 0x188], 0x980
movss xmm0, dword [eax + ecx + 0x300]
addss xmm0, dword [0x5d6d88]
movss dword [eax + ecx + 0x300], xmm0
mov eax, dword [ebp - 0x1028]
mov ecx, dword [eax + 0x11c]
jmp 0x47b56a
lea eax, [ebp - 0x418]
push str.BUG:_Cannot_find_skill_for_level.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov eax, dword [ebp - 0x1028]
mov ecx, dword [eax + 0x11c]
jmp 0x47b56a
mov ecx, 0x5d5538
lea eax, [edi + 0x260]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x471700
test dl, dl
je 0x4716fc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x471700
add eax, 2
add ecx, 2
test dl, dl
jne 0x4716e0
xor eax, eax
jmp 0x471705
sbb eax, eax
or eax, 1
test eax, eax
je 0x478e6a
mov ecx, 0x5d5584
lea eax, [edi + 0x260]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x471738
test dl, dl
je 0x471734
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x471738
add eax, 2
add ecx, 2
test dl, dl
jne 0x471718
xor eax, eax
jmp 0x47173d
sbb eax, eax
or eax, 1
test eax, eax
je 0x478e6a
mov ecx, 0x5d554c
lea eax, [edi + 0x260]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x471770
test dl, dl
je 0x47176c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x471770
add eax, 2
add ecx, 2
test dl, dl
jne 0x471750
xor eax, eax
jmp 0x471775
sbb eax, eax
or eax, 1
test eax, eax
je 0x478e6a
mov ecx, 0x5d556c
lea eax, [edi + 0x260]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4717a8
test dl, dl
je 0x4717a4
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4717a8
add eax, 2
add ecx, 2
test dl, dl
jne 0x471788
xor eax, eax
jmp 0x4717ad
sbb eax, eax
or eax, 1
test eax, eax
je 0x478e6a
mov ecx, 0x5d5594
lea eax, [edi + 0x260]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4717e0
test dl, dl
je 0x4717dc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4717e0
add eax, 2
add ecx, 2
test dl, dl
jne 0x4717c0
xor eax, eax
jmp 0x4717e5
sbb eax, eax
or eax, 1
test eax, eax
je 0x478e6a
mov ecx, 0x5d555c
lea eax, [edi + 0x260]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x471818
test dl, dl
je 0x471814
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x471818
add eax, 2
add ecx, 2
test dl, dl
jne 0x4717f8
xor eax, eax
jmp 0x47181d
sbb eax, eax
or eax, 1
test eax, eax
je 0x478e6a
mov ecx, 0x5d550c
lea eax, [edi + 0x260]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x471850
test dl, dl
je 0x47184c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x471850
add eax, 2
add ecx, 2
test dl, dl
jne 0x471830
xor eax, eax
jmp 0x471855
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4723f5
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 0x4719e8
xor esi, esi
nop word [eax + eax]
mov eax, dword [ecx + 0x110]
cmp eax, 0xb
jne 0x471922
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 0x4719b9
cmp eax, 0xa
jne 0x4719b9
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 0x47197d
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 0x4718d0
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 0x471a63
xor esi, esi
cmp dword [eax + 0x110], 0xc
jne 0x471a3a
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 0x471a07
mov dword [ebp - 0x1074], esi
mov esi, dword [ebp - 0x1028]
cmp dword [ebp - 0x1010], 0
movss xmm0, dword [ebp - 0x1034]
addss xmm0, dword [0x5d3048]
mulss xmm0, dword [ebp - 0x101c]
movss dword [ebp - 0x1034], xmm0
jg 0x471a96
push str.Use_explosive_material_to_make_a_bomb.
jmp 0x47b53e
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 0x4723eb
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 0x471b00
test dl, dl
je 0x471afc
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x471b00
add ecx, 2
add eax, 2
test dl, dl
jne 0x471ae0
xor eax, eax
jmp 0x471b05
sbb eax, eax
or eax, 1
test eax, eax
jne 0x471b15
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 0x471ad0
mov esi, dword [ebp - 0x1028]
cmp dword [ebp - 0x1044], eax
je 0x4723eb
mov ecx, edi
call fcn.0047bee0
mov ecx, dword [ebp - 0x1044]
cdq
push dword [ecx + 0xc]
push dword [ecx + 8]
push edx
push eax
call fcn.0055a830
mov ecx, eax
call fcn.00559aa0
cvtsd2ss xmm0, xmm0
sub esp, 8
mov dword [esp + 4], 0x3fa66666
movss dword [ebp - 0x1014], xmm0
mov dword [esp], 0x3f333333
call fcn.0048da90
fmul dword [ebp - 0x1014]
add esp, 8
mov ecx, 0x631538
push esi
push 3
fstp dword [ebp - 0x1010]
call fcn.0052fb80
test eax, eax
je 0x471bda
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.00530650
test eax, eax
je 0x471bda
movss xmm0, dword [ebp - 0x1010]
mulss xmm0, dword [0x5d6db4]
jmp 0x471be2
movss xmm0, dword [ebp - 0x1010]
push esi
push 4
mov ecx, 0x631538
movss dword [ebp - 0x1030], xmm0
call fcn.0052fb80
test eax, eax
je 0x471c30
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.00530650
test eax, eax
je 0x471c30
movss xmm0, dword [ebp - 0x1030]
mulss xmm0, dword [0x5d6db4]
movss dword [ebp - 0x1030], xmm0
push esi
push 5
mov ecx, 0x631538
call fcn.0052fb80
test eax, eax
je 0x471c78
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.00530650
movss xmm1, dword [ebp - 0x1030]
test eax, eax
je 0x471c80
mulss xmm1, dword [0x5d6db4]
movss dword [ebp - 0x1030], xmm1
jmp 0x471c80
movss xmm1, dword [ebp - 0x1030]
mov eax, dword [edi + 0x14f60]
test eax, eax
jle 0x471cad
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x5d6d8c]
addss xmm0, dword [0x5d3048]
mulss xmm0, xmm1
movss dword [ebp - 0x1030], xmm0
movss xmm0, dword [ebp - 0x1034]
lea eax, [ebp - 0x418]
cvtps2pd xmm0, xmm0
sub esp, 8
movsd qword [esp], xmm0
push str.Task_difficulty_is__4.2f.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.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.0043d380
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 0x4722cb
call fcn.0044e020
mov dword [ebp - 0x1014], eax
test eax, eax
je 0x471e0e
mov esi, eax
nop word [eax + eax]
mov eax, dword [esi + 0x110]
cmp eax, 0xb
je 0x471dc5
cmp eax, 0xc
je 0x471dc5
cmp eax, 0xa
jne 0x471de9
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 0x471db0
mov esi, dword [ebp - 0x1028]
movss xmm0, dword [ebp - 0x1020]
xor edi, edi
divss xmm0, dword [0x5d3bb8]
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 0x471e24
mov eax, 0xe
cmp edi, eax
cmovg edi, eax
lea eax, [edi + edi*4]
lea eax, [eax*4 + str.Tiny]
push eax
lea eax, [ebp - 0x418]
push str._s_Bomb
push eax
call fcn.0043d380
push 0x120
call fcn.005596ac
add esp, 0x10
mov dword [ebp - 0x1014], eax
mov byte [ebp - 4], 3
test eax, eax
je 0x471e97
lea ecx, [ebp - 0x418]
push ecx
push 0
push 0xd
mov ecx, eax
call fcn.0050ce40
mov edx, eax
mov dword [ebp - 0x101c], eax
jmp 0x471e9f
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 0x471ef6
mov dword [ecx + 4], 0
xorps xmm1, xmm1
comiss xmm1, dword [0x5d3048]
jbe 0x471f06
mov dword [ecx + 4], 0x3f800000
cmp eax, 1
jge 0x471f12
mov dword [ecx + 4], 0x3f800000
movss xmm1, dword [0x5d3fc0]
addss xmm2, xmm2
push str.You_have_created_a
movss dword [edx + 0x10c], xmm2
movss xmm0, dword [ebp - 0x10b0]
mulss xmm0, xmm1
cvttss2si eax, xmm0
mov dword [ecx + 0x14], eax
movss xmm0, dword [ebp - 0x10a8]
mulss xmm0, xmm1
cvttss2si eax, xmm0
mov dword [ecx + 0x18], eax
movss xmm0, dword [ebp - 0x10ac]
mulss xmm0, xmm1
cvttss2si eax, xmm0
mov dword [ecx + 0x1c], eax
lea eax, [ebp - 0x418]
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.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 0x5d58d4
push eax
call fcn.0043d380
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.0050da90
mov eax, dword [0x630ad0]
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.00559aa0
movss xmm1, dword [ebp - 0x1014]
cvtsd2ss xmm0, xmm0
addss xmm1, xmm0
xorps xmm0, xmm0
movlpd qword [ebp - 0x1018], xmm0
movss xmm0, dword [0x5d6e90]
comiss xmm1, xmm0
jb 0x4720a4
subss xmm1, xmm0
comiss xmm0, xmm1
jbe 0x4720a4
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 0x4720bc
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.00559820
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.0055a830
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 0x47b586
mov ecx, dword [ebp - 0x101c]
jb 0x472122
cmp eax, ecx
ja 0x47b586
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.00559aa0
xorps xmm1, xmm1
ucomisd xmm1, xmm0
ja 0x4721db
sqrtsd xmm0, xmm0
jmp 0x4721e0
call fcn.00595ca0
movaps xmm1, xmm0
xorps xmm0, xmm0
addsd xmm1, qword [0x5d3050]
movlpd qword [ebp - 0x1018], xmm0
movsd xmm0, qword [0x5d6e78]
comisd xmm1, xmm0
jb 0x472225
subsd xmm1, xmm0
comisd xmm0, xmm1
jbe 0x472225
mov esi, dword [ebp - 0x1018]
mov edi, dword [ebp - 0x1014]
add esi, 0
adc edi, 0x80000000
jmp 0x472231
mov edi, dword [ebp - 0x1014]
mov esi, dword [ebp - 0x1018]
movaps xmm0, xmm1
call fcn.005599f0
mov ecx, dword [ebp - 0x1044]
add eax, esi
push str.You_gained_a_skill_level__
adc edx, edi
mov dword [ecx + 8], eax
lea eax, [ebp - 0x418]
push eax
mov dword [ecx + 0xc], edx
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.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 [0x5d6d90]
movss dword [eax + ecx + 0x300], xmm0
jmp 0x47b586
mov dword [ebp - 0x1044], 0
call fcn.0044e020
mov dword [ebp - 0x1014], eax
test eax, eax
je 0x47235b
mov esi, eax
nop word [eax + eax]
mov eax, dword [esi + 0x110]
cmp eax, 0xb
je 0x472300
cmp eax, 0xc
jne 0x472336
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 0x4722f0
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.0052bf40
jmp 0x47b586
push str.BUG:_Cannot_find_skill_for_level.
jmp 0x47b53e
mov ecx, 0x5d5524
lea eax, [edi + 0x260]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x472420
test dl, dl
je 0x47241c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x472420
add eax, 2
add ecx, 2
test dl, dl
jne 0x472400
xor eax, eax
jmp 0x472425
sbb eax, eax
or eax, 1
test eax, eax
jne 0x474564
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 0x47455a
xor esi, esi
cmp dword [eax + 0x110], 1
jne 0x472484
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 0x472456
cmp esi, 1
mov esi, dword [ebp - 0x1028]
jl 0x47455a
mov eax, dword [ebp - 0x107c]
cmp dword [eax + 0x118], 1
mov esi, dword [eax + 0x11c]
mov dword [ebp - 0x102c], esi
jle 0x47255b
push 0x120
call fcn.005596ac
add esp, 4
mov dword [ebp - 0x1014], eax
mov byte [ebp - 4], 4
test eax, eax
je 0x472504
push str.UNNAMED
push 0
push 0
mov ecx, eax
call fcn.0050ce40
mov edx, eax
mov dword [ebp - 0x1010], eax
jmp 0x47250c
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.0047bf00
mov ecx, esi
call fcn.0047d270
mov ecx, esi
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x1074], xmm0
call fcn.0047d270
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 0x4725ca
mulss xmm0, dword [0x5d3bb8]
divss xmm0, dword [0x5d6e4c]
movss dword [ebp - 0x1020], xmm0
cmp dword [esi + 0x3c], 2
jne 0x4725e0
subss xmm0, dword [0x5d6e58]
movss dword [ebp - 0x1020], xmm0
mov eax, dword [ebp - 0x1014]
add eax, 2
movss xmm0, dword [ebp - 0x1074]
addss xmm0, dword [0x5d3048]
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 0x471699
mov esi, eax
mov ecx, esi
call fcn.0044c8e0
lea ecx, [edi + 0x260]
nop
mov dl, byte [ecx]
cmp dl, byte [eax]
jne 0x4726f0
test dl, dl
je 0x4726ec
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x4726f0
add ecx, 2
add eax, 2
test dl, dl
jne 0x4726d0
xor eax, eax
jmp 0x4726f5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x472705
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 0x4726c2
mov esi, dword [ebp - 0x102c]
cmp dword [ebp - 0x1044], eax
je 0x471699
mov ecx, edi
call fcn.0047bee0
mov ecx, dword [ebp - 0x1044]
cdq
push dword [ecx + 0xc]
push dword [ecx + 8]
push edx
push eax
call fcn.0055a830
mov ecx, eax
call fcn.00559aa0
cvtsd2ss xmm0, xmm0
sub esp, 8
mov dword [esp + 4], 0x3f8ccccd
movss dword [ebp - 0x1014], xmm0
mov dword [esp], 0x3f666666
call fcn.0048da90
fmul dword [ebp - 0x1014]
add esp, 8
mov eax, dword [ebp - 0x1028]
mov ecx, 0x631538
push eax
fmul dword [0x5d6e38]
push 1
fstp dword [ebp - 0x1010]
call fcn.0052fb80
test eax, eax
je 0x4727da
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [ebp - 0x1028]
add eax, 0x2a0
add eax, edi
push eax
call fcn.00530650
test eax, eax
je 0x4727da
movss xmm0, dword [ebp - 0x1010]
mulss xmm0, dword [0x5d6db4]
jmp 0x4727e2
movss xmm0, dword [ebp - 0x1010]
push dword [ebp - 0x1028]
mov ecx, 0x631538
movss dword [ebp - 0x103c], xmm0
push 0
call fcn.0052fb80
test eax, eax
je 0x472839
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [ebp - 0x1028]
add eax, 0x2a0
add eax, edi
push eax
call fcn.00530650
test eax, eax
je 0x472839
movss xmm0, dword [ebp - 0x103c]
mulss xmm0, dword [0x5d6db4]
movss dword [ebp - 0x103c], xmm0
push dword [ebp - 0x1028]
mov ecx, 0x631538
push 2
call fcn.0052fb80
test eax, eax
je 0x47288a
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [ebp - 0x1028]
add eax, 0x2a0
add eax, edi
push eax
call fcn.00530650
movss xmm1, dword [ebp - 0x103c]
test eax, eax
je 0x472892
mulss xmm1, dword [0x5d6db4]
movss dword [ebp - 0x103c], xmm1
jmp 0x472892
movss xmm1, dword [ebp - 0x103c]
mov eax, dword [edi + 0x14f60]
test eax, eax
jle 0x4728bf
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x5d6d8c]
addss xmm0, dword [0x5d3048]
mulss xmm0, xmm1
movss dword [ebp - 0x103c], xmm0
movss xmm0, dword [ebp - 0x1030]
lea eax, [ebp - 0x418]
cvtps2pd xmm0, xmm0
sub esp, 8
movsd qword [esp], xmm0
push str.This_weapons_complexity_is__4.2f.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.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.0043d380
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 0x47321b
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 0x47321b
movss xmm0, dword [ebp - 0x103c]
divss xmm0, dword [0x5d4b74]
movss xmm1, dword [ebp - 0x1030]
divss xmm0, xmm1
comiss xmm0, dword [0x5d3048]
jb 0x473223
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 0x472afa
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 0x472b19
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 0x472b57
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 0x472b95
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 0x472bd3
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 0x472c11
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 0x472c4f
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 0x472c8d
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 0x472ccb
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 0x472d09
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 0x472d47
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 0x472d85
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 0x472dc3
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 0x472e06
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 0x472e3f
mov dword [ebp - 0x102c], edx
cmp ecx, 0xe
je 0x472e3f
mov eax, dword [esi + 0x78]
mov edx, 0xe
mov dword [ebp - 0x102c], edx
cmp dword [esi + 0x74], eax
jle 0x472e57
cmp ecx, 0xd
je 0x472e57
mov eax, dword [esi + 0x74]
mov edx, 0xd
mov dword [ebp - 0x102c], edx
cmp dword [esi + 0x70], eax
jle 0x472e6f
cmp ecx, 0xc
je 0x472e6f
mov eax, dword [esi + 0x70]
mov edx, 0xc
mov dword [ebp - 0x102c], edx
cmp dword [esi + 0x6c], eax
jle 0x472e87
cmp ecx, 0xb
je 0x472e87
mov eax, dword [esi + 0x6c]
mov edx, 0xb
mov dword [ebp - 0x102c], edx
cmp dword [esi + 0x68], eax
jle 0x472e9f
cmp ecx, 0xa
je 0x472e9f
mov eax, dword [esi + 0x68]
mov edx, 0xa
mov dword [ebp - 0x102c], edx
cmp dword [esi + 0x64], eax
jle 0x472eb7
cmp ecx, 9
je 0x472eb7
mov eax, dword [esi + 0x64]
mov edx, 9
mov dword [ebp - 0x102c], edx
cmp dword [esi + 0x60], eax
jle 0x472ecf
cmp ecx, 8
je 0x472ecf
mov eax, dword [esi + 0x60]
mov edx, 8
mov dword [ebp - 0x102c], edx
cmp dword [esi + 0x5c], eax
jle 0x472ee7
cmp ecx, 7
je 0x472ee7
mov eax, dword [esi + 0x5c]
mov edx, 7
mov dword [ebp - 0x102c], edx
cmp dword [esi + 0x58], eax
jle 0x472eff
cmp ecx, 6
je 0x472eff
mov eax, dword [esi + 0x58]
mov edx, 6
mov dword [ebp - 0x102c], edx
cmp dword [esi + 0x54], eax
jle 0x472f17
cmp ecx, 5
je 0x472f17
mov eax, dword [esi + 0x54]
mov edx, 5
mov dword [ebp - 0x102c], edx
cmp dword [esi + 0x50], eax
jle 0x472f2f
cmp ecx, 4
je 0x472f2f
mov eax, dword [esi + 0x50]
mov edx, 4
mov dword [ebp - 0x102c], edx
cmp dword [esi + 0x4c], eax
jle 0x472f47
cmp ecx, 3
je 0x472f47
mov eax, dword [esi + 0x4c]
mov edx, 3
mov dword [ebp - 0x102c], edx
cmp dword [esi + 0x48], eax
jle 0x472f5f
cmp ecx, 2
je 0x472f5f
mov eax, dword [esi + 0x48]
mov edx, 2
mov dword [ebp - 0x102c], edx
cmp dword [esi + 0x44], eax
jle 0x472f77
cmp ecx, 1
je 0x472f77
mov eax, dword [esi + 0x44]
mov edx, 1
mov dword [ebp - 0x102c], edx
cmp dword [esi + 0x40], eax
jle 0x472f88
test ecx, ecx
je 0x472f98
xor edx, edx
mov dword [ebp - 0x102c], edx
test ecx, ecx
jns 0x472f98
xor ecx, ecx
mov dword [esi + 0x34], ecx
mov dword [esi + 4], 1
imul eax, ecx, 0x13
lea ecx, [ebp - 0x418]
lea eax, [eax + 0x613240]
cmp edx, 0xffffffff
jle 0x47300c
push ecx
push 0x5d30e0
push eax
call fcn.0043dd20
lea ecx, [ebp - 0x418]
add esp, 0xc
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x472fc4
sub ecx, edx
lea eax, [ebp - 0x418]
add eax, ecx
push str.__WXZQPNS
push eax
call fcn.0043d380
lea ecx, [ebp - 0x418]
add esp, 8
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x472ff0
imul eax, dword [ebp - 0x102c], 0x13
sub ecx, edx
lea ecx, [ebp + ecx - 0x418]
add eax, 0x613240
push ecx
push 0x5d30e0
push eax
call fcn.0043dd20
lea ecx, [ebp - 0x418]
add esp, 0xc
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x473024
sub ecx, edx
lea eax, [ebp - 0x418]
add eax, ecx
push 0x5d58bc
push eax
call fcn.0043d380
add esp, 8
xor ecx, ecx
nop word [eax + eax]
lea eax, [ecx + ecx*8]
cmp dword [eax*8 + 0x612a30], 0x40
jg 0x473069
mov eax, 6
inc ecx
cmp ecx, eax
jl 0x473050
jmp 0x47306c
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 0x473090
sub ecx, dword [ebp - 0x1014]
lea eax, [edx + edx*8]
lea eax, [eax*8 + str.Dirk]
push eax
lea eax, [ebp - 0x418]
add eax, ecx
push eax
call fcn.0043d380
push 0x120
call fcn.005596ac
add esp, 0xc
mov dword [ebp - 0x1014], eax
mov byte [ebp - 4], 5
test eax, eax
je 0x4730e7
lea ecx, [ebp - 0x418]
push ecx
push 0
push 1
mov ecx, eax
call fcn.0050ce40
mov edx, eax
jmp 0x4730e9
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.0050da90
lea eax, [ebp - 0x418]
push str.You_have_recovered_the_greatsword.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.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 0x4741c1
movss xmm1, dword [ebp - 0x1030]
movss xmm2, dword [ebp - 0x1074]
movaps xmm0, xmm2
mulss xmm0, dword [0x5d6dac]
cvttss2si eax, xmm0
movaps xmm0, xmm2
mulss xmm0, dword [0x5d3bb4]
push eax
cvttss2si eax, xmm0
movss xmm0, dword [ebp - 0x103c]
divss xmm0, dword [0x5d3bd8]
push eax
divss xmm0, xmm1
mulss xmm0, xmm2
cvttss2si eax, xmm0
push eax
call fcn.0044cb60
xorps xmm0, xmm0
movsd xmm1, qword [0x5d6df8]
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 0x473624
mov eax, dword [esi + 0x78]
test eax, eax
je 0x47340a
dec eax
mov ecx, 0xf
mov dword [esi + 0x78], eax
jmp 0x473520
mov eax, dword [esi + 0x74]
test eax, eax
je 0x47341f
dec eax
mov ecx, 0xe
mov dword [esi + 0x74], eax
jmp 0x473520
mov eax, dword [esi + 0x70]
test eax, eax
je 0x473434
dec eax
mov ecx, 0xd
mov dword [esi + 0x70], eax
jmp 0x473520
mov eax, dword [esi + 0x6c]
test eax, eax
je 0x473449
dec eax
mov ecx, 0xc
mov dword [esi + 0x6c], eax
jmp 0x473520
mov eax, dword [esi + 0x68]
test eax, eax
je 0x47345e
dec eax
mov ecx, 0xb
mov dword [esi + 0x68], eax
jmp 0x473520
mov eax, dword [esi + 0x64]
test eax, eax
je 0x473473
dec eax
mov ecx, 0xa
mov dword [esi + 0x64], eax
jmp 0x473520
mov eax, dword [esi + 0x60]
test eax, eax
je 0x473488
dec eax
mov ecx, 9
mov dword [esi + 0x60], eax
jmp 0x473520
mov eax, dword [esi + 0x5c]
test eax, eax
je 0x47349d
dec eax
mov ecx, 8
mov dword [esi + 0x5c], eax
jmp 0x473520
mov eax, dword [esi + 0x58]
test eax, eax
je 0x4734b2
dec eax
mov ecx, 7
mov dword [esi + 0x58], eax
jmp 0x473520
mov eax, dword [esi + 0x54]
test eax, eax
je 0x4734c4
dec eax
mov ecx, 6
mov dword [esi + 0x54], eax
jmp 0x473520
mov eax, dword [esi + 0x50]
test eax, eax
je 0x4734d6
dec eax
mov ecx, 5
mov dword [esi + 0x50], eax
jmp 0x473520
mov eax, dword [esi + 0x4c]
test eax, eax
je 0x4734e8
dec eax
mov ecx, 4
mov dword [esi + 0x4c], eax
jmp 0x473520
mov eax, dword [esi + 0x48]
test eax, eax
je 0x4734fa
dec eax
mov ecx, 3
mov dword [esi + 0x48], eax
jmp 0x473520
mov eax, dword [esi + 0x44]
test eax, eax
je 0x47350c
dec eax
mov ecx, 2
mov dword [esi + 0x44], eax
jmp 0x473520
mov eax, dword [esi + 0x40]
test eax, eax
je 0x473624
dec eax
mov ecx, 1
mov dword [esi + 0x40], eax
imul eax, ecx, 0x13
mov dword [ebp - 0x104c], ecx
lea eax, [eax + 0x61322d]
push eax
lea eax, [ebp - 0x418]
push str._s_Ingot
push eax
call fcn.0043d380
push 0x120
call fcn.005596ac
add esp, 0x10
mov dword [ebp - 0x1084], eax
mov byte [ebp - 4], 6
test eax, eax
je 0x473570
lea ecx, [ebp - 0x418]
push ecx
push 0
push 4
mov ecx, eax
call fcn.0050ce40
jmp 0x473572
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 + 0x6133cc]
mov dword [edx], eax
mov eax, dword [ecx*4 + 0x6133d0]
mov dword [edx + 4], eax
mov eax, dword [ecx*4 + 0x6133d4]
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 + 0x613398]
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.0050da90
mov ecx, dword [ebp - 0x1074]
inc ecx
mov dword [ebp - 0x1074], ecx
cmp ecx, dword [ebp - 0x1014]
jl 0x4733f5
mov edi, dword [ebp - 0x1028]
lea eax, [ebp - 0xf10]
mov esi, 0x613240
mov dword [ebp - 0x1010], eax
nop dword [eax + eax]
mov ecx, dword [eax]
test ecx, ecx
jle 0x47369b
push esi
push ecx
lea eax, [ebp - 0x418]
push str.You_recover__d__s_Ingots.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.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, 0x61341b
jl 0x473640
movss xmm2, dword [ebp - 0x103c]
divss xmm2, dword [0x5d3bb8]
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 [0x5d6dac]
cvttss2si eax, xmm0
movaps xmm0, xmm1
mulss xmm0, dword [0x5d6d9c]
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 [0x5d3048]
movss dword [ebp - 0x1014], xmm0
jb 0x47382b
push 0x120
call fcn.005596ac
add esp, 4
mov dword [ebp - 0x1010], eax
mov byte [ebp - 4], 7
test eax, eax
je 0x473775
push 0x5d474c
push 0
push 8
mov ecx, eax
call fcn.0050ce40
mov ecx, eax
jmp 0x473777
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.0050da90
push esi
lea eax, [ebp - 0x418]
mov dword [ebp - 0x1034], 1
push str.You_recover__d_Glowing_White_Dust.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.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 [0x5d6dac]
cvttss2si eax, xmm0
movaps xmm0, xmm1
mulss xmm1, dword [ebp - 0x1040]
push eax
mulss xmm0, dword [0x5d6d9c]
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 [0x5d3048]
movss dword [ebp - 0x1014], xmm0
jb 0x473978
push 0x120
call fcn.005596ac
add esp, 4
mov dword [ebp - 0x1010], eax
mov byte [ebp - 4], 8
test eax, eax
je 0x4738c2
push 0x5d4724
push 0
push 8
mov ecx, eax
call fcn.0050ce40
mov ecx, eax
jmp 0x4738c4
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.0050da90
push esi
lea eax, [ebp - 0x418]
mov dword [ebp - 0x1034], 1
push str.You_recover__d_Glowing_Red_Dust.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.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 [0x5d6dac]
cvttss2si eax, xmm0
movaps xmm0, xmm1
mulss xmm1, dword [ebp - 0x1040]
push eax
mulss xmm0, dword [0x5d6d9c]
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 [0x5d3048]
movss dword [ebp - 0x1014], xmm0
jb 0x473ac5
push 0x120
call fcn.005596ac
add esp, 4
mov dword [ebp - 0x1010], eax
mov byte [ebp - 4], 9
test eax, eax
je 0x473a0f
push 0x5d4738
push 0
push 8
mov ecx, eax
call fcn.0050ce40
mov ecx, eax
jmp 0x473a11
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.0050da90
push esi
lea eax, [ebp - 0x418]
mov dword [ebp - 0x1034], 1
push str.You_recover__d_Glowing_Green_Dust.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.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 [0x5d6dac]
cvttss2si eax, xmm0
movaps xmm0, xmm1
mulss xmm1, dword [ebp - 0x1040]
push eax
mulss xmm0, dword [0x5d6d9c]
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 [0x5d3048]
movss dword [ebp - 0x1014], xmm0
jb 0x473c12
push 0x120
call fcn.005596ac
add esp, 4
mov dword [ebp - 0x1010], eax
mov byte [ebp - 4], 0xa
test eax, eax
je 0x473b5c
push 0x5d4760
push 0
push 8
mov ecx, eax
call fcn.0050ce40
mov ecx, eax
jmp 0x473b5e
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.0050da90
push esi
lea eax, [ebp - 0x418]
mov dword [ebp - 0x1034], 1
push str.You_recover__d_Glowing_Black_Dust.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.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 [0x5d6d9c]
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 [0x5d3048]
movss dword [ebp - 0x1014], xmm0
jb 0x473d52
push 0x120
call fcn.005596ac
add esp, 4
mov dword [ebp - 0x1010], eax
mov byte [ebp - 4], 0xb
test eax, eax
je 0x473c9c
push 0x5d5c94
push 0
push 8
mov ecx, eax
call fcn.0050ce40
mov ecx, eax
jmp 0x473c9e
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.0050da90
push esi
lea eax, [ebp - 0x418]
mov dword [ebp - 0x1034], 1
push str.You_recover__d_Glowing_Gold_Dust.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.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 0x473d72
add eax, 0xffffffeb
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movaps xmm1, xmm0
mulss xmm1, dword [ebp - 0x1040]
jmp 0x473d86
movss xmm1, dword [ebp - 0x1040]
dec eax
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm1, xmm0
movaps xmm2, xmm0
mulss xmm0, dword [0x5d46d8]
mulss xmm2, dword [0x5d6da4]
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 [0x5d3048]
mov dword [ebp - 0x1024], eax
jb 0x473ec4
push 0x120
call fcn.005596ac
add esp, 4
mov dword [ebp - 0x1014], eax
mov byte [ebp - 4], 0xc
test eax, eax
je 0x473e0b
push 0x5d4710
push 0
push 8
mov ecx, eax
call fcn.0050ce40
mov ecx, eax
jmp 0x473e0d
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.0050da90
push dword [ebp - 0x1010]
lea eax, [ebp - 0x418]
mov dword [ebp - 0x1034], 1
push str.You_recover__d_Glowing_Blue_Dust.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.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 [0x5d4b74]
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 0x473f2c
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 0x473f5a
mov dword [ebp - 0x101c], ecx
test ecx, ecx
je 0x473f5a
lea eax, [ecx + 0xa]
mov dword [ebp - 0x101c], eax
call fcn.00568dab
movss xmm0, dword [ebp - 0x1010]
mov ecx, 0x64
cdq
xorps xmm1, xmm1
idiv ecx
comiss xmm0, xmm1
jbe 0x4740dc
cmp dword [esi + 0x38], 0x2710
jl 0x4740dc
cmp dword [ebp - 0x1034], 0
je 0x4740dc
cmp edx, dword [ebp - 0x101c]
jge 0x4740dc
movss xmm0, dword [ebp - 0x1020]
comiss xmm0, dword [0x5d6e60]
jb 0x4740dc
call fcn.00568dab
mov esi, eax
and esi, 0x80000007
jns 0x473fca
dec esi
or esi, 0xfffffff8
inc esi
push 0x120
add esi, 5
call fcn.005596ac
add esp, 4
mov dword [ebp - 0x1014], eax
mov byte [ebp - 4], 0xd
test eax, eax
je 0x474003
mov ecx, esi
shl ecx, 6
add ecx, str.Glowing_Green_Dust
push ecx
push 0
push 8
mov ecx, eax
call fcn.0050ce40
mov ecx, eax
jmp 0x474005
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.0050da90
lea eax, [ebp - 0x418]
push str.You_find_something_special_inside_the_weapon.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.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.0043d380
lea eax, [ebp - 0x418]
push eax
push str.ShardCreationLog.txt
call fcn.0049eb40
add esp, 0x14
jmp 0x4741c1
mov eax, dword [0x630ad0]
cmp dword [eax + 0x7c], 0
je 0x4741bb
call fcn.00568dab
movss xmm0, dword [ebp - 0x1010]
mov ecx, 0xa
cdq
xorps xmm1, xmm1
idiv ecx
comiss xmm0, xmm1
jbe 0x4741bb
cmp dword [esi + 0x38], 0x2710
jl 0x4741bb
cmp dword [ebp - 0x1034], 0
je 0x4741bb
cmp edx, 1
jne 0x4741bb
movss xmm0, dword [ebp - 0x1064]
comiss xmm0, dword [0x5d6e64]
jb 0x4741bb
call fcn.00568dab
mov esi, eax
and esi, 0x80000007
jns 0x474158
dec esi
or esi, 0xfffffff8
inc esi
push 0x120
add esi, 5
call fcn.005596ac
add esp, 4
mov dword [ebp - 0x1014], eax
mov byte [ebp - 4], 0xe
test eax, eax
je 0x474191
mov ecx, esi
shl ecx, 6
add ecx, str.Glowing_Green_Dust
push ecx
push 0
push 8
mov ecx, eax
call fcn.0050ce40
mov ecx, eax
jmp 0x474193
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 0x474028
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 0x47426e
mov esi, eax
nop word [eax + eax]
cmp dword [ebp - 0x107c], esi
jne 0x474249
mov eax, dword [esi + 0x118]
cmp eax, 1
jle 0x47420c
dec eax
mov dword [esi + 0x118], eax
jmp 0x474230
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 0x4741f0
mov esi, dword [ebp - 0x1028]
lea eax, [ebp - 0x418]
push str.You_dismantle_the_weapon.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.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 0x47b586
jb 0x4742dc
cmp eax, 0x7530
jae 0x47b586
movss xmm1, dword [ebp - 0x103c]
movaps xmm0, xmm1
movss xmm2, dword [ebp - 0x1030]
divss xmm0, dword [0x5d3bb8]
comiss xmm2, xmm0
jbe 0x47b586
mov eax, dword [0x630ad0]
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.00559aa0
movss xmm1, dword [ebp - 0x1014]
cvtsd2ss xmm0, xmm0
addss xmm1, xmm0
xorps xmm0, xmm0
movlpd qword [ebp - 0x1018], xmm0
movss xmm0, dword [0x5d6e90]
comiss xmm1, xmm0
jb 0x474379
subss xmm1, xmm0
comiss xmm0, xmm1
jbe 0x474379
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 0x474391
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.00559820
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.0055a830
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 0x47b586
jb 0x4743ee
cmp esi, edi
ja 0x47b586
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.00559aa0
xorps xmm1, xmm1
ucomisd xmm1, xmm0
ja 0x474486
sqrtsd xmm0, xmm0
jmp 0x47448b
call fcn.00595ca0
movaps xmm1, xmm0
xorps xmm0, xmm0
addsd xmm1, qword [0x5d3050]
movlpd qword [ebp - 0x1018], xmm0
movsd xmm0, qword [0x5d6e78]
comisd xmm1, xmm0
jb 0x4744d0
subsd xmm1, xmm0
comisd xmm0, xmm1
jbe 0x4744d0
mov esi, dword [ebp - 0x1018]
mov edi, dword [ebp - 0x1014]
add esi, 0
adc edi, 0x80000000
jmp 0x4744dc
mov edi, dword [ebp - 0x1014]
mov esi, dword [ebp - 0x1018]
movaps xmm0, xmm1
call fcn.005599f0
mov ecx, dword [ebp - 0x1044]
add eax, esi
push str.You_gained_a_skill_level__
adc edx, edi
mov dword [ecx + 8], eax
lea eax, [ebp - 0x418]
push eax
mov dword [ecx + 0xc], edx
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov ecx, dword [ebp - 0x106c]
imul eax, dword [ecx + 0x188], 0x980
movss xmm0, dword [eax + ecx + 0x300]
addss xmm0, dword [0x5d6d88]
movss dword [eax + ecx + 0x300], xmm0
mov eax, dword [ebp - 0x1028]
mov ecx, dword [eax + 0x11c]
jmp 0x47b56a
push str.Put_a_weapon_in_the_workbench_to_dismantle_it.
jmp 0x47b53e
mov ecx, 0x5d5d64
lea eax, [edi + 0x260]
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x474590
test dl, dl
je 0x47458c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x474590
add eax, 2
add ecx, 2
test dl, dl
jne 0x474570
xor eax, eax
jmp 0x474595
sbb eax, eax
or eax, 1
test eax, eax
jne 0x474f9f
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 0x474f95
xor esi, esi
cmp dword [eax + 0x110], 0xd
jne 0x4745f4
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 0x4745c6
cmp esi, 1
mov esi, dword [ebp - 0x1028]
jl 0x474f95
mov eax, dword [ebp - 0x1040]
cmp dword [eax + 0x118], 1
mov ecx, dword [eax + 0x11c]
mov dword [ebp - 0x1020], ecx
jle 0x4746d1
push 0x120
call fcn.005596ac
add esp, 4
mov dword [ebp - 0x1014], eax
mov byte [ebp - 4], 0xf
test eax, eax
je 0x474674
push str.UNNAMED
push 0
push 0
mov ecx, eax
call fcn.0050ce40
mov edx, eax
mov dword [ebp - 0x1010], eax
jmp 0x47467c
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 [0x5d3048]
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 0x4723eb
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 0x474760
test dl, dl
je 0x47475c
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x474760
add ecx, 2
add eax, 2
test dl, dl
jne 0x474740
xor eax, eax
jmp 0x474765
sbb eax, eax
or eax, 1
test eax, eax
jne 0x474775
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 0x474730
mov esi, dword [ebp - 0x1028]
cmp dword [ebp - 0x1034], eax
je 0x4723eb
mov ecx, edi
call fcn.0047bee0
mov ecx, dword [ebp - 0x1034]
cdq
push dword [ecx + 0xc]
push dword [ecx + 8]
push edx
push eax
call fcn.0055a830
mov ecx, eax
call fcn.00559aa0
cvtsd2ss xmm0, xmm0
sub esp, 8
mov dword [esp + 4], 0x3f8ccccd
movss dword [ebp - 0x1014], xmm0
mov dword [esp], 0x3f666666
call fcn.0048da90
fmul dword [ebp - 0x1014]
add esp, 8
mov ecx, 0x631538
push esi
fmul dword [0x5d6e38]
push 1
fstp dword [ebp - 0x1010]
call fcn.0052fb80
test eax, eax
je 0x474840
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.00530650
test eax, eax
je 0x474840
movss xmm0, dword [ebp - 0x1010]
mulss xmm0, dword [0x5d6db4]
jmp 0x474848
movss xmm0, dword [ebp - 0x1010]
push esi
push 0
mov ecx, 0x631538
movss dword [ebp - 0x1030], xmm0
call fcn.0052fb80
test eax, eax
je 0x474896
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.00530650
test eax, eax
je 0x474896
movss xmm0, dword [ebp - 0x1030]
mulss xmm0, dword [0x5d6db4]
movss dword [ebp - 0x1030], xmm0
push esi
push 2
mov ecx, 0x631538
call fcn.0052fb80
test eax, eax
je 0x4748de
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.00530650
movss xmm1, dword [ebp - 0x1030]
test eax, eax
je 0x4748e6
mulss xmm1, dword [0x5d6db4]
movss dword [ebp - 0x1030], xmm1
jmp 0x4748e6
movss xmm1, dword [ebp - 0x1030]
mov eax, dword [edi + 0x14f60]
test eax, eax
jle 0x474913
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x5d6d8c]
addss xmm0, dword [0x5d3048]
mulss xmm0, xmm1
movss dword [ebp - 0x1030], xmm0
movss xmm0, dword [ebp - 0x101c]
lea eax, [ebp - 0x418]
cvtps2pd xmm0, xmm0
sub esp, 8
movsd qword [esp], xmm0
push str.This_bombs_difficulty_is__4.2f.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.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.0043d380
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 0x474b91
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 0x474ac6
mov esi, eax
cmp dword [ebp - 0x1040], esi
jne 0x474aa1
mov eax, dword [esi + 0x118]
cmp eax, 1
jle 0x474a64
dec eax
mov dword [esi + 0x118], eax
jmp 0x474a88
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 0x474a48
mov esi, dword [ebp - 0x1028]
push 0x120
call fcn.005596ac
add esp, 4
mov dword [ebp - 0x1014], eax
mov byte [ebp - 4], 0x10
test eax, eax
je 0x474af3
push str.Disarmed_Bomb
push 0
push 0
mov ecx, eax
call fcn.0050ce40
jmp 0x474af5
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.0050da90
lea eax, [ebp - 0x418]
push str.You_disarmed_the_bomb.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.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 0x474ded
jb 0x474bbe
cmp eax, 0x7530
jae 0x474ded
comiss xmm0, xmm1
jb 0x474ded
mov eax, dword [0x630ad0]
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.00559aa0
movss xmm1, dword [ebp - 0x1014]
cvtsd2ss xmm0, xmm0
addss xmm1, xmm0
xorps xmm0, xmm0
movlpd qword [ebp - 0x1018], xmm0
movss xmm0, dword [0x5d6e90]
comiss xmm1, xmm0
jb 0x474c34
subss xmm1, xmm0
comiss xmm0, xmm1
jbe 0x474c34
mov esi, dword [ebp - 0x1018]
mov eax, dword [ebp - 0x1014]
add esi, 0
adc eax, 0x80000000
jmp 0x474c40
mov eax, dword [ebp - 0x1014]
mov esi, dword [ebp - 0x1018]
movaps xmm0, xmm1
mov dword [ebp - 0x1010], eax
call fcn.00559820
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.0055a830
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 0x47b586
jb 0x474cab
cmp esi, edi
ja 0x47b586
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.00559aa0
xorps xmm1, xmm1
ucomisd xmm1, xmm0
ja 0x474d43
sqrtsd xmm0, xmm0
jmp 0x474d48
call fcn.00595ca0
movaps xmm1, xmm0
xorps xmm0, xmm0
addsd xmm1, qword [0x5d3050]
movlpd qword [ebp - 0x1018], xmm0
movsd xmm0, qword [0x5d6e78]
comisd xmm1, xmm0
jb 0x474d8d
subsd xmm1, xmm0
comisd xmm0, xmm1
jbe 0x474d8d
mov esi, dword [ebp - 0x1018]
mov edi, dword [ebp - 0x1014]
add esi, 0
adc edi, 0x80000000
jmp 0x474d99
mov edi, dword [ebp - 0x1014]
mov esi, dword [ebp - 0x1018]
movaps xmm0, xmm1
call fcn.005599f0
mov ecx, dword [ebp - 0x1034]
add eax, esi
push str.You_gained_a_skill_level__
adc edx, edi
mov dword [ecx + 8], eax
lea eax, [ebp - 0x418]
push eax
mov dword [ecx + 0xc], edx
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov eax, dword [ebp - 0x1028]
mov ecx, dword [eax + 0x11c]
jmp 0x47b56a
lea eax, [ebp - 0x418]
push str.You_failed_to_disarm_the_bomb_
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.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.005596ac
add esp, 4
mov dword [ebp - 0x1014], eax
mov byte [ebp - 4], 0x11
test eax, eax
je 0x474e67
push edi
mov ecx, eax
call fcn.0048db00
mov ecx, eax
mov dword [ebp - 0x101c], eax
jmp 0x474e6f
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 0x474f7f
mov esi, eax
cmp dword [ebp - 0x1040], esi
jne 0x474f5a
mov eax, dword [esi + 0x118]
cmp eax, 1
jle 0x474f1d
dec eax
mov dword [esi + 0x118], eax
jmp 0x474f41
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 0x474f01
mov esi, dword [ebp - 0x1028]
push dword [ebp - 0x101c]
mov ecx, dword [esi + 0x118]
call fcn.005155e0
jmp 0x47b586
push str.Put_a_bomb_in_the_workbench_to_attempt_to_disarm_it.
jmp 0x47b53e
mov ecx, 0x5d5618
lea eax, [edi + 0x260]
nop word [eax + eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x474fd0
test dl, dl
je 0x474fcc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x474fd0
add eax, 2
add ecx, 2
test dl, dl
jne 0x474fb0
xor eax, eax
jmp 0x474fd5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x475b64
imul eax, dword [edi + 0x188], 0x980
xor edx, edx
movss xmm0, dword [0x5d3048]
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 0x475b5a
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 0x47508b
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 0x47507f
cmp eax, 0xfffffffe
jne 0x4750eb
mov dword [ebp - 0x1074], 1
jmp 0x4750eb
cmp ecx, 0x10
jne 0x4750eb
mov ecx, dword [eax + 0x11c]
mov edx, dword [ecx]
test edx, edx
jne 0x4750c6
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 0x4750eb
cmp edx, 1
jne 0x4750eb
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 0x475031
mov dword [ebp - 0x1044], esi
cmp esi, 0xffffffff
mov esi, dword [ebp - 0x1028]
je 0x475b5a
cmp dword [ebp - 0x1020], 1
jge 0x475134
push str.An_EarthKey_requires_at_least_one_bead_to_power_it.
jmp 0x47b53e
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 0x4723eb
mov esi, eax
mov ecx, esi
call fcn.0044c8e0
lea ecx, [edi + 0x260]
mov dl, byte [ecx]
cmp dl, byte [eax]
jne 0x475194
test dl, dl
je 0x475190
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x475194
add ecx, 2
add eax, 2
test dl, dl
jne 0x475174
xor eax, eax
jmp 0x475199
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4751a9
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 0x475167
mov esi, dword [ebp - 0x1028]
cmp dword [ebp - 0x1050], eax
je 0x4723eb
mov ecx, edi
call fcn.004816a0
mov ecx, dword [ebp - 0x1050]
cdq
push dword [ecx + 0xc]
push dword [ecx + 8]
push edx
push eax
call fcn.0055a830
mov ecx, eax
call fcn.00559aa0
cvtsd2ss xmm0, xmm0
sub esp, 8
mov dword [esp + 4], 0x3fa66666
mulss xmm0, dword [0x5d6d98]
mov dword [esp], 0x3f333333
movss dword [ebp - 0x1014], xmm0
call fcn.0048da90
fmul dword [ebp - 0x1014]
add esp, 8
mov ecx, 0x631538
push esi
push 6
fstp dword [ebp - 0x1010]
call fcn.0052fb80
test eax, eax
je 0x475276
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.00530650
test eax, eax
je 0x475276
movss xmm0, dword [ebp - 0x1010]
mulss xmm0, dword [0x5d3db8]
jmp 0x47527e
movss xmm0, dword [ebp - 0x1010]
push esi
push 7
mov ecx, 0x631538
movss dword [ebp - 0x1024], xmm0
call fcn.0052fb80
test eax, eax
je 0x4752ce
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.00530650
movss xmm1, dword [ebp - 0x1024]
test eax, eax
je 0x4752d6
mulss xmm1, dword [0x5d6dc4]
movss dword [ebp - 0x1024], xmm1
jmp 0x4752d6
movss xmm1, dword [ebp - 0x1024]
mov eax, dword [edi + 0x14f5c]
test eax, eax
jle 0x475303
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x5d6d8c]
addss xmm0, dword [0x5d3048]
mulss xmm0, xmm1
movss dword [ebp - 0x1024], xmm0
mov eax, dword [ebp - 0x1020]
imul eax
mov ecx, eax
call fcn.00559af0
cvtsd2ss xmm0, xmm0
sub esp, 8
lea eax, [ebp - 0x418]
mulss xmm0, dword [ebp - 0x1038]
mulss xmm0, dword [0x5d6dd8]
movss dword [ebp - 0x1020], xmm0
cvtss2sd xmm0, xmm0
movsd qword [esp], xmm0
push str.Task_difficulty_is__4.2f.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.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.0043d380
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 0x475a3e
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 0x47547a
mov esi, eax
mov eax, dword [esi + 0x110]
cmp eax, 0xa
je 0x475431
cmp eax, 0x10
jne 0x475455
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 0x475421
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 0x4754a6
dec eax
or eax, 0xfffffffc
inc eax
push eax
call fcn.0044cb60
movss xmm0, dword [ebp - 0x1030]
divss xmm0, dword [0x5d3bb8]
push 4
push 0
cvttss2si eax, xmm0
and eax, reloc.WS2_32.dll_closesocket
jns 0x4754d0
dec eax
or eax, 0xfffffffc
inc eax
push eax
call fcn.0044cb60
mov eax, dword [0x630ad0]
add esp, 0x18
cmp dword [eax + 0x7c], 0
jne 0x475588
mov eax, dword [ebp - 0x1044]
cmp eax, 0x15
je 0x475502
cmp eax, 0x1b
je 0x475502
cmp eax, 0x1f
je 0x475502
cmp eax, 0x20
jne 0x47550c
mov dword [ebp - 0x1044], 0
mov eax, dword [ebp - 0x1040]
cmp eax, 0x15
je 0x475526
cmp eax, 0x1b
je 0x475526
cmp eax, 0x1f
je 0x475526
cmp eax, 0x20
jne 0x47558e
movss xmm0, dword [ebp - 0x1030]
addss xmm0, dword [0x5d6e50]
mov dword [ebp - 0x1040], 0
cvttss2si ecx, xmm0
push ecx
lea eax, [ebp - 0x418]
push str._dm_mixed_EarthKey
push eax
call fcn.0043d380
add esp, 0xc
push 0x120
call fcn.005596ac
add esp, 4
mov dword [ebp - 0x1014], eax
mov byte [ebp - 4], 0x12
test eax, eax
je 0x4755cd
lea ecx, [ebp - 0x418]
push ecx
push 0
push 0x11
mov ecx, eax
call fcn.0050ce40
jmp 0x4755cf
mov eax, dword [ebp - 0x1040]
movss xmm0, dword [ebp - 0x1030]
addss xmm0, dword [0x5d6e50]
cvttss2si ecx, xmm0
test eax, eax
jns 0x475544
imul eax, dword [ebp - 0x1044], 0x258
add eax, str.Ghost
push eax
push ecx
lea eax, [ebp - 0x418]
push str._dm__s_EarthKey
push eax
call fcn.0043d380
add esp, 0x10
jmp 0x475559
xor eax, eax
movss xmm1, dword [ebp - 0x1030]
movaps xmm0, xmm1
mov dword [eax + 0x108], 0
mulss xmm0, dword [0x5d6e38]
mov dword [ebp - 0x101c], eax
mov byte [ebp - 4], 0
addss xmm0, dword [0x5d6e68]
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 0x475645
sqrtsd xmm0, xmm0
jmp 0x47564a
call fcn.00595ca0
divsd xmm0, qword [0x5d6e98]
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 0x475683
mov dword [eax], 0xa
mov dword [ebp - 0x1084], 0xa
movss xmm0, dword [ebp - 0x1030]
xorps xmm1, xmm1
mulss xmm0, dword [0x5d6da8]
cvtps2pd xmm0, xmm0
ucomisd xmm1, xmm0
ja 0x4756a5
sqrtsd xmm0, xmm0
jmp 0x4756aa
call fcn.00595ca0
divsd xmm0, qword [0x5d6e98]
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 0x4756da
mov dword [eax + 4], 0xa
mov ecx, 0xa
cmp dword [ebp - 0x1074], 1
jne 0x4756f2
mov edx, dword [ebp - 0x1084]
neg edx
neg ecx
mov dword [eax], edx
mov dword [eax + 4], ecx
lea eax, [ebp - 0x418]
push str.You_have_created_a
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.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 0x5d58d4
push eax
call fcn.0043d380
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.0050da90
mov esi, dword [ebp - 0x1050]
mov ecx, dword [esi + 0xc]
mov eax, dword [esi + 8]
test ecx, ecx
ja 0x47b586
jb 0x4757d5
cmp eax, 0x7530
jae 0x47b586
movss xmm1, dword [ebp - 0x1024]
movaps xmm0, xmm1
movss xmm2, dword [ebp - 0x1020]
divss xmm0, dword [0x5d6e50]
comiss xmm2, xmm0
jbe 0x47b586
mov eax, dword [0x630ad0]
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.00559aa0
movss xmm1, dword [ebp - 0x1014]
cvtsd2ss xmm0, xmm0
addss xmm1, xmm0
xorps xmm0, xmm0
movlpd qword [ebp - 0x1018], xmm0
movss xmm0, dword [0x5d6e90]
comiss xmm1, xmm0
jb 0x475872
subss xmm1, xmm0
comiss xmm0, xmm1
jbe 0x475872
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 0x47588a
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.00559820
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.0055a830
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 0x47b586
jb 0x4758e7
cmp esi, edi
ja 0x47b586
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.00559aa0
xorps xmm1, xmm1
ucomisd xmm1, xmm0
ja 0x47597f
sqrtsd xmm0, xmm0
jmp 0x475984
call fcn.00595ca0
movaps xmm1, xmm0
xorps xmm0, xmm0
addsd xmm1, qword [0x5d3050]
movlpd qword [ebp - 0x1018], xmm0
movsd xmm0, qword [0x5d6e78]
comisd xmm1, xmm0
jb 0x4759c9
subsd xmm1, xmm0
comisd xmm0, xmm1
jbe 0x4759c9
mov esi, dword [ebp - 0x1018]
mov edi, dword [ebp - 0x1014]
add esi, 0
adc edi, 0x80000000
jmp 0x4759d5
mov edi, dword [ebp - 0x1014]
mov esi, dword [ebp - 0x1018]
movaps xmm0, xmm1
call fcn.005599f0
mov ecx, dword [ebp - 0x1050]
add eax, esi
push str.You_gained_a_skill_level__
adc edx, edi
mov dword [ecx + 8], eax
lea eax, [ebp - 0x418]
push eax
mov dword [ecx + 0xc], edx
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov ecx, dword [ebp - 0x106c]
imul eax, dword [ecx + 0x188], 0x980
movss xmm0, dword [eax + ecx + 0x300]
addss xmm0, dword [0x5d6d9c]
jmp 0x47167f
lea eax, [ebp - 0x418]
push str.Your_Eye_of_the_Earth_fails_to_see.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.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 0x47b586
movss xmm0, dword [ebp - 0x1024]
divss xmm0, dword [ebp - 0x1020]
movss dword [ebp - 0x1024], xmm0
call fcn.00568dab
xorps xmm1, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
divss xmm0, dword [0x5d6e8c]
addss xmm0, xmm1
comiss xmm0, dword [ebp - 0x1024]
jbe 0x475b32
mov eax, dword [esi + 0x110]
cmp eax, 0xa
je 0x475afa
cmp eax, 0x10
jne 0x475b32
mov eax, dword [esi + 0x118]
cmp eax, 1
jle 0x475b0e
dec eax
mov dword [esi + 0x118], eax
jmp 0x475b32
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 0x475ac6
jmp 0x47b586
push str.An_EarthKey_requires_the_flesh_of_a_monster.
jmp 0x47b53e
mov ecx, 0x5d5624
lea eax, [edi + 0x260]
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x475b90
test dl, dl
je 0x475b8c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x475b90
add eax, 2
add ecx, 2
test dl, dl
jne 0x475b70
xor eax, eax
jmp 0x475b95
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47797c
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e020
test eax, eax
je 0x477972
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 0x475bc0
mov dword [ebp - 0x1038], esi
test esi, esi
mov esi, dword [ebp - 0x1028]
je 0x477972
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 0x4723eb
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 0x475c60
test dl, dl
je 0x475c5c
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x475c60
add ecx, 2
add eax, 2
test dl, dl
jne 0x475c40
xor eax, eax
jmp 0x475c65
sbb eax, eax
or eax, 1
test eax, eax
jne 0x475c75
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 0x475c30
mov esi, dword [ebp - 0x1028]
cmp dword [ebp - 0x1040], eax
je 0x4723eb
mov ecx, edi
call fcn.004816a0
mov ecx, dword [ebp - 0x1040]
cdq
push dword [ecx + 0xc]
push dword [ecx + 8]
push edx
push eax
call fcn.0055a830
mov ecx, eax
call fcn.00559aa0
cvtsd2ss xmm0, xmm0
sub esp, 8
mov dword [esp + 4], 0x3fc00000
mulss xmm0, dword [0x5d6d98]
mov dword [esp], 0x3f4ccccd
movss dword [ebp - 0x1014], xmm0
call fcn.0048da90
fmul dword [ebp - 0x1014]
add esp, 8
mov ecx, 0x631538
push esi
push 8
fstp dword [ebp - 0x1010]
call fcn.0052fb80
test eax, eax
je 0x475d42
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.00530650
test eax, eax
je 0x475d42
movss xmm1, dword [ebp - 0x1010]
mulss xmm1, dword [0x5d6db0]
jmp 0x475d4a
movss xmm1, dword [ebp - 0x1010]
mov eax, dword [edi + 0x14f5c]
movss dword [ebp - 0x1050], xmm1
test eax, eax
jle 0x475d7f
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x5d6d8c]
addss xmm0, dword [0x5d3048]
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 0x475d95
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.00559af0
movss xmm1, dword [0x5d3048]
lea eax, [ebp - 0x418]
cvtsd2ss xmm0, xmm0
sub esp, 8
maxss xmm1, xmm0
cvtps2pd xmm0, xmm1
movss dword [ebp - 0x1074], xmm1
movsd qword [esp], xmm0
push str.Task_difficulty_is__4.2f.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.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.0043d380
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 0x47790a
push str.You_successfully_shatter_the_totem_with_magic___Its_power_engulfs_the_items_in_your_workbench.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.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 [0x5d6e48]
mov esi, dword [esi + 0x11c]
movss xmm0, dword [esi + 0x34]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x47613a
movss xmm0, dword [esi + 0x38]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x47613a
lea eax, [ebp - 0x418]
push str.The_released_power_wants_to_break_a_Heart_Gem_apart.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.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 0x47613a
nop dword [eax]
nop dword [eax + eax]
cmp dword [eax + 0x110], 0x10
jne 0x476113
mov ecx, dword [eax + 0x11c]
cmp dword [ecx], 1
jne 0x476113
movss xmm1, dword [esi + 0x3c]
movss xmm2, dword [0x5d3048]
comiss xmm1, xmm2
jbe 0x476113
movss xmm0, dword [ecx + 4]
comiss xmm0, xmm2
jbe 0x476113
comiss xmm1, xmm0
jb 0x476113
dec dword [eax + 0x118]
cmp dword [eax + 0x118], 1
jge 0x476048
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.005596ac
add esp, 4
mov dword [ebp - 0x1064], eax
mov byte [ebp - 4], 0x13
test eax, eax
je 0x476098
push str.Plain_Heart_Gem
push 0
push 0x10
mov ecx, eax
call fcn.0050ce40
jmp 0x47609a
xor eax, eax
push 8
mov dword [ebp - 0x1010], eax
mov byte [ebp - 4], 0
call fcn.005596ac
add esp, 4
test eax, eax
je 0x4760bb
xorps xmm0, xmm0
movq qword [eax], xmm0
jmp 0x4760bd
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.0050da90
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 0x475fd0
movss xmm0, dword [esi + 0x2c]
movss xmm1, dword [0x5d3058]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x47654d
movss xmm0, dword [esi + 0x1c]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x47634c
lea eax, [ebp - 0x418]
push str.The_released_power_wants_to_turn_Green_Dust_into_White_Dust.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.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 0x476545
cmp dword [ecx + 0x110], 8
jne 0x47631e
mov eax, dword [ecx + 0x11c]
cmp dword [eax], 0
jne 0x47631e
movss xmm1, dword [esi + 0x3c]
xorps xmm0, xmm0
comiss xmm1, xmm0
jbe 0x47631e
movd xmm0, dword [ecx + 0x118]
cvtdq2ps xmm0, xmm0
comiss xmm1, xmm0
jb 0x476267
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 0x5d474c
push eax
call fcn.0043d380
mov ecx, dword [ebp - 0x101c]
add esp, 8
mov eax, dword [ecx + 0x11c]
mov dword [eax], 3
jmp 0x476307
subss xmm0, xmm1
push 0x120
cvttss2si eax, xmm0
mov dword [ecx + 0x118], eax
call fcn.005596ac
add esp, 4
mov dword [ebp - 0x1014], eax
mov byte [ebp - 4], 0x14
test eax, eax
je 0x4762a2
push 0x5d474c
push 0
push 8
mov ecx, eax
call fcn.0050ce40
jmp 0x4762a4
xor eax, eax
push 8
mov dword [ebp - 0x1010], eax
mov byte [ebp - 4], 0
call fcn.005596ac
mov edx, eax
add esp, 4
test edx, edx
je 0x4762c7
xorps xmm0, xmm0
movq qword [edx], xmm0
jmp 0x4762c9
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.0050da90
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 0x4761e2
jmp 0x476545
movss xmm0, dword [esi + 0x38]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x47654d
lea eax, [ebp - 0x418]
push str.The_released_power_wants_to_turn_Black_Dust_into_Red_Dust.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.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 0x476545
nop word [eax + eax]
cmp dword [ecx + 0x110], 8
jne 0x47651c
mov eax, dword [ecx + 0x11c]
cmp dword [eax], 2
jne 0x47651c
movss xmm1, dword [esi + 0x3c]
xorps xmm0, xmm0
comiss xmm1, xmm0
jbe 0x47651c
movd xmm0, dword [ecx + 0x118]
cvtdq2ps xmm0, xmm0
comiss xmm1, xmm0
jb 0x476465
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 0x5d4724
push eax
call fcn.0043d380
mov ecx, dword [ebp - 0x101c]
add esp, 8
mov eax, dword [ecx + 0x11c]
mov dword [eax], 4
jmp 0x476505
subss xmm0, xmm1
push 0x120
cvttss2si eax, xmm0
mov dword [ecx + 0x118], eax
call fcn.005596ac
add esp, 4
mov dword [ebp - 0x1014], eax
mov byte [ebp - 4], 0x15
test eax, eax
je 0x4764a0
push 0x5d4724
push 0
push 8
mov ecx, eax
call fcn.0050ce40
jmp 0x4764a2
xor eax, eax
push 8
mov dword [ebp - 0x1010], eax
mov byte [ebp - 4], 0
call fcn.005596ac
mov edx, eax
add esp, 4
test edx, edx
je 0x4764c5
xorps xmm0, xmm0
movq qword [edx], xmm0
jmp 0x4764c7
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.0050da90
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 0x4763e0
movss xmm1, dword [0x5d3058]
movss xmm0, dword [esi + 0x30]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x47675d
movss xmm0, dword [esi + 0x38]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x47675d
lea eax, [ebp - 0x418]
push str.The_released_power_wants_to_turn_White_into_Green_Dust.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.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 0x476755
nop dword [eax]
cmp dword [ecx + 0x110], 8
jne 0x47672c
mov eax, dword [ecx + 0x11c]
cmp dword [eax], 3
jne 0x47672c
movss xmm1, dword [esi + 0x3c]
xorps xmm0, xmm0
comiss xmm1, xmm0
jbe 0x47672c
movd xmm0, dword [ecx + 0x118]
cvtdq2ps xmm0, xmm0
comiss xmm1, xmm0
jb 0x476675
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 0x5d4738
push eax
call fcn.0043d380
mov ecx, dword [ebp - 0x101c]
add esp, 8
mov eax, dword [ecx + 0x11c]
mov dword [eax], 0
jmp 0x476715
subss xmm0, xmm1
push 0x120
cvttss2si eax, xmm0
mov dword [ecx + 0x118], eax
call fcn.005596ac
add esp, 4
mov dword [ebp - 0x1014], eax
mov byte [ebp - 4], 0x16
test eax, eax
je 0x4766b0
push 0x5d4738
push 0
push 8
mov ecx, eax
call fcn.0050ce40
jmp 0x4766b2
xor eax, eax
push 8
mov dword [ebp - 0x1010], eax
mov byte [ebp - 4], 0
call fcn.005596ac
mov edx, eax
add esp, 4
test edx, edx
je 0x4766d5
xorps xmm0, xmm0
movq qword [edx], xmm0
jmp 0x4766d7
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.0050da90
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 0x4765f0
movss xmm1, dword [0x5d3058]
movss xmm4, dword [esi + 0x34]
ucomiss xmm4, xmm1
lahf
test ah, 0x44
jp 0x47696a
movss xmm0, dword [esi + 0x30]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x47696a
lea eax, [ebp - 0x418]
push str.The_released_power_wants_to_turn_White_into_Black_Dust.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.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 0x477641
nop dword [eax]
cmp dword [ecx + 0x110], 8
jne 0x47693c
mov eax, dword [ecx + 0x11c]
cmp dword [eax], 3
jne 0x47693c
movss xmm1, dword [esi + 0x3c]
xorps xmm0, xmm0
comiss xmm1, xmm0
jbe 0x47693c
movd xmm0, dword [ecx + 0x118]
cvtdq2ps xmm0, xmm0
comiss xmm1, xmm0
jb 0x476885
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 0x5d4760
push eax
call fcn.0043d380
mov ecx, dword [ebp - 0x101c]
add esp, 8
mov eax, dword [ecx + 0x11c]
mov dword [eax], 2
jmp 0x476925
subss xmm0, xmm1
push 0x120
cvttss2si eax, xmm0
mov dword [ecx + 0x118], eax
call fcn.005596ac
add esp, 4
mov dword [ebp - 0x1014], eax
mov byte [ebp - 4], 0x17
test eax, eax
je 0x4768c0
push 0x5d4760
push 0
push 8
mov ecx, eax
call fcn.0050ce40
jmp 0x4768c2
xor eax, eax
push 8
mov dword [ebp - 0x1010], eax
mov byte [ebp - 4], 0
call fcn.005596ac
mov edx, eax
add esp, 4
test edx, edx
je 0x4768e5
xorps xmm0, xmm0
movq qword [edx], xmm0
jmp 0x4768e7
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.0050da90
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 0x476800
jmp 0x477641
movss xmm0, dword [esi + 0x24]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x476d7a
movss xmm0, dword [esi + 0x2c]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x476b7a
lea eax, [ebp - 0x418]
push str.The_released_power_wants_to_turn_Red_Dust_into_Black_Dust.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.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 0x477641
nop word [eax + eax]
cmp dword [ecx + 0x110], 8
jne 0x476b4c
mov eax, dword [ecx + 0x11c]
cmp dword [eax], 4
jne 0x476b4c
movss xmm1, dword [esi + 0x3c]
xorps xmm0, xmm0
comiss xmm1, xmm0
jbe 0x476b4c
movd xmm0, dword [ecx + 0x118]
cvtdq2ps xmm0, xmm0
comiss xmm1, xmm0
jb 0x476a95
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 0x5d4760
push eax
call fcn.0043d380
mov ecx, dword [ebp - 0x101c]
add esp, 8
mov eax, dword [ecx + 0x11c]
mov dword [eax], 2
jmp 0x476b35
subss xmm0, xmm1
push 0x120
cvttss2si eax, xmm0
mov dword [ecx + 0x118], eax
call fcn.005596ac
add esp, 4
mov dword [ebp - 0x1014], eax
mov byte [ebp - 4], 0x18
test eax, eax
je 0x476ad0
push 0x5d4760
push 0
push 8
mov ecx, eax
call fcn.0050ce40
jmp 0x476ad2
xor eax, eax
push 8
mov dword [ebp - 0x1010], eax
mov byte [ebp - 4], 0
call fcn.005596ac
mov edx, eax
add esp, 4
test edx, edx
je 0x476af5
xorps xmm0, xmm0
movq qword [edx], xmm0
jmp 0x476af7
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.0050da90
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 0x476a10
jmp 0x477641
movss xmm0, dword [esi + 0x38]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x476d7a
lea eax, [ebp - 0x418]
push str.The_released_power_wants_to_turn_Red_Dust_into_Green_Dust.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.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 0x477641
nop dword [eax + eax]
cmp dword [ecx + 0x110], 8
jne 0x476d4c
mov eax, dword [ecx + 0x11c]
cmp dword [eax], 4
jne 0x476d4c
movss xmm1, dword [esi + 0x3c]
xorps xmm0, xmm0
comiss xmm1, xmm0
jbe 0x476d4c
movd xmm0, dword [ecx + 0x118]
cvtdq2ps xmm0, xmm0
comiss xmm1, xmm0
jb 0x476c95
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 0x5d4738
push eax
call fcn.0043d380
mov ecx, dword [ebp - 0x101c]
add esp, 8
mov eax, dword [ecx + 0x11c]
mov dword [eax], 0
jmp 0x476d35
subss xmm0, xmm1
push 0x120
cvttss2si eax, xmm0
mov dword [ecx + 0x118], eax
call fcn.005596ac
add esp, 4
mov dword [ebp - 0x1014], eax
mov byte [ebp - 4], 0x19
test eax, eax
je 0x476cd0
push 0x5d4738
push 0
push 8
mov ecx, eax
call fcn.0050ce40
jmp 0x476cd2
xor eax, eax
push 8
mov dword [ebp - 0x1010], eax
mov byte [ebp - 4], 0
call fcn.005596ac
mov edx, eax
add esp, 4
test edx, edx
je 0x476cf5
xorps xmm0, xmm0
movq qword [edx], xmm0
jmp 0x476cf7
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.0050da90
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 0x476c10
jmp 0x477641
movss xmm2, dword [esi + 0x1c]
movss xmm1, dword [0x5d3bd8]
ucomiss xmm2, xmm1
lahf
test ah, 0x44
jp 0x476f8c
movss xmm0, dword [esi + 0x38]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x476f8c
lea eax, [ebp - 0x418]
push str.The_released_power_wants_to_turn_Green_Dust_into_Blue_Dust.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.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 0x477641
cmp dword [ecx + 0x110], 8
jne 0x476f5e
mov eax, dword [ecx + 0x11c]
cmp dword [eax], 0
jne 0x476f5e
movss xmm1, dword [esi + 0x3c]
xorps xmm0, xmm0
comiss xmm1, xmm0
jbe 0x476f5e
movd xmm0, dword [ecx + 0x118]
cvtdq2ps xmm0, xmm0
comiss xmm1, xmm0
jb 0x476ea7
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 0x5d4710
push eax
call fcn.0043d380
mov ecx, dword [ebp - 0x101c]
add esp, 8
mov eax, dword [ecx + 0x11c]
mov dword [eax], 1
jmp 0x476f47
subss xmm0, xmm1
push 0x120
cvttss2si eax, xmm0
mov dword [ecx + 0x118], eax
call fcn.005596ac
add esp, 4
mov dword [ebp - 0x1014], eax
mov byte [ebp - 4], 0x1a
test eax, eax
je 0x476ee2
push 0x5d4710
push 0
push 8
mov ecx, eax
call fcn.0050ce40
jmp 0x476ee4
xor eax, eax
push 8
mov dword [ebp - 0x1010], eax
mov byte [ebp - 4], 0
call fcn.005596ac
mov edx, eax
add esp, 4
test edx, edx
je 0x476f07
xorps xmm0, xmm0
movq qword [edx], xmm0
jmp 0x476f09
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.0050da90
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 0x476e22
jmp 0x477641
movss xmm1, dword [0x5d6e48]
ucomiss xmm2, xmm1
lahf
test ah, 0x44
jp 0x47719a
movss xmm0, dword [esi + 0x38]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x47719a
lea eax, [ebp - 0x418]
push str.The_released_power_wants_to_turn_Black_Dust_into_Blue_Dust.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.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 0x477641
nop
cmp dword [ecx + 0x110], 8
jne 0x47716c
mov eax, dword [ecx + 0x11c]
cmp dword [eax], 2
jne 0x47716c
movss xmm1, dword [esi + 0x3c]
xorps xmm0, xmm0
comiss xmm1, xmm0
jbe 0x47716c
movd xmm0, dword [ecx + 0x118]
cvtdq2ps xmm0, xmm0
comiss xmm1, xmm0
jb 0x4770b5
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 0x5d4710
push eax
call fcn.0043d380
mov ecx, dword [ebp - 0x101c]
add esp, 8
mov eax, dword [ecx + 0x11c]
mov dword [eax], 1
jmp 0x477155
subss xmm0, xmm1
push 0x120
cvttss2si eax, xmm0
mov dword [ecx + 0x118], eax
call fcn.005596ac
add esp, 4
mov dword [ebp - 0x1014], eax
mov byte [ebp - 4], 0x1b
test eax, eax
je 0x4770f0
push 0x5d4710
push 0
push 8
mov ecx, eax
call fcn.0050ce40
jmp 0x4770f2
xor eax, eax
push 8
mov dword [ebp - 0x1010], eax
mov byte [ebp - 4], 0
call fcn.005596ac
mov edx, eax
add esp, 4
test edx, edx
je 0x477115
xorps xmm0, xmm0
movq qword [edx], xmm0
jmp 0x477117
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.0050da90
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 0x477030
jmp 0x477641
movss xmm3, dword [esi + 0x20]
movss xmm1, dword [0x5d6e3c]
ucomiss xmm3, xmm1
lahf
test ah, 0x44
jp 0x4772ca
movss xmm0, dword [esi + 0x28]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x4772ca
movss xmm0, dword [esi + 0x38]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x4772ca
lea eax, [ebp - 0x418]
push str.The_released_power_wants_to_change_a_shards_color.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.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 0x477641
nop
cmp dword [ecx + 0x110], 8
jne 0x47726b
mov edx, dword [ecx + 0x11c]
mov eax, dword [edx]
cmp eax, 5
jl 0x47726b
cmp eax, 0xd
jle 0x47728f
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 0x477250
jmp 0x477641
inc eax
mov dword [edx], eax
mov eax, dword [ecx + 0x11c]
cmp dword [eax], 0xd
jle 0x4772a3
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 0x4772b7
jmp 0x477641
movss xmm0, dword [0x5d3048]
ucomiss xmm3, xmm0
lahf
test ah, 0x44
jp 0x477641
ucomiss xmm2, xmm0
lahf
test ah, 0x44
jp 0x477641
ucomiss xmm4, xmm0
lahf
test ah, 0x44
jp 0x477641
lea eax, [ebp - 0x418]
push str.The_released_power_wants_to_release_your_pets.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.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 0x4774e3
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.0052bf40
push dword [ebp - 0x1020]
lea eax, [ebp - 0x418]
push str._s_is_freed_into_the_wild.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.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.0052bf40
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 [0x5d3bb8]
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.0052bf40
mov eax, dword [ebp - 0x1020]
mov byte [eax + 0x10], 0xff
mov eax, dword [ebp - 0x1044]
cmp byte [eax + 0x10], 0xff
je 0x477641
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.0052bf40
push dword [ebp - 0x1044]
lea eax, [ebp - 0x418]
push str._s_is_freed_into_the_wild.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.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.0052bf40
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 [0x5d3bb8]
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.0052bf40
mov eax, dword [ebp - 0x1044]
mov byte [eax + 0x10], 0xff
mov esi, dword [ebp - 0x1038]
mov eax, dword [esi + 0x118]
cmp eax, 1
jle 0x47765b
dec eax
mov dword [esi + 0x118], eax
jmp 0x47767f
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 0x47b586
jb 0x4776a0
cmp eax, 0x7530
jae 0x47b586
movss xmm0, dword [ebp - 0x1050]
divss xmm0, dword [0x5d6e50]
movss xmm1, dword [ebp - 0x1074]
comiss xmm1, xmm0
jbe 0x47b586
mov eax, dword [0x630ad0]
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.00559aa0
movss xmm1, dword [ebp - 0x1014]
cvtsd2ss xmm0, xmm0
addss xmm1, xmm0
xorps xmm0, xmm0
movlpd qword [ebp - 0x1018], xmm0
movss xmm0, dword [0x5d6e90]
comiss xmm1, xmm0
jb 0x47773a
subss xmm1, xmm0
comiss xmm0, xmm1
jbe 0x47773a
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 0x477752
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.00559820
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.0055a830
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 0x47b586
jb 0x4777b2
cmp eax, edi
ja 0x47b586
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.00559aa0
xorps xmm1, xmm1
ucomisd xmm1, xmm0
ja 0x47784b
sqrtsd xmm0, xmm0
jmp 0x477850
call fcn.00595ca0
movaps xmm1, xmm0
xorps xmm0, xmm0
addsd xmm1, qword [0x5d3050]
movlpd qword [ebp - 0x1018], xmm0
movsd xmm0, qword [0x5d6e78]
comisd xmm1, xmm0
jb 0x477895
subsd xmm1, xmm0
comisd xmm0, xmm1
jbe 0x477895
mov esi, dword [ebp - 0x1018]
mov edi, dword [ebp - 0x1014]
add esi, 0
adc edi, 0x80000000
jmp 0x4778a1
mov edi, dword [ebp - 0x1014]
mov esi, dword [ebp - 0x1018]
movaps xmm0, xmm1
call fcn.005599f0
mov ecx, dword [ebp - 0x1040]
add eax, esi
push str.You_gained_a_skill_level__
adc edx, edi
mov dword [ecx + 8], eax
lea eax, [ebp - 0x418]
push eax
mov dword [ecx + 0xc], edx
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov ecx, dword [ebp - 0x106c]
imul eax, dword [ecx + 0x188], 0x980
movss xmm0, dword [eax + ecx + 0x300]
addss xmm0, dword [0x5d6d8c]
jmp 0x47167f
push str.Your_attempt_to_magically_break_the_totem_fails._It_crumbles_to_dust.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.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 0x4780bb
dec eax
mov dword [esi + 0x118], eax
jmp 0x47b586
push str.You_must_have_a_totem_in_your_workbench_to_shatter.
jmp 0x47b53e
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 0x4779b0
sub ecx, dword [ebp - 0x1014]
push ecx
push esi
push edx
call fcn.005a5d36
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 0x477994
mov esi, dword [ebp - 0x1028]
cmp eax, 0xffffffff
jle 0x478e60
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 0x478e56
or esi, 0xffffffff
nop dword [eax]
mov ecx, dword [eax + 0x110]
cmp ecx, 2
jne 0x477a68
mov ecx, dword [ebp - 0x101c]
add ecx, dword [eax + 0x118]
mov dword [ebp - 0x101c], ecx
mov dword [ebp - 0x103c], eax
jmp 0x477ad2
cmp ecx, 0xe
jne 0x477a87
mov ecx, dword [ebp - 0x1038]
add ecx, dword [eax + 0x118]
mov dword [ebp - 0x1038], ecx
mov dword [ebp - 0x1040], eax
jmp 0x477ad2
cmp ecx, 9
jne 0x477aa6
mov ecx, dword [ebp - 0x1020]
add ecx, dword [eax + 0x118]
mov dword [ebp - 0x1020], ecx
mov dword [ebp - 0x1074], eax
jmp 0x477ad2
cmp ecx, 0xf
jne 0x477ad2
mov ecx, dword [ebp - 0x107c]
add ecx, dword [eax + 0x118]
mov dword [ebp - 0x107c], ecx
cmp esi, 0xffffffff
jne 0x477acd
mov eax, dword [eax + 0x11c]
movsx esi, byte [eax]
jmp 0x477ad2
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 0x477a40
mov ecx, dword [ebp - 0x101c]
mov dword [ebp - 0x1050], esi
mov esi, dword [ebp - 0x1028]
cmp ecx, 1
jle 0x477b14
push str.Use_magic_on_one_totem_at_a_time.
jmp 0x47b53e
mov eax, dword [ebp - 0x1020]
cmp eax, 1
jle 0x477b29
push str.Use_magic_on_one_egg_at_a_time.
jmp 0x47b53e
mov edx, dword [ebp - 0x1038]
cmp edx, 1
jle 0x477b3e
push str.Use_magic_on_one_staff_at_a_time.
jmp 0x47b53e
cmp ecx, 1
jge 0x477b51
cmp eax, 1
jge 0x477b51
cmp edx, 1
jl 0x478e56
add eax, edx
add eax, ecx
cmp eax, 1
jle 0x477b64
push str.You_have_too_many_imbuable_items_in_the_workbench.
jmp 0x47b53e
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 0x478e4c
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 0x477bc0
test dl, dl
je 0x477bbc
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x477bc0
add ecx, 2
add eax, 2
test dl, dl
jne 0x477ba0
xor eax, eax
jmp 0x477bc5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x477bd5
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 0x477b90
mov dword [ebp - 0x1024], esi
test esi, esi
mov esi, dword [ebp - 0x1028]
je 0x478e4c
mov eax, dword [ebp - 0x1020]
test eax, eax
jle 0x478120
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.004816a0
cmp eax, esi
jge 0x477c87
lea eax, [ebp - 0x418]
push str.Your_magic_is_too_weak_to_hatch_this_egg.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov eax, dword [ebp - 0x1028]
mov ecx, dword [eax + 0x11c]
jmp 0x47b56a
imul ecx, dword [edi + 0x188], 0x980
cmp byte [ecx + edi + 0x344], 0xff
jne 0x477cae
mov dword [ebp - 0x1020], 0
xor esi, esi
mov edx, str.Pet_A
jmp 0x477cd0
cmp byte [ecx + edi + 0x378], 0xff
jne 0x4780e4
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.00515400
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 + 0x61351c]
jne 0x477df4
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, 0x631538
shl eax, 4
push dword [eax + 0x61351c]
call fcn.0052fb80
test eax, eax
je 0x477e71
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.00530650
test eax, eax
je 0x477e71
imul eax, dword [edi + 0x188], 0x980
add eax, dword [ebp - 0x1010]
movss xmm0, dword [eax + edi + 0x354]
cvtps2pd xmm0, xmm0
addsd xmm0, qword [0x5d3050]
cvtpd2ps xmm0, xmm0
movss dword [eax + edi + 0x354], xmm0
mov eax, dword [edi + 0x14f5c]
test eax, eax
jle 0x477ea9
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 [0x5d3bb8]
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.0052bf40
lea eax, [ebp - 0x418]
push str.You_have_hatched_a_pet_drake_
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.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.0052bf40
push 0x5d1640
push str.petInfo.txt
call fcn.00569402
mov esi, eax
lea eax, [ebp - 0x418]
push eax
call fcn.00590ffe
lea eax, [ebp - 0x418]
push eax
push str._s_
push esi
call fcn.0043d350
lea eax, [ebp - 0x418]
push eax
call fcn.0059123e
lea eax, [ebp - 0x418]
push eax
push str._s_
push esi
call fcn.0043d350
push dword [edi + 0x10c]
imul eax, dword [edi + 0x188], 0x980
push dword [edi + 0x108]
add eax, 0x2a0
add eax, edi
push eax
movzx eax, byte [ebp - 0x1002]
lea ecx, [eax*8]
sub ecx, eax
movzx eax, byte [ebp - 0x1003]
add ecx, eax
lea eax, [ecx + ecx*8]
shl eax, 4
add eax, str.Plain_Red_Egg
push eax
push str.BIRTH___s___s___d___d_n
push esi
call fcn.0043d350
add esp, 0x40
push esi
call fcn.00569114
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 0x47b586
lea eax, [ebp - 0x418]
push str.You_already_have_two_pet_drakes.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov eax, dword [ebp - 0x1028]
mov ecx, dword [eax + 0x11c]
jmp 0x47b56a
mov ecx, edi
call fcn.004816a0
mov ecx, dword [ebp - 0x1024]
cdq
push dword [ecx + 0xc]
push dword [ecx + 8]
push edx
push eax
call fcn.0055a830
mov ecx, eax
call fcn.00559aa0
cvtsd2ss xmm0, xmm0
sub esp, 8
mov dword [esp + 4], 0x3fa66666
mulss xmm0, dword [0x5d6d98]
mov dword [esp], 0x3f333333
movss dword [ebp - 0x1014], xmm0
call fcn.0048da90
fmul dword [ebp - 0x1014]
add esp, 8
mov ecx, 0x631538
push esi
push dword [ebp - 0x1034]
fstp dword [ebp - 0x1010]
call fcn.0052fb80
test eax, eax
je 0x4781c0
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.00530650
test eax, eax
je 0x4781c0
movss xmm1, dword [ebp - 0x1010]
mulss xmm1, dword [0x5d6dc4]
jmp 0x4781c8
movss xmm1, dword [ebp - 0x1010]
mov eax, dword [edi + 0x14f5c]
movss dword [ebp - 0x1030], xmm1
test eax, eax
jle 0x4781fd
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x5d6d8c]
addss xmm0, dword [0x5d3048]
mulss xmm1, xmm0
movss dword [ebp - 0x1030], xmm1
mov eax, dword [ebp - 0x1038]
test eax, eax
jle 0x478646
push ecx
movss dword [esp], xmm1
push dword [ebp - 0x1034]
push dword [ebp - 0x1040]
call fcn.0052d740
mov dword [ebp - 0x1014], eax
mov eax, dword [ebp - 0x1040]
mov eax, dword [eax + 0x11c]
push eax
mov dword [ebp - 0x1074], eax
call fcn.0052d7d0
fstp dword [ebp - 0x1010]
movss xmm0, dword [ebp - 0x1010]
lea eax, [ebp - 0x418]
cvtps2pd xmm0, xmm0
add esp, 8
movsd qword [esp], xmm0
push str.Task_difficulty_is__4.2f.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.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.0043d380
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.0052d810
mov ecx, dword [0x630ad0]
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 0x4783da
sub eax, 1
je 0x478388
sub eax, 1
jne 0x478476
lea eax, [ebp - 0x418]
push str.The_attempt_destroys_the_staff.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
add esp, 0x18
jmp 0x4784cd
lea eax, [ebp - 0x418]
push str.The_magic_fails_to_imbue_the_staff.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.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 0x478476
lea eax, [ebp - 0x418]
push str.The_magic_infuses_the_staff_
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.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.0052d880
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.00483cb0
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 0x478484
mov eax, dword [ebp - 0x1074]
mov eax, dword [eax + 4]
add eax, 4
lea eax, [eax + eax*4]
cmp ecx, eax
jle 0x478516
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 0x47b586
jb 0x478535
cmp edx, 0x64
jae 0x47b586
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 0x47b586
jb 0x47856b
cmp ecx, edi
ja 0x47b586
mov ecx, 0x88888889
mov eax, edi
mul ecx
mov eax, edi
mov esi, edx
mov edx, 0x88888888
mul edx
mov edi, eax
mov dword [ebp - 0x1064], edx
mov eax, dword [ebp - 0x101c]
mul ecx
mov dword [ebp - 0x1014], edx
mov ecx, eax
mov eax, dword [ebp - 0x101c]
mov edx, 0x88888888
mul edx
add ecx, esi
mov dword [ebp - 0x1074], edx
mov edx, dword [ebp - 0x1014]
adc edx, 0
mov dword [ebp - 0x1010], eax
add edi, ecx
mov ecx, dword [ebp - 0x1064]
adc ecx, 0
xor eax, eax
add edx, ecx
mov ecx, dword [ebp - 0x1010]
adc eax, eax
add ecx, edx
mov edx, dword [ebp - 0x1074]
adc edx, eax
mov eax, dword [ebp - 0x1024]
shrd ecx, edx, 4
push str.You_gained_a_skill_level__
shr edx, 4
add ecx, 1
mov dword [eax + 8], ecx
adc edx, 0
mov dword [eax + 0xc], edx
lea eax, [ebp - 0x418]
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov ecx, dword [ebp - 0x106c]
imul eax, dword [ecx + 0x188], 0x980
movss xmm0, dword [eax + ecx + 0x300]
addss xmm0, dword [0x5d6d9c]
jmp 0x47167f
mov ecx, dword [ebp - 0x103c]
mov eax, dword [ecx + 0x11c]
mov dword [ebp - 0x1044], eax
cmp byte [eax + 8], 0
je 0x478692
mov eax, dword [eax]
sub eax, 7
cmp eax, 2
ja 0x478a13
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 0x47b56d
mov edx, dword [ebp - 0x1050]
test edx, edx
js 0x478a13
cmp dword [ebp - 0x1034], edx
je 0x4786ce
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 0x47b56d
mov eax, dword [eax + 4]
add eax, dword [ebp - 0x107c]
push eax
lea eax, [ebp - 0x418]
push str.Task_difficulty_is__d.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.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.0043d380
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 0x47890d
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 0x47881c
nop dword [eax + eax]
cmp dword [esi + 0x110], 0xf
jne 0x4787fd
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 0x4787d0
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 0x478843
sqrtsd xmm0, xmm0
jmp 0x478848
call fcn.00595ca0
cvtsd2ss xmm0, xmm0
lea ecx, [edi + 0xa]
movss dword [edi + 0x40], xmm0
call fcn.00515400
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.00515370
mov eax, dword [ebp - 0x1050]
cmp eax, 7
ja case.0x47887c.0
jmp dword [eax*4 + 0x47b5c8]
mov dword [edi], 8
mov eax, str.Mage_Stat
jmp 0x4788a8
mov dword [edi], 9
mov eax, str.Crea_Stat
jmp 0x4788a8
mov dword [edi], 7
mov eax, str.Phys_Stat
push eax
mov eax, dword [edi + 4]
lea eax, [eax + eax*2]
lea eax, [eax*4 + str.Wood]
push eax
mov eax, dword [ebp - 0x103c]
add eax, 8
push str._s__s_Totem
push eax
call fcn.0043d380
mov esi, dword [ebp - 0x1024]
add esp, 0x10
mov ecx, dword [ebp - 0x107c]
sub ecx, dword [esi + 8]
mov eax, ecx
cdq
xor eax, edx
sub eax, edx
cmp eax, 8
jge 0x478960
inc ecx
mov eax, 1
cmp ecx, eax
cmovge eax, ecx
mov ecx, dword [0x630ad0]
imul eax, dword [ecx + 0xa8]
cdq
add dword [esi], eax
adc dword [esi + 4], edx
jmp 0x478960
lea eax, [ebp - 0x418]
push str.The_attempt_fails.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.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 0x47b586
jb 0x47899e
cmp esi, edi
ja 0x47b586
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 0x4785da
push ecx
movss dword [esp], xmm1
push dword [ebp - 0x1034]
push ecx
call fcn.0052fc50
mov ecx, dword [ebp - 0x1044]
add esp, 4
mov dword [ebp - 0x1014], eax
lea eax, [ebp - 0x418]
movd xmm0, dword [ecx + 4]
cvtdq2ps xmm0, xmm0
cvtps2pd xmm0, xmm0
movsd qword [esp], xmm0
push str.Task_difficulty_is__4.2f.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.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.0043d380
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.0052fcc0
mov ecx, dword [0x630ad0]
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 0x478c1e
sub eax, 1
je 0x478bcc
sub eax, 1
jne 0x478cb2
lea eax, [ebp - 0x418]
push str.The_attempt_destroys_the_totem.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.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 0x478cb8
lea eax, [ebp - 0x418]
push str.The_magic_fails_to_imbue_the_totem.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.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 0x478cb2
lea eax, [ebp - 0x418]
push str.The_magic_infuses_the_totem_
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.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.0052fcf0
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.00483cb0
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 0x478cff
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 0x478cd3
mov eax, dword [eax + 4]
mov esi, dword [ebp - 0x1028]
add eax, 0xa
cmp dword [ebp - 0x101c], eax
jle 0x478d83
test ecx, ecx
je 0x478d83
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 0x47b586
jb 0x478da2
cmp edx, 0x64
jae 0x47b586
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 0x47b586
jb 0x478dd8
cmp ecx, edi
ja 0x47b586
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 0x4785da
push str.BUG:_Cannot_find_skill_for_magic.
jmp 0x47b53e
push str.Put_a_totem_in_your_workbench.
jmp 0x47b53e
push str.No_combining_happened.
jmp 0x47b53e
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 0x479419
nop dword [eax + eax]
mov esi, dword [ebp - 0x107c]
lea eax, [edi + 0x260]
mov dword [ebp - 0x1020], esi
mov ecx, 0x5d5594
nop word [eax + eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x1024]
jne 0x479002
cmp byte [ebp - 0x1009], 0
je 0x478ffe
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x1024]
jne 0x479002
add eax, 2
add ecx, 2
cmp byte [ebp - 0x1009], 0
jne 0x478fc0
xor eax, eax
jmp 0x479007
sbb eax, eax
or eax, 1
test eax, eax
je 0x479098
cmp dword [edx + 0x110], 8
jne 0x479098
mov eax, dword [edx + 0x11c]
mov ecx, dword [eax]
test ecx, ecx
js 0x470663
cmp ecx, 0x10
jg 0x470663
lea eax, [ecx - 5]
cmp eax, 8
ja 0x47906d
cmp byte [ebp - 0x1085], 0
jne 0x470627
cmp dword [edx + 0x118], 1
jne 0x470627
inc dword [ebp + ecx*4 - 0xea8]
inc dword [ebp - 0x1050]
mov byte [ebp - 0x1085], 1
jmp 0x479098
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 0x479098
add eax, esi
lea eax, [eax + esi*2]
mov dword [ebp - 0x1050], eax
mov ecx, 0x5d5594
lea eax, [edi + 0x260]
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x1024]
jne 0x4790e5
cmp byte [ebp - 0x1009], 0
je 0x4790e1
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x1024]
jne 0x4790e5
add eax, 2
add ecx, 2
cmp byte [ebp - 0x1009], 0
jne 0x4790a3
xor eax, eax
jmp 0x4790ea
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4791f6
cmp dword [edx + 0x110], 0xe
jne 0x4791f6
mov ecx, dword [ebp - 0x1044]
mov eax, dword [edx + 0x11c]
test ecx, ecx
js 0x479118
cmp dword [eax + 4], ecx
jne 0x47948b
mov ecx, dword [eax + 8]
test ecx, ecx
jle 0x479135
cmp byte [ebp - 0x1045], 0
jne 0x479135
cmp dword [ebp - 0x1034], 0
jg 0x4794c7
movss xmm0, dword [eax + 0x34]
comiss xmm0, dword [0x5d3044]
jbe 0x47914b
test ecx, ecx
jg 0x479503
cmp ecx, 1
jge 0x47915d
cmp byte [ebp - 0x1045], 0
jne 0x4794c7
cmp dword [ebp - 0x1040], 0xffffffff
jle 0x47917a
mov edi, dword [ebp - 0x1040]
cmp dword [eax], edi
mov edi, dword [ebp - 0x106c]
jne 0x47953f
test ecx, ecx
jle 0x4791d0
cmp dword [eax], 0xd
jl 0x47957b
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 0x479219
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 0x479219
mov eax, dword [ebp - 0x1080]
add eax, dword [edx + 0x118]
mov dword [ebp - 0x1080], eax
mov dword [ebp - 0x104c], edx
mov ecx, 0x5d5594
lea eax, [edi + 0x260]
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x1024]
jne 0x479266
cmp byte [ebp - 0x1009], 0
je 0x479262
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x1024]
jne 0x479266
add eax, 2
add ecx, 2
cmp byte [ebp - 0x1009], 0
jne 0x479224
xor eax, eax
jmp 0x47926b
sbb eax, eax
or eax, 1
test eax, eax
je 0x4793ea
cmp esi, 4
jne 0x4793ea
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 0x4793a0
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 0x479370
test dl, dl
je 0x47936c
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x479370
add ecx, 2
add eax, 2
test dl, dl
jne 0x479350
xor eax, eax
jmp 0x479375
sbb eax, eax
or eax, 1
mov ecx, dword [ebp - 0x101c]
mov edx, dword [ebp - 0x1024]
test eax, eax
jne 0x4793a2
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 0x4793a2
je 0x4793ae
inc esi
cmp esi, 0x14
jl 0x479320
jmp 0x4793ea
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.0043d380
mov eax, dword [ebp - 0x1064]
add esp, 8
mov ecx, dword [ebp - 0x101c]
cvttss2si eax, dword [eax + 0x10]
mov dword [ebp + eax*4 - 0xe6c], ecx
imul eax, dword [edi + 0x188], 0x980
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e0d0
mov edx, eax
mov dword [ebp - 0x1024], eax
test edx, edx
jne 0x478fa0
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 0x47b539
mov esi, eax
nop word [eax + eax]
mov ecx, esi
call fcn.0044c8e0
mov ecx, 0x5d5518
nop dword [eax]
mov dl, byte [ecx]
cmp dl, byte [eax]
jne 0x4795b7
test dl, dl
je 0x479484
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x4795b7
add ecx, 2
add eax, 2
test dl, dl
jne 0x479460
xor eax, eax
jmp 0x4795bc
lea eax, [ebp - 0x418]
push str.You_can_only_have_one_quality_of_staff_when_making_a_scythe.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov eax, dword [ebp - 0x1028]
mov ecx, dword [eax + 0x11c]
jmp 0x47b56a
lea eax, [ebp - 0x418]
push str.Cant_mix_imbued_and_unimbued_staffs.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov eax, dword [ebp - 0x1028]
mov ecx, dword [eax + 0x11c]
jmp 0x47b56a
lea eax, [ebp - 0x418]
push str.Cant_use_an_imperfect_staff.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov eax, dword [ebp - 0x1028]
mov ecx, dword [eax + 0x11c]
jmp 0x47b56a
lea eax, [ebp - 0x418]
push str.Cant_mix_different_imbued_staffs.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov eax, dword [ebp - 0x1028]
mov ecx, dword [eax + 0x11c]
jmp 0x47b56a
lea eax, [ebp - 0x418]
push str.Only_taming_staffs_may_be_used_inbued.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov eax, dword [ebp - 0x1028]
mov ecx, dword [eax + 0x11c]
jmp 0x47b56a
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4795cc
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 0x479450
mov eax, dword [ebp - 0x1064]
mov esi, dword [ebp - 0x1028]
test eax, eax
je 0x47b539
cmp dword [eax + 0xc], 0
ja 0x47961b
jb 0x479611
cmp dword [eax + 8], 0x14
jae 0x47961b
push str.You_must_first_reach_level_20_in_your_Swordsmith_skill.
jmp 0x47b53e
mov eax, dword [ebp - 0x104c]
test eax, eax
je 0x47b532
cmp dword [ebp - 0x1080], 1
jl 0x47b532
mov eax, dword [eax + 0x11c]
mov dword [ebp - 0x1064], eax
cmp dword [eax + 0x3c], 0
jne 0x47b532
movss xmm0, dword [0x5d6e38]
comiss xmm0, dword [eax + 8]
jbe 0x479664
push str.The_sacrifical_blade_is_not_big_enough.
jmp 0x47b53e
mov ecx, 0x5d5594
lea eax, [edi + 0x260]
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x479690
test dl, dl
je 0x47968c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x479690
add eax, 2
add ecx, 2
test dl, dl
jne 0x479670
xor eax, eax
jmp 0x479695
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 0x47990e
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 0x47987c
push str.The_sacrifical_blade_is_not_a_proper_greatsword.
jmp 0x47b53e
mov edx, dword [ebp - 0x107c]
test edx, edx
jle 0x4798a2
cmp dword [ecx + 0x34], 1
jge 0x479896
push str.The_sacrifical_blade_does_not_have_any_Gold_Dust.
jmp 0x47b53e
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, 0x5d5594
lea eax, [edi + 0x260]
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x479940
test dl, dl
je 0x47993c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x479940
add eax, 2
add ecx, 2
test dl, dl
jne 0x479920
xor eax, eax
jmp 0x479945
sbb eax, eax
or eax, 1
movss xmm1, dword [0x5d4b6c]
test eax, eax
jne 0x47997d
mov eax, dword [ebp - 0x103c]
movss xmm0, dword [0x5d3048]
inc eax
imul eax, dword [ebp - 0x1030]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
comiss xmm0, xmm1
jbe 0x4799b8
push str.Please_use_both_a_staff_and_a_greatsword.
jmp 0x47b53e
mov eax, dword [ebp - 0x1030]
cmp eax, 0x20
jle 0x4799b0
add eax, 0xffffffe0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm1, xmm0
addss xmm1, dword [0x5d3048]
mulss xmm1, dword [ebp - 0x1038]
addss xmm1, dword [ebp - 0x1038]
jmp 0x4799b8
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 [0x5d3bd8]
xor esi, esi
mov dword [ebp - 0x1034], 0xffffffff
xor edx, edx
mov ecx, 0x5d5594
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 0x479a39
cmp byte [ebp - 0x1009], dl
je 0x479a35
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x1009], dl
mov edx, esi
jne 0x479a39
add eax, 2
add ecx, 2
cmp byte [ebp - 0x1009], dl
jne 0x479a01
xor eax, eax
jmp 0x479a3e
sbb eax, eax
or eax, 1
test eax, eax
je 0x479b37
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 0x479a99
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 0x479a60
mov edi, dword [ebp - 0x106c]
xor edx, edx
mov esi, dword [ebp - 0x1050]
jmp 0x479b43
mov esi, dword [ebp - 0x103c]
mov dword [ebp - 0x1050], esi
test esi, esi
jns 0x479b83
lea eax, [ebp - 0x418]
push str.Use_ingots_to_make_weapons.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov eax, dword [ebp - 0x1028]
mov ecx, dword [eax + 0x11c]
jmp 0x47b56a
mov ecx, 0x5d5594
lea eax, [edi + 0x260]
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x1009], dl
mov edx, 0
jne 0x479bce
cmp byte [ebp - 0x1009], dl
je 0x479bca
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x1009], dl
mov edx, 0
jne 0x479bce
add eax, 2
add ecx, 2
cmp byte [ebp - 0x1009], dl
jne 0x479b90
xor eax, eax
jmp 0x479bd3
sbb eax, eax
or eax, 1
test eax, eax
je 0x479c9c
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 0x479c1e
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 0x479bf7
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 0x47b4f9
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 0x479d00
test dl, dl
je 0x479cfc
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x479d00
add ecx, 2
add eax, 2
test dl, dl
jne 0x479ce0
xor eax, eax
jmp 0x479d05
sbb eax, eax
or eax, 1
test eax, eax
jne 0x479d15
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 0x479cd0
mov esi, dword [ebp - 0x1020]
test esi, esi
je 0x47b4f9
call fcn.00568dab
mov ecx, edi
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x5d6dd0]
divss xmm0, dword [0x5d6e8c]
addss xmm0, dword [0x5d6d9c]
movss dword [ebp - 0x1064], xmm0
call fcn.0047bee0
push dword [esi + 0xc]
cdq
push dword [esi + 8]
push edx
push eax
call fcn.0055a830
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.00559aa0
mov esi, dword [ebp - 0x1028]
mov ecx, 0x631538
cvtsd2ss xmm0, xmm0
push esi
push 1
mulss xmm0, dword [ebp - 0x1064]
movss dword [ebp - 0x1024], xmm0
call fcn.0052fb80
test eax, eax
je 0x479dfe
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.00530650
test eax, eax
je 0x479dfe
movss xmm0, dword [ebp - 0x1024]
mulss xmm0, dword [0x5d6db4]
movss dword [ebp - 0x1024], xmm0
push esi
push 0
mov ecx, 0x631538
call fcn.0052fb80
test eax, eax
je 0x479e44
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.00530650
test eax, eax
je 0x479e44
movss xmm0, dword [ebp - 0x1024]
mulss xmm0, dword [0x5d6db4]
movss dword [ebp - 0x1024], xmm0
push esi
push 2
mov ecx, 0x631538
call fcn.0052fb80
test eax, eax
je 0x479e8c
imul eax, dword [edi + 0x188], 0x980
mov ecx, esi
add eax, 0x2a0
add eax, edi
push eax
call fcn.00530650
movss xmm1, dword [ebp - 0x1024]
test eax, eax
je 0x479e94
mulss xmm1, dword [0x5d6db4]
movss dword [ebp - 0x1024], xmm1
jmp 0x479e94
movss xmm1, dword [ebp - 0x1024]
mov eax, dword [edi + 0x14f60]
test eax, eax
jle 0x479ec1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x5d6d8c]
addss xmm0, dword [0x5d3048]
mulss xmm0, xmm1
movss dword [ebp - 0x1024], xmm0
movss xmm0, dword [ebp - 0x1038]
lea eax, [ebp - 0x418]
cvtps2pd xmm0, xmm0
sub esp, 8
movsd qword [esp], xmm0
push str.Task_difficulty_is__4.2f.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.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.0043d380
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 0x47b15d
call fcn.0044e020
mov esi, eax
test esi, esi
je 0x47a0b4
nop dword [eax]
mov ecx, 0x5d5594
lea eax, [edi + 0x260]
nop dword [eax + eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x479ff0
test dl, dl
je 0x479fec
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x479ff0
add eax, 2
add ecx, 2
test dl, dl
jne 0x479fd0
xor eax, eax
jmp 0x479ff5
sbb eax, eax
or eax, 1
mov ecx, dword [esi + 0x110]
test eax, eax
je 0x47a064
cmp ecx, 4
jne 0x47a039
mov eax, dword [esi + 0x118]
cmp eax, 0x20
jle 0x47a01d
add eax, 0xffffffe0
mov dword [esi + 0x118], eax
jmp 0x47a091
imul eax, dword [edi + 0x188], 0x980
push esi
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e210
jmp 0x47a087
cmp ecx, 8
jne 0x47a091
mov ecx, dword [esi + 0x118]
cmp ecx, 1
jle 0x47a01d
mov eax, dword [esi + 0x11c]
mov eax, dword [eax]
sub eax, 5
cmp eax, 8
ja 0x47a01d
lea eax, [ecx - 1]
mov dword [esi + 0x118], eax
jmp 0x47a091
cmp ecx, 0xe
jne 0x47a091
imul eax, dword [edi + 0x188], 0x980
push esi
mov ecx, dword [eax + edi + 0x2dc]
add ecx, 8
call fcn.0044e210
test esi, esi
je 0x47a091
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 0x479fc0
mov edi, dword [ebp - 0x102c]
mov ecx, 0x5d5594
mov eax, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x47a0e1
test dl, dl
je 0x47a0dd
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x47a0e1
add eax, 2
add ecx, 2
test dl, dl
jne 0x47a0c1
xor eax, eax
jmp 0x47a0e6
sbb eax, eax
or eax, 1
test eax, eax
je 0x47a17f
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 0x47a16b
push ecx
push 0x5d30e0
push eax
call fcn.0043dd20
lea ecx, [ebp - 0x418]
add esp, 0xc
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x47a128
sub ecx, edx
lea eax, [ebp - 0x418]
add eax, ecx
push str.__WXZQPNS
push eax
call fcn.0043d380
lea ecx, [ebp - 0x418]
add esp, 8
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x47a150
sub ecx, edx
shl esi, 6
lea eax, [ebp - 0x918]
add eax, esi
lea ecx, [ebp + ecx - 0x418]
push ecx
push 0x5d30e0
push eax
call fcn.0043dd20
add esp, 0xc
jmp 0x47a21c
lea eax, [ebp - 0x418]
push eax
imul eax, dword [ebp - 0x1050], 0x13
push 0x5d30e0
add eax, 0x613240
push eax
call fcn.0043dd20
mov esi, dword [ebp - 0x1014]
add esp, 0xc
test esi, esi
jle 0x47a208
lea ecx, [ebp - 0x418]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x47a1b3
sub ecx, edx
lea eax, [ebp - 0x418]
add eax, ecx
push 0x5d58bc
push eax
call fcn.0043d380
lea ecx, [ebp - 0x418]
add esp, 8
lea edx, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x47a1e0
mov eax, esi
sub ecx, edx
shl eax, 4
lea eax, [eax + str.Fire]
add eax, esi
push eax
lea eax, [ebp - 0x418]
add eax, ecx
push eax
call fcn.0043d380
add esp, 8
mov eax, dword [ebp - 0x1040]
cmp eax, 0xc
jle 0x47a21c
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 0x47a225
sub ecx, edx
lea eax, [ebp - 0x418]
add eax, ecx
push 0x5d58bc
push eax
call fcn.0043d380
add esp, 8
mov ecx, 0x5d5594
mov eax, edi
nop dword [eax + eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x47a270
test dl, dl
je 0x47a26c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x47a270
add eax, 2
add ecx, 2
test dl, dl
jne 0x47a250
xor eax, eax
jmp 0x47a275
sbb eax, eax
or eax, 1
test eax, eax
je 0x47a2af
mov edx, dword [ebp - 0x1030]
xor ecx, ecx
lea eax, [ecx + ecx*8]
cmp dword [eax*8 + 0x612be0], edx
jg 0x47a299
mov eax, 3
inc ecx
cmp ecx, eax
jl 0x47a281
jmp 0x47a29c
lea eax, [ecx - 1]
xor esi, esi
test eax, eax
cmovns esi, eax
cmp esi, 2
jle 0x47a2b5
mov esi, 2
jmp 0x47a2b5
mov esi, dword [ebp - 0x1044]
mov ecx, 0x5d5538
mov eax, edi
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x47a2e0
test dl, dl
je 0x47a2dc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x47a2e0
add eax, 2
add ecx, 2
test dl, dl
jne 0x47a2c0
xor eax, eax
jmp 0x47a2e5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47a308
lea ecx, [ebp - 0x418]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x47a2f2
lea eax, [esi + esi*8]
lea eax, [eax*8 + str.Tanto]
jmp 0x47a493
mov ecx, 0x5d5584
mov eax, edi
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x47a330
test dl, dl
je 0x47a32c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x47a330
add eax, 2
add ecx, 2
test dl, dl
jne 0x47a310
xor eax, eax
jmp 0x47a335
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47a358
lea ecx, [ebp - 0x418]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x47a342
lea eax, [esi + esi*8]
lea eax, [eax*8 + str.Talon]
jmp 0x47a493
mov ecx, 0x5d554c
mov eax, edi
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x47a380
test dl, dl
je 0x47a37c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x47a380
add eax, 2
add ecx, 2
test dl, dl
jne 0x47a360
xor eax, eax
jmp 0x47a385
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47a3a8
lea ecx, [ebp - 0x418]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x47a392
lea eax, [esi + esi*8]
lea eax, [eax*8 + str.Chaos_Knife]
jmp 0x47a493
mov ecx, 0x5d556c
mov eax, edi
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x47a3d0
test dl, dl
je 0x47a3cc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x47a3d0
add eax, 2
add ecx, 2
test dl, dl
jne 0x47a3b0
xor eax, eax
jmp 0x47a3d5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47a3f8
lea ecx, [ebp - 0x418]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x47a3e2
lea eax, [esi + esi*8]
lea eax, [eax*8 + str.Edgestaff]
jmp 0x47a493
mov ecx, 0x5d555c
mov eax, edi
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x47a420
test dl, dl
je 0x47a41c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x47a420
add eax, 2
add ecx, 2
test dl, dl
jne 0x47a400
xor eax, eax
jmp 0x47a425
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47a445
lea ecx, [ebp - 0x418]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x47a432
lea eax, [esi + esi*8]
lea eax, [eax*8 + str.Small_Mace]
jmp 0x47a493
mov ecx, 0x5d5594
mov eax, edi
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x47a470
test dl, dl
je 0x47a46c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x47a470
add eax, 2
add ecx, 2
test dl, dl
jne 0x47a450
xor eax, eax
jmp 0x47a475
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47a4a7
lea ecx, [ebp - 0x418]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x47a482
lea eax, [esi + esi*8]
lea eax, [eax*8 + str.Pine_Scythe]
push eax
sub ecx, edx
lea eax, [ebp - 0x418]
add eax, ecx
push eax
call fcn.0043d380
add esp, 8
push 0x120
call fcn.005596ac
add esp, 4
mov dword [ebp - 0x1014], eax
mov byte [ebp - 4], 2
test eax, eax
je 0x47a4d6
lea ecx, [ebp - 0x418]
push ecx
push 0
push 1
mov ecx, eax
call fcn.0050ce40
jmp 0x47a4d8
xor eax, eax
mov edi, dword [eax + 0x11c]
mov ecx, 0x5d5594
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 0x47a542
cmp byte [ebp - 0x1009], 0
je 0x47a53e
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x102c]
jne 0x47a542
add eax, 2
add ecx, 2
cmp byte [ebp - 0x1009], 0
jne 0x47a500
xor eax, eax
jmp 0x47a547
sbb eax, eax
or eax, 1
test eax, eax
je 0x47a5a0
movd xmm0, dword [ebp - 0x1030]
lea eax, [esi + esi*8]
movd xmm1, dword [eax*8 + 0x612be4]
cvtdq2ps xmm1, xmm1
mov esi, dword [ebp - 0x104c]
cvtdq2ps xmm0, xmm0
mulss xmm1, dword [ebp - 0x10a0]
divss xmm1, xmm0
mulss xmm1, dword [0x5d3bb4]
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 0x47a5ae
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 [0x5d4b70]
cvtps2pd xmm0, xmm0
addsd xmm0, qword [0x5d3050]
cvtpd2ps xmm1, xmm0
comiss xmm1, dword [0x5d3bd8]
movss dword [edi + 8], xmm1
movaps xmm0, xmm1
jbe 0x47a695
mov ecx, 0x5d5594
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 0x47a652
cmp byte [ebp - 0x1009], 0
je 0x47a64e
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x102c]
jne 0x47a652
add eax, 2
add ecx, 2
cmp byte [ebp - 0x1009], 0
jne 0x47a610
xor eax, eax
jmp 0x47a657
sbb eax, eax
or eax, 1
movaps xmm0, xmm1
test eax, eax
jne 0x47a695
mulss xmm1, dword [0x5d4b6c]
cvttss2si eax, xmm1
movss xmm1, dword [0x5d6e54]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm0, dword [0x5d3074]
comiss xmm0, xmm1
movss dword [edi + 8], xmm0
jbe 0x47a695
mov dword [edi + 8], 0x41c80000
movaps xmm0, xmm1
mov ecx, 0x5d5594
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 0x47a6e2
cmp byte [ebp - 0x1009], 0
je 0x47a6de
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x102c]
jne 0x47a6e2
add eax, 2
add ecx, 2
cmp byte [ebp - 0x1009], 0
jne 0x47a6a0
xor eax, eax
jmp 0x47a6e7
sbb eax, eax
or eax, 1
test eax, eax
je 0x47a6f8
mulss xmm0, dword [0x5d6da4]
movss dword [edi + 8], xmm0
mov ecx, 0x5d5594
mov eax, edx
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x102c]
jne 0x47a742
cmp byte [ebp - 0x1009], 0
je 0x47a73e
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x102c]
jne 0x47a742
add eax, 2
add ecx, 2
cmp byte [ebp - 0x1009], 0
jne 0x47a700
xor eax, eax
jmp 0x47a747
sbb eax, eax
or eax, 1
test eax, eax
je 0x47a85f
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 0x47aa00
mov eax, dword [ebp - 0x1044]
test eax, eax
jne 0x47a86e
lea ecx, [eax + 1]
jmp 0x47a8a7
cmp eax, 1
jne 0x47a878
lea ecx, [eax + 1]
jmp 0x47a8a7
cmp eax, 2
jne 0x47a882
lea ecx, [eax + 2]
jmp 0x47a8a7
cmp eax, 3
jne 0x47a88c
lea ecx, [eax + 5]
jmp 0x47a8a7
cmp eax, 4
jne 0x47a896
lea ecx, [eax + 0xc]
jmp 0x47a8a7
mov ecx, dword [ebp - 0x1014]
cmp eax, 5
mov eax, 0x20
cmove ecx, eax
mov eax, dword [ebp - 0x103c]
test eax, eax
jne 0x47a8c4
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x40]
add eax, ecx
mov dword [edi + 0x40], eax
jmp 0x47aa03
cmp eax, 1
jne 0x47a8dc
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x44]
add eax, ecx
mov dword [edi + 0x44], eax
jmp 0x47aa03
cmp eax, 2
jne 0x47a8f4
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x48]
add eax, ecx
mov dword [edi + 0x48], eax
jmp 0x47aa03
cmp eax, 3
jne 0x47a90c
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x4c]
add eax, ecx
mov dword [edi + 0x4c], eax
jmp 0x47aa03
cmp eax, 4
jne 0x47a924
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x50]
add eax, ecx
mov dword [edi + 0x50], eax
jmp 0x47aa03
cmp eax, 5
jne 0x47a93c
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x54]
add eax, ecx
mov dword [edi + 0x54], eax
jmp 0x47aa03
cmp eax, 6
jne 0x47a954
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x58]
add eax, ecx
mov dword [edi + 0x58], eax
jmp 0x47aa03
cmp eax, 7
jne 0x47a96c
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x5c]
add eax, ecx
mov dword [edi + 0x5c], eax
jmp 0x47aa03
cmp eax, 8
jne 0x47a984
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x60]
add eax, ecx
mov dword [edi + 0x60], eax
jmp 0x47aa03
cmp eax, 9
jne 0x47a99c
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x64]
add eax, ecx
mov dword [edi + 0x64], eax
jmp 0x47aa03
cmp eax, 0xa
jne 0x47a9b1
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x68]
add eax, ecx
mov dword [edi + 0x68], eax
jmp 0x47aa03
cmp eax, 0xb
jne 0x47a9c6
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x6c]
add eax, ecx
mov dword [edi + 0x6c], eax
jmp 0x47aa03
cmp eax, 0xc
jne 0x47a9db
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x70]
add eax, ecx
mov dword [edi + 0x70], eax
jmp 0x47aa03
cmp eax, 0xd
jne 0x47a9f0
mov eax, dword [esi + 0x11c]
mov eax, dword [eax + 0x74]
add eax, ecx
mov dword [edi + 0x74], eax
jmp 0x47aa03
cmp eax, 0xe
jne 0x47aa03
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, 0x5d5594
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 0x47aa62
cmp byte [ebp - 0x1009], 0
je 0x47aa5e
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x102c]
jne 0x47aa62
add eax, 2
add ecx, 2
cmp byte [ebp - 0x1009], 0
jne 0x47aa20
xor eax, eax
jmp 0x47aa67
sbb eax, eax
or eax, 1
test eax, eax
je 0x47aa99
movd xmm1, esi
cvtdq2pd xmm1, xmm1
movd xmm0, dword [edi]
divsd xmm1, qword [0x5d6e40]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm1
addsd xmm1, qword [0x5d6e10]
mulsd xmm1, xmm0
cvttsd2si eax, xmm1
mov dword [edi], eax
mov ecx, 0x5d5538
mov eax, edx
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x102c]
jne 0x47aae2
cmp byte [ebp - 0x1009], 0
je 0x47aade
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x102c]
jne 0x47aae2
add eax, 2
add ecx, 2
cmp byte [ebp - 0x1009], 0
jne 0x47aaa0
xor eax, eax
jmp 0x47aae7
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47aafb
mov dword [edi + 0x3c], 1
add dword [edi + 4], 0x14
jmp 0x47acc3
mov ecx, 0x5d5584
mov eax, edx
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x102c]
jne 0x47ab44
cmp byte [ebp - 0x1009], 0
je 0x47ab40
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x102c]
jne 0x47ab44
add eax, 2
add ecx, 2
cmp byte [ebp - 0x1009], 0
jne 0x47ab02
xor eax, eax
jmp 0x47ab49
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47ab59
mov dword [edi + 0x3c], 4
jmp 0x47acc3
mov ecx, 0x5d554c
mov eax, edx
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x102c]
jne 0x47aba2
cmp byte [ebp - 0x1009], 0
je 0x47ab9e
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x102c]
jne 0x47aba2
add eax, 2
add ecx, 2
cmp byte [ebp - 0x1009], 0
jne 0x47ab60
xor eax, eax
jmp 0x47aba7
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47abb7
mov dword [edi + 0x3c], 3
jmp 0x47acc3
mov ecx, 0x5d556c
mov eax, edx
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x102c]
jne 0x47ac02
cmp byte [ebp - 0x1009], 0
je 0x47abfe
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x102c]
jne 0x47ac02
add eax, 2
add ecx, 2
cmp byte [ebp - 0x1009], 0
jne 0x47abc0
xor eax, eax
jmp 0x47ac07
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47ac17
mov dword [edi + 0x3c], 5
jmp 0x47acc3
mov ecx, 0x5d5594
mov eax, edx
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x102c]
jne 0x47ac62
cmp byte [ebp - 0x1009], 0
je 0x47ac5e
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
mov byte [ebp - 0x1009], dl
mov edx, dword [ebp - 0x102c]
jne 0x47ac62
add eax, 2
add ecx, 2
cmp byte [ebp - 0x1009], 0
jne 0x47ac20
xor eax, eax
jmp 0x47ac67
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47ac82
mov eax, dword [ebp - 0x1040]
add eax, 6
mov dword [edi + 0x3c], eax
mov eax, dword [ebp - 0x107c]
mov dword [edi + 0x38], eax
jmp 0x47acc3
mov ecx, 0x5d555c
mov eax, edx
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x47acb0
test dl, dl
je 0x47acac
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x47acb0
add eax, 2
add ecx, 2
test dl, dl
jne 0x47ac90
xor eax, eax
jmp 0x47acb5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47acc3
mov dword [edi + 0x3c], 2
add dword [edi], 0x1e
movss xmm0, dword [ebp - 0x10a4]
mov eax, dword [ebp - 0x1050]
mulss xmm0, dword [0x5d6dcc]
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, 0x5d5594
mov dword [edi + 0x18], eax
mov eax, dword [ebp - 0x102c]
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x47ad50
test dl, dl
je 0x47ad4c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x47ad50
add eax, 2
add ecx, 2
test dl, dl
jne 0x47ad30
xor eax, eax
jmp 0x47ad55
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47ad7d
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.0x47aea7.1
mov eax, ecx
cmp esi, 0xffffffff
jle 0x47af38
mov edi, eax
cmp esi, 4
ja case.0x47aea7.1
jmp dword [esi*4 + 0x47b5e8]
mov ecx, dword [ebp - 0x1034]
mov edx, 0x11
mov eax, edi
mov dword [ecx + 0x1c], 0x11
jmp 0x47af1b
mov ecx, dword [ebp - 0x1034]
mov edx, 0x15
mov eax, edi
mov dword [ecx + 0x1c], 0x15
jmp 0x47af1b
mov ecx, dword [ebp - 0x1034]
mov edx, 9
mov eax, edi
mov dword [ecx + 0x1c], 9
jmp 0x47af1b
mov ecx, dword [ebp - 0x1034]
mov edx, 0xd
mov eax, edi
mov dword [ecx + 0x1c], 0xd
jmp 0x47af1b
mov ecx, dword [ebp - 0x1034]
mov edx, 1
mov dword [ecx + 0x1c], 1
cmp eax, 1
jle 0x47af24
inc edx
mov dword [ecx + 0x1c], edx
cmp eax, 4
jle 0x47af2d
inc edx
mov dword [ecx + 0x1c], edx
cmp eax, 9
jle 0x47af38
lea eax, [edx + 1]
mov dword [ecx + 0x1c], eax
mov eax, 5
nop dword [eax]
cmp dword [ebp + eax*4 - 0xea8], 0
jg 0x47af55
inc eax
or ecx, 0xffffffff
cmp eax, 0xd
jle 0x47af40
jmp 0x47af58
lea ecx, [eax - 5]
mov esi, dword [ebp - 0x1034]
cmp ecx, 0xffffffff
jle 0x47af7c
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, 0x5d5594
mov eax, edi
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x47afb0
test dl, dl
je 0x47afac
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x47afb0
add eax, 2
add ecx, 2
test dl, dl
jne 0x47af90
xor eax, eax
jmp 0x47afb5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x47afd0
mov eax, dword [ebp - 0x104c]
mov eax, dword [eax + 0x11c]
mov eax, dword [eax + 0x1c]
cmp eax, 0x19
jl 0x47afd0
mov dword [esi + 0x1c], eax
lea eax, [ebp - 0x418]
push str.You_have_created_a
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.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 0x5d58d4
push eax
call fcn.0043d380
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.004832a0
imul ecx, dword [edi + 0x188], 0x980
push dword [ebp - 0x1050]
mov ecx, dword [ecx + edi + 0x2d8]
call fcn.0050da90
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 0x47b273
nop
cmp dword [esi + 0x110], 1
jne 0x47b139
cmp dword [ebp - 0x104c], esi
jne 0x47b139
mov eax, dword [esi + 0x118]
cmp eax, 1
jne 0x47b132
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 0x47b139
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 0x47b0f0
jmp 0x47b273
call fcn.0044e020
mov esi, eax
test esi, esi
je 0x47b273
movss xmm0, dword [ebp - 0x1024]
divss xmm0, dword [ebp - 0x1038]
movss dword [ebp - 0x1014], xmm0
call fcn.00568dab
movd xmm0, eax
cvtdq2ps xmm0, xmm0
divss xmm0, dword [0x5d6e8c]
addss xmm0, dword [0x5d3044]
comiss xmm0, dword [ebp - 0x1014]
jbe 0x47b250
mov eax, dword [esi + 0x110]
cmp eax, 4
je 0x47b20f
cmp eax, 8
jne 0x47b250
mov eax, dword [esi + 0x11c]
mov eax, dword [eax]
cmp eax, 5
jl 0x47b20f
add eax, 0xfffffffb
cmp eax, 0xa
ja 0x47b250
call fcn.00568dab
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x5d3bd8]
divss xmm0, dword [0x5d6e8c]
addss xmm0, dword [0x5d3044]
ucomiss xmm0, dword [0x5d3058]
lahf
test ah, 0x44
jp 0x47b250
cmp dword [esi + 0x110], 1
je 0x47b250
mov eax, dword [esi + 0x118]
cmp eax, 1
jle 0x47b22c
dec eax
mov dword [esi + 0x118], eax
jmp 0x47b250
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 0x47b184
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 0x47b586
jb 0x47b2a0
cmp eax, 0x5dc
jae 0x47b586
movss xmm1, dword [ebp - 0x1024]
movaps xmm0, xmm1
movss xmm2, dword [ebp - 0x1038]
divss xmm0, dword [0x5d6e5c]
comiss xmm2, xmm0
jbe 0x47b586
mov eax, dword [0x630ad0]
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.00559aa0
movss xmm1, dword [ebp - 0x1014]
cvtsd2ss xmm0, xmm0
addss xmm1, xmm0
xorps xmm0, xmm0
movlpd qword [ebp - 0x1078], xmm0
movss xmm0, dword [0x5d6e90]
comiss xmm1, xmm0
jb 0x47b331
subss xmm1, xmm0
comiss xmm0, xmm1
jbe 0x47b331
mov esi, dword [ebp - 0x1078]
mov eax, dword [ebp - 0x1074]
add esi, 0
adc eax, 0x80000000
jmp 0x47b33d
mov eax, dword [ebp - 0x1074]
mov esi, dword [ebp - 0x1078]
movaps xmm0, xmm1
mov dword [ebp - 0x1014], eax
call fcn.00559820
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.0055a830
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 0x47b586
jb 0x47b3ad
cmp eax, edi
ja 0x47b586
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.00559aa0
xorps xmm1, xmm1
ucomisd xmm1, xmm0
ja 0x47b43a
sqrtsd xmm0, xmm0
jmp 0x47b43f
call fcn.00595ca0
movaps xmm1, xmm0
xorps xmm0, xmm0
addsd xmm1, qword [0x5d3050]
movlpd qword [ebp - 0x1018], xmm0
movsd xmm0, qword [0x5d6e78]
comisd xmm1, xmm0
jb 0x47b484
subsd xmm1, xmm0
comisd xmm0, xmm1
jbe 0x47b484
mov esi, dword [ebp - 0x1018]
mov edi, dword [ebp - 0x1014]
add esi, 0
adc edi, 0x80000000
jmp 0x47b490
mov edi, dword [ebp - 0x1014]
mov esi, dword [ebp - 0x1018]
movaps xmm0, xmm1
call fcn.005599f0
mov ecx, dword [ebp - 0x1020]
add eax, esi
push str.You_gained_a_skill_level__
adc edx, edi
mov dword [ecx + 8], eax
lea eax, [ebp - 0x418]
push eax
mov dword [ecx + 0xc], edx
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov ecx, dword [ebp - 0x106c]
imul eax, dword [ecx + 0x188], 0x980
movss xmm0, dword [eax + ecx + 0x300]
addss xmm0, dword [0x5d46d8]
jmp 0x47167f
lea eax, [ebp - 0x418]
push str.BUG:_Cannot_find_skill_for_level.
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.0044cdd0
mov eax, dword [ebp - 0x1028]
mov ecx, dword [eax + 0x11c]
jmp 0x47b56a
push str.You_must_sacrifice_one_blade_to_make_this.
jmp 0x47b53e
push str.You_must_first_learn_to_create_swords.
lea eax, [ebp - 0x418]
push eax
call fcn.0043d380
push 0x64
lea eax, [ebp - 0xfc7]
push eax
lea eax, [ebp - 0x418]
push 0x400
push eax
call fcn.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.0046dc50
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.005596ea
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret 4