54dee4:	85 c9                	test   %ecx,%ecx
54dee6:	74 93                	je     0x54de7b
54dee8:	8b 43 70             	mov    0x70(%ebx),%eax
54deeb:	89 43 38             	mov    %eax,0x38(%ebx)
54deee:	8b 53 6c             	mov    0x6c(%ebx),%edx
54def1:	89 53 34             	mov    %edx,0x34(%ebx)
54def4:	8b 83 cc 00 00 00    	mov    0xcc(%ebx),%eax
54defa:	8b 53 70             	mov    0x70(%ebx),%edx
54defd:	3b c2                	cmp    %edx,%eax
54deff:	73 03                	jae    0x54df04
54df01:	89 43 38             	mov    %eax,0x38(%ebx)
54df04:	8b 4b 38             	mov    0x38(%ebx),%ecx
54df07:	8b 53 6c             	mov    0x6c(%ebx),%edx
54df0a:	8b c3                	mov    %ebx,%eax
54df0c:	e8 0f d2 ff ff       	call   0x54b120
54df11:	8b 4b 38             	mov    0x38(%ebx),%ecx
54df14:	29 8b cc 00 00 00    	sub    %ecx,0xcc(%ebx)
54df1a:	8d 43 34             	lea    0x34(%ebx),%eax
54df1d:	ba 01 00 00 00       	mov    $0x1,%edx
54df22:	e8 fd 9f fd ff       	call   0x527f24
54df27:	83 f8 01             	cmp    $0x1,%eax
54df2a:	75 2e                	jne    0x54df5a
54df2c:	8b 4b 44             	mov    0x44(%ebx),%ecx
54df2f:	85 c9                	test   %ecx,%ecx
54df31:	74 11                	je     0x54df44
54df33:	8b 43 38             	mov    0x38(%ebx),%eax
54df36:	85 c0                	test   %eax,%eax
54df38:	75 0a                	jne    0x54df44
54df3a:	8b 93 cc 00 00 00    	mov    0xcc(%ebx),%edx
54df40:	85 d2                	test   %edx,%edx
54df42:	74 0c                	je     0x54df50
54df44:	ba 56 bc 69 00       	mov    $0x69bc56,%edx
54df49:	8b c3                	mov    %ebx,%eax
54df4b:	e8 0c d0 ff ff       	call   0x54af5c
54df50:	83 4b 28 08          	orl    $0x8,0x28(%ebx)
54df54:	83 4b 2c 20          	orl    $0x20,0x2c(%ebx)
54df58:	eb 3b                	jmp    0x54df95
54df5a:	85 c0                	test   %eax,%eax
54df5c:	74 18                	je     0x54df76
54df5e:	8b 4b 4c             	mov    0x4c(%ebx),%ecx
54df61:	85 c9                	test   %ecx,%ecx
54df63:	74 05                	je     0x54df6a
54df65:	8b 53 4c             	mov    0x4c(%ebx),%edx
54df68:	eb 05                	jmp    0x54df6f
54df6a:	ba 6c bc 69 00       	mov    $0x69bc6c,%edx
54df6f:	8b c3                	mov    %ebx,%eax
54df71:	e8 4a cf ff ff       	call   0x54aec0
54df76:	8b 4b 44             	mov    0x44(%ebx),%ecx
54df79:	85 c9                	test   %ecx,%ecx
54df7b:	0f 85 ed fe ff ff    	jne    0x54de6e
54df81:	ba 80 bc 69 00       	mov    $0x69bc80,%edx
54df86:	8b c3                	mov    %ebx,%eax
54df88:	e8 cf cf ff ff       	call   0x54af5c
54df8d:	83 4b 28 08          	orl    $0x8,0x28(%ebx)
54df91:	83 4b 2c 20          	orl    $0x20,0x2c(%ebx)
54df95:	33 c9                	xor    %ecx,%ecx
54df97:	89 4b 44             	mov    %ecx,0x44(%ebx)
54df9a:	8b 83 cc 00 00 00    	mov    0xcc(%ebx),%eax
54dfa0:	85 c0                	test   %eax,%eax
54dfa2:	75 07                	jne    0x54dfab
54dfa4:	8b 53 38             	mov    0x38(%ebx),%edx
54dfa7:	85 d2                	test   %edx,%edx
54dfa9:	74 0c                	je     0x54dfb7
54dfab:	ba 97 bc 69 00       	mov    $0x69bc97,%edx
54dfb0:	8b c3                	mov    %ebx,%eax
54dfb2:	e8 a5 cf ff ff       	call   0x54af5c
54dfb7:	8d 43 34             	lea    0x34(%ebx),%eax
54dfba:	e8 c5 9d fd ff       	call   0x527d84
54dfbf:	83 4b 28 08          	orl    $0x8,0x28(%ebx)
54dfc3:	59                   	pop    %ecx
54dfc4:	5a                   	pop    %edx
54dfc5:	5f                   	pop    %edi
54dfc6:	5e                   	pop    %esi
54dfc7:	5b                   	pop    %ebx
54dfc8:	c3                   	ret
54dfc9:	90                   	nop
54dfca:	90                   	nop
54dfcb:	90                   	nop
54dfcc:	53                   	push   %ebx
54dfcd:	56                   	push   %esi
54dfce:	57                   	push   %edi
54dfcf:	8b d8                	mov    %eax,%ebx
54dfd1:	33 c0                	xor    %eax,%eax
54dfd3:	89 43 38             	mov    %eax,0x38(%ebx)
54dfd6:	8b c3                	mov    %ebx,%eax
54dfd8:	e8 3f 7e ff ff       	call   0x545e1c
54dfdd:	8a 93 e3 00 00 00    	mov    0xe3(%ebx),%dl
54dfe3:	84 d2                	test   %dl,%dl
54dfe5:	0f 84 9c 00 00 00    	je     0x54e087
54dfeb:	f6 43 30 02          	testb  $0x2,0x30(%ebx)
54dfef:	75 23                	jne    0x54e014
54dff1:	8b 83 8c 00 00 00    	mov    0x8c(%ebx),%eax
54dff7:	8b 0d 30 be 69 00    	mov    0x69be30,%ecx
54dffd:	03 c1                	add    %ecx,%eax
54dfff:	48                   	dec    %eax
54e000:	8b 15 14 be 69 00    	mov    0x69be14,%edx
54e006:	2b c2                	sub    %edx,%eax
54e008:	33 d2                	xor    %edx,%edx
54e00a:	f7 f1                	div    %ecx
54e00c:	89 83 90 00 00 00    	mov    %eax,0x90(%ebx)
54e012:	eb 0c                	jmp    0x54e020
54e014:	8b 83 8c 00 00 00    	mov    0x8c(%ebx),%eax
54e01a:	89 83 90 00 00 00    	mov    %eax,0x90(%ebx)
54e020:	33 c9                	xor    %ecx,%ecx
54e022:	8b 93 88 00 00 00    	mov    0x88(%ebx),%edx
54e028:	8a 8b e4 00 00 00    	mov    0xe4(%ebx),%cl
54e02e:	8b 04 8d f8 bd 69 00 	mov    0x69bdf8(,%ecx,4),%eax
54e035:	8b 0c 8d dc bd 69 00 	mov    0x69bddc(,%ecx,4),%ecx
54e03c:	03 c2                	add    %edx,%eax
54e03e:	33 d2                	xor    %edx,%edx
54e040:	8a 93 e4 00 00 00    	mov    0xe4(%ebx),%dl
54e046:	48                   	dec    %eax
54e047:	2b c1                	sub    %ecx,%eax
54e049:	8b 0c 95 f8 bd 69 00 	mov    0x69bdf8(,%edx,4),%ecx
54e050:	33 d2                	xor    %edx,%edx
54e052:	f7 f1                	div    %ecx
54e054:	8b f0                	mov    %eax,%esi
54e056:	89 b3 a0 00 00 00    	mov    %esi,0xa0(%ebx)
54e05c:	0f b6 bb e9 00 00 00 	movzbl 0xe9(%ebx),%edi
54e063:	0f af fe             	imul   %esi,%edi
54e066:	83 c7 07             	add    $0x7,%edi
54e069:	c1 ef 03             	shr    $0x3,%edi
54e06c:	47                   	inc    %edi
54e06d:	8b c7                	mov    %edi,%eax
54e06f:	89 83 9c 00 00 00    	mov    %eax,0x9c(%ebx)
54e075:	3b f8                	cmp    %eax,%edi
54e077:	74 33                	je     0x54e0ac
54e079:	ba ae bc 69 00       	mov    $0x69bcae,%edx
54e07e:	8b c3                	mov    %ebx,%eax
54e080:	e8 3b ce ff ff       	call   0x54aec0
54e085:	eb 25                	jmp    0x54e0ac
54e087:	8b 93 8c 00 00 00    	mov    0x8c(%ebx),%edx
54e08d:	89 93 90 00 00 00    	mov    %edx,0x90(%ebx)
54e093:	8b 8b 88 00 00 00    	mov    0x88(%ebx),%ecx
54e099:	89 8b a0 00 00 00    	mov    %ecx,0xa0(%ebx)
54e09f:	8b 83 98 00 00 00    	mov    0x98(%ebx),%eax
54e0a5:	40                   	inc    %eax
54e0a6:	89 83 9c 00 00 00    	mov    %eax,0x9c(%ebx)
54e0ac:	0f b6 b3 e9 00 00 00 	movzbl 0xe9(%ebx),%esi
54e0b3:	8b 43 30             	mov    0x30(%ebx),%eax
54e0b6:	a8 04                	test   $0x4,%al
54e0b8:	74 10                	je     0x54e0ca
54e0ba:	8a 93 e7 00 00 00    	mov    0xe7(%ebx),%dl
54e0c0:	80 fa 08             	cmp    $0x8,%dl
54e0c3:	73 05                	jae    0x54e0ca
54e0c5:	be 08 00 00 00       	mov    $0x8,%esi
54e0ca:	f6 c4 10             	test   $0x10,%ah
54e0cd:	74 63                	je     0x54e132
54e0cf:	8a 83 e6 00 00 00    	mov    0xe6(%ebx),%al
54e0d5:	3c 03                	cmp    $0x3,%al
54e0d7:	75 18                	jne    0x54e0f1
54e0d9:	66 83 bb da 00 00 00 	cmpw   $0x0,0xda(%ebx)
54e0e0:	00
54e0e1:	74 07                	je     0x54e0ea
54e0e3:	be 20 00 00 00       	mov    $0x20,%esi
54e0e8:	eb 48                	jmp    0x54e132
54e0ea:	be 18 00 00 00       	mov    $0x18,%esi
54e0ef:	eb 41                	jmp    0x54e132
54e0f1:	84 c0                	test   %al,%al
54e0f3:	75 1c                	jne    0x54e111
54e0f5:	83 fe 08             	cmp    $0x8,%esi
54e0f8:	7d 05                	jge    0x54e0ff
54e0fa:	be 08 00 00 00       	mov    $0x8,%esi
54e0ff:	66 83 bb da 00 00 00 	cmpw   $0x0,0xda(%ebx)
54e106:	00
54e107:	74 29                	je     0x54e132
54e109:	8b c6                	mov    %esi,%eax
54e10b:	03 c0                	add    %eax,%eax
54e10d:	89 c6                	mov    %eax,%esi
54e10f:	eb 21                	jmp    0x54e132
54e111:	3c 02                	cmp    $0x2,%al
54e113:	75 1d                	jne    0x54e132
54e115:	66 83 bb da 00 00 00 	cmpw   $0x0,0xda(%ebx)
54e11c:	00
54e11d:	74 13                	je     0x54e132
54e11f:	8b d6                	mov    %esi,%edx
54e121:	c1 e2 02             	shl    $0x2,%edx
54e124:	89 d6                	mov    %edx,%esi
54e126:	b9 03 00 00 00       	mov    $0x3,%ecx
54e12b:	8b c6                	mov    %esi,%eax
54e12d:	99                   	cltd
54e12e:	f7 f9                	idiv   %ecx
54e130:	89 c6                	mov    %eax,%esi
54e132:	f6 43 31 80          	testb  $0x80,0x31(%ebx)
54e136:	74 3d                	je     0x54e175
54e138:	8a 83 e6 00 00 00    	mov    0xe6(%ebx),%al
54e13e:	3c 03                	cmp    $0x3,%al
54e140:	75 07                	jne    0x54e149
54e142:	be 20 00 00 00       	mov    $0x20,%esi
54e147:	eb 2c                	jmp    0x54e175
54e149:	84 c0                	test   %al,%al
54e14b:	75 13                	jne    0x54e160
54e14d:	83 fe 08             	cmp    $0x8,%esi
54e150:	7f 07                	jg     0x54e159
54e152:	be 10 00 00 00       	mov    $0x10,%esi
54e157:	eb 1c                	jmp    0x54e175
54e159:	be 20 00 00 00       	mov    $0x20,%esi
54e15e:	eb 15                	jmp    0x54e175
54e160:	3c 02                	cmp    $0x2,%al
54e162:	75 11                	jne    0x54e175
54e164:	83 fe 20             	cmp    $0x20,%esi
54e167:	7f 07                	jg     0x54e170
54e169:	be 20 00 00 00       	mov    $0x20,%esi
54e16e:	eb 05                	jmp    0x54e175
54e170:	be 40 00 00 00       	mov    $0x40,%esi
54e175:	f6 43 31 40          	testb  $0x40,0x31(%ebx)
54e179:	74 66                	je     0x54e1e1
54e17b:	66 83 bb da 00 00 00 	cmpw   $0x0,0xda(%ebx)
54e182:	00
54e183:	74 06                	je     0x54e18b
54e185:	f6 43 31 10          	testb  $0x10,0x31(%ebx)
54e189:	75 10                	jne    0x54e19b
54e18b:	f6 43 31 80          	testb  $0x80,0x31(%ebx)
54e18f:	75 0a                	jne    0x54e19b
54e191:	8a 83 e6 00 00 00    	mov    0xe6(%ebx),%al
54e197:	3c 04                	cmp    $0x4,%al
54e199:	75 13                	jne    0x54e1ae
54e19b:	83 fe 10             	cmp    $0x10,%esi
54e19e:	7f 07                	jg     0x54e1a7
54e1a0:	be 20 00 00 00       	mov    $0x20,%esi
54e1a5:	eb 3a                	jmp    0x54e1e1
54e1a7:	be 40 00 00 00       	mov    $0x40,%esi
54e1ac:	eb 33                	jmp    0x54e1e1
54e1ae:	83 fe 08             	cmp    $0x8,%esi
54e1b1:	7f 18                	jg     0x54e1cb
54e1b3:	8a 83 e6 00 00 00    	mov    0xe6(%ebx),%al
54e1b9:	3c 06                	cmp    $0x6,%al
54e1bb:	75 07                	jne    0x54e1c4
54e1bd:	be 20 00 00 00       	mov    $0x20,%esi
54e1c2:	eb 1d                	jmp    0x54e1e1
54e1c4:	be 18 00 00 00       	mov    $0x18,%esi
54e1c9:	eb 16                	jmp    0x54e1e1
54e1cb:	8a 83 e6 00 00 00    	mov    0xe6(%ebx),%al
54e1d1:	3c 06                	cmp    $0x6,%al
54e1d3:	75 07                	jne    0x54e1dc
54e1d5:	be 40 00 00 00       	mov    $0x40,%esi
54e1da:	eb 05                	jmp    0x54e1e1
54e1dc:	be 30 00 00 00       	mov    $0x30,%esi
54e1e1:	f6 43 32 10          	testb  $0x10,0x32(%ebx)
54e1e5:	74 12                	je     0x54e1f9
54e1e7:	33 c0                	xor    %eax,%eax
54e1e9:	33 d2                	xor    %edx,%edx
54e1eb:	8a 53 25             	mov    0x25(%ebx),%dl
54e1ee:	8a 43 24             	mov    0x24(%ebx),%al
54e1f1:	f7 ea                	imul   %edx
54e1f3:	3b f0                	cmp    %eax,%esi
54e1f5:	7d 02                	jge    0x54e1f9
54e1f7:	8b f0                	mov    %eax,%esi
54e1f9:	8b bb 88 00 00 00    	mov    0x88(%ebx),%edi
54e1ff:	8b c3                	mov    %ebx,%eax
54e201:	83 c7 07             	add    $0x7,%edi
54e204:	83 e7 f8             	and    $0xfffffff8,%edi
54e207:	0f af fe             	imul   %esi,%edi
54e20a:	83 c6 07             	add    $0x7,%esi
54e20d:	83 c7 07             	add    $0x7,%edi
54e210:	c1 fe 03             	sar    $0x3,%esi
54e213:	c1 ef 03             	shr    $0x3,%edi
54e216:	03 fe                	add    %esi,%edi
54e218:	47                   	inc    %edi
54e219:	8d 57 40             	lea    0x40(%edi),%edx
54e21c:	e8 47 cb ff ff       	call   0x54ad68
54e221:	8b f0                	mov    %eax,%esi
54e223:	8b c3                	mov    %ebx,%eax
54e225:	89 b3 0c 02 00 00    	mov    %esi,0x20c(%ebx)
54e22b:	83 c6 20             	add    $0x20,%esi
54e22e:	89 b3 ac 00 00 00    	mov    %esi,0xac(%ebx)
54e234:	8b 93 98 00 00 00    	mov    0x98(%ebx),%edx
54e23a:	42                   	inc    %edx
54e23b:	e8 28 cb ff ff       	call   0x54ad68
54e240:	8b f0                	mov    %eax,%esi
54e242:	89 b3 a8 00 00 00    	mov    %esi,0xa8(%ebx)
54e248:	8b d6                	mov    %esi,%edx
54e24a:	8b 83 98 00 00 00    	mov    0x98(%ebx),%eax
54e250:	40                   	inc    %eax
54e251:	33 c9                	xor    %ecx,%ecx
54e253:	50                   	push   %eax
54e254:	8b c3                	mov    %ebx,%eax
54e256:	e8 09 cc ff ff       	call   0x54ae64
54e25b:	83 4b 2c 40          	orl    $0x40,0x2c(%ebx)
54e25f:	5f                   	pop    %edi
54e260:	5e                   	pop    %esi
54e261:	5b                   	pop    %ebx
54e262:	c3                   	ret
54e263:	90                   	nop
54e264:	85 c0                	test   %eax,%eax
54e266:	74 0a                	je     0x54e272
54e268:	85 d2                	test   %edx,%edx
54e26a:	74 06                	je     0x54e272
54e26c:	8b 42 08             	mov    0x8(%edx),%eax
54e26f:	23 c1                	and    %ecx,%eax
54e271:	c3                   	ret
54e272:	33 c0                	xor    %eax,%eax
54e274:	c3                   	ret
54e275:	90                   	nop
54e276:	90                   	nop
54e277:	90                   	nop
54e278:	85 c0                	test   %eax,%eax
54e27a:	74 08                	je     0x54e284
54e27c:	85 d2                	test   %edx,%edx
54e27e:	74 04                	je     0x54e284
54e280:	8b 42 0c             	mov    0xc(%edx),%eax
54e283:	c3                   	ret
54e284:	33 c0                	xor    %eax,%eax
54e286:	c3                   	ret
54e287:	90                   	nop
54e288:	85 c0                	test   %eax,%eax
54e28a:	74 0b                	je     0x54e297
54e28c:	85 d2                	test   %edx,%edx
54e28e:	74 07                	je     0x54e297
54e290:	8b 82 f8 00 00 00    	mov    0xf8(%edx),%eax
54e296:	c3                   	ret
54e297:	33 c0                	xor    %eax,%eax
54e299:	c3                   	ret
54e29a:	90                   	nop
54e29b:	90                   	nop
54e29c:	85 c0                	test   %eax,%eax
54e29e:	74 07                	je     0x54e2a7
54e2a0:	85 d2                	test   %edx,%edx
54e2a2:	74 03                	je     0x54e2a7
54e2a4:	8b 02                	mov    (%edx),%eax
54e2a6:	c3                   	ret
54e2a7:	33 c0                	xor    %eax,%eax
54e2a9:	c3                   	ret
54e2aa:	90                   	nop
54e2ab:	90                   	nop
54e2ac:	85 c0                	test   %eax,%eax
54e2ae:	74 08                	je     0x54e2b8
54e2b0:	85 d2                	test   %edx,%edx
54e2b2:	74 04                	je     0x54e2b8
54e2b4:	8b 42 04             	mov    0x4(%edx),%eax
54e2b7:	c3                   	ret
54e2b8:	33 c0                	xor    %eax,%eax
54e2ba:	c3                   	ret
54e2bb:	90                   	nop
54e2bc:	85 c0                	test   %eax,%eax
54e2be:	74 08                	je     0x54e2c8
54e2c0:	85 d2                	test   %edx,%edx
54e2c2:	74 04                	je     0x54e2c8
54e2c4:	8a 42 18             	mov    0x18(%edx),%al
54e2c7:	c3                   	ret
54e2c8:	33 c0                	xor    %eax,%eax
54e2ca:	c3                   	ret
54e2cb:	90                   	nop
54e2cc:	85 c0                	test   %eax,%eax
54e2ce:	74 08                	je     0x54e2d8
54e2d0:	85 d2                	test   %edx,%edx
54e2d2:	74 04                	je     0x54e2d8
54e2d4:	8a 42 19             	mov    0x19(%edx),%al
54e2d7:	c3                   	ret
54e2d8:	33 c0                	xor    %eax,%eax