601e4c:	53                   	push   %ebx
601e4d:	56                   	push   %esi
601e4e:	84 d2                	test   %dl,%dl
601e50:	74 08                	je     0x601e5a
601e52:	83 c4 f0             	add    $0xfffffff0,%esp
601e55:	e8 82 1f e0 ff       	call   0x403ddc
601e5a:	8b da                	mov    %edx,%ebx
601e5c:	8b f0                	mov    %eax,%esi
601e5e:	33 d2                	xor    %edx,%edx
601e60:	8b c6                	mov    %esi,%eax
601e62:	e8 e1 1b e0 ff       	call   0x403a48
601e67:	b2 01                	mov    $0x1,%dl
601e69:	a1 24 94 41 00       	mov    0x419424,%eax
601e6e:	e8 d5 1b e0 ff       	call   0x403a48
601e73:	89 46 08             	mov    %eax,0x8(%esi)
601e76:	8b c6                	mov    %esi,%eax
601e78:	84 db                	test   %bl,%bl
601e7a:	74 0f                	je     0x601e8b
601e7c:	e8 b3 1f e0 ff       	call   0x403e34
601e81:	64 8f 05 00 00 00 00 	pop    %fs:0x0
601e88:	83 c4 0c             	add    $0xc,%esp
601e8b:	8b c6                	mov    %esi,%eax
601e8d:	5e                   	pop    %esi
601e8e:	5b                   	pop    %ebx
601e8f:	c3                   	ret
601e90:	53                   	push   %ebx
601e91:	56                   	push   %esi
601e92:	e8 ad 1f e0 ff       	call   0x403e44
601e97:	8b da                	mov    %edx,%ebx
601e99:	8b f0                	mov    %eax,%esi
601e9b:	8b c6                	mov    %esi,%eax
601e9d:	e8 22 00 00 00       	call   0x601ec4
601ea2:	8b 46 08             	mov    0x8(%esi),%eax
601ea5:	e8 ce 1b e0 ff       	call   0x403a78
601eaa:	8b d3                	mov    %ebx,%edx
601eac:	80 e2 fc             	and    $0xfc,%dl
601eaf:	8b c6                	mov    %esi,%eax
601eb1:	e8 b2 1b e0 ff       	call   0x403a68
601eb6:	84 db                	test   %bl,%bl
601eb8:	7e 07                	jle    0x601ec1
601eba:	8b c6                	mov    %esi,%eax
601ebc:	e8 6b 1f e0 ff       	call   0x403e2c
601ec1:	5e                   	pop    %esi
601ec2:	5b                   	pop    %ebx
601ec3:	c3                   	ret
601ec4:	53                   	push   %ebx
601ec5:	56                   	push   %esi
601ec6:	8b d8                	mov    %eax,%ebx
601ec8:	eb 18                	jmp    0x601ee2
601eca:	33 d2                	xor    %edx,%edx
601ecc:	8b c6                	mov    %esi,%eax
601ece:	e8 ed 9e e1 ff       	call   0x41bdc0
601ed3:	e8 a0 1b e0 ff       	call   0x403a78
601ed8:	33 d2                	xor    %edx,%edx
601eda:	8b 43 08             	mov    0x8(%ebx),%eax
601edd:	e8 7e 9d e1 ff       	call   0x41bc60
601ee2:	8b 73 08             	mov    0x8(%ebx),%esi
601ee5:	83 7e 08 00          	cmpl   $0x0,0x8(%esi)
601ee9:	7f df                	jg     0x601eca
601eeb:	5e                   	pop    %esi
601eec:	5b                   	pop    %ebx
601eed:	c3                   	ret
601eee:	8b c0                	mov    %eax,%eax
601ef0:	53                   	push   %ebx
601ef1:	56                   	push   %esi
601ef2:	57                   	push   %edi
601ef3:	55                   	push   %ebp
601ef4:	83 c4 f4             	add    $0xfffffff4,%esp
601ef7:	89 54 24 04          	mov    %edx,0x4(%esp)
601efb:	89 04 24             	mov    %eax,(%esp)
601efe:	8b 04 24             	mov    (%esp),%eax
601f01:	e8 be ff ff ff       	call   0x601ec4
601f06:	8b 44 24 04          	mov    0x4(%esp),%eax
601f0a:	8b 40 08             	mov    0x8(%eax),%eax
601f0d:	8b 78 08             	mov    0x8(%eax),%edi
601f10:	4f                   	dec    %edi
601f11:	85 ff                	test   %edi,%edi
601f13:	0f 8c f2 00 00 00    	jl     0x60200b
601f19:	47                   	inc    %edi
601f1a:	33 ed                	xor    %ebp,%ebp
601f1c:	b2 01                	mov    $0x1,%dl
601f1e:	a1 e8 fc 5e 00       	mov    0x5efce8,%eax
601f23:	e8 ec 00 00 00       	call   0x602014
601f28:	8b f0                	mov    %eax,%esi
601f2a:	8b 44 24 04          	mov    0x4(%esp),%eax
601f2e:	8b 40 08             	mov    0x8(%eax),%eax
601f31:	8b d5                	mov    %ebp,%edx
601f33:	e8 88 9e e1 ff       	call   0x41bdc0
601f38:	8b d8                	mov    %eax,%ebx
601f3a:	8d 56 04             	lea    0x4(%esi),%edx
601f3d:	8d 43 04             	lea    0x4(%ebx),%eax
601f40:	b9 a4 00 00 00       	mov    $0xa4,%ecx
601f45:	e8 d6 0a e0 ff       	call   0x402a20
601f4a:	83 bb a8 00 00 00 00 	cmpl   $0x0,0xa8(%ebx)
601f51:	74 3a                	je     0x601f8d
601f53:	8b 83 ac 00 00 00    	mov    0xac(%ebx),%eax
601f59:	c1 e0 03             	shl    $0x3,%eax
601f5c:	e8 4b 08 e0 ff       	call   0x4027ac
601f61:	89 86 a8 00 00 00    	mov    %eax,0xa8(%esi)
601f67:	8b 8b ac 00 00 00    	mov    0xac(%ebx),%ecx
601f6d:	c1 e1 03             	shl    $0x3,%ecx
601f70:	8b 96 a8 00 00 00    	mov    0xa8(%esi),%edx
601f76:	8b 83 a8 00 00 00    	mov    0xa8(%ebx),%eax
601f7c:	e8 9f 0a e0 ff       	call   0x402a20
601f81:	8b 83 ac 00 00 00    	mov    0xac(%ebx),%eax
601f87:	89 86 ac 00 00 00    	mov    %eax,0xac(%esi)
601f8d:	83 bb b0 00 00 00 00 	cmpl   $0x0,0xb0(%ebx)
601f94:	74 34                	je     0x601fca
601f96:	8b 83 b0 00 00 00    	mov    0xb0(%ebx),%eax
601f9c:	e8 4f 7e e0 ff       	call   0x409df0
601fa1:	40                   	inc    %eax
601fa2:	89 44 24 08          	mov    %eax,0x8(%esp)
601fa6:	8b 44 24 08          	mov    0x8(%esp),%eax
601faa:	e8 fd 07 e0 ff       	call   0x4027ac
601faf:	89 86 b0 00 00 00    	mov    %eax,0xb0(%esi)
601fb5:	8b 96 b0 00 00 00    	mov    0xb0(%esi),%edx
601fbb:	8b 83 b0 00 00 00    	mov    0xb0(%ebx),%eax
601fc1:	8b 4c 24 08          	mov    0x8(%esp),%ecx
601fc5:	e8 56 0a e0 ff       	call   0x402a20
601fca:	83 bb b4 00 00 00 00 	cmpl   $0x0,0xb4(%ebx)
601fd1:	74 23                	je     0x601ff6
601fd3:	b2 01                	mov    $0x1,%dl
601fd5:	a1 18 ff 5e 00       	mov    0x5eff18,%eax
601fda:	e8 c5 55 ff ff       	call   0x5f75a4
601fdf:	89 86 b4 00 00 00    	mov    %eax,0xb4(%esi)
601fe5:	8b 93 b4 00 00 00    	mov    0xb4(%ebx),%edx
601feb:	8b 86 b4 00 00 00    	mov    0xb4(%esi),%eax
601ff1:	8b 08                	mov    (%eax),%ecx
601ff3:	ff 51 28             	call   *0x28(%ecx)
601ff6:	8b 04 24             	mov    (%esp),%eax
601ff9:	8b 40 08             	mov    0x8(%eax),%eax
601ffc:	8b d6                	mov    %esi,%edx
601ffe:	e8 11 9c e1 ff       	call   0x41bc14
602003:	45                   	inc    %ebp
602004:	4f                   	dec    %edi
602005:	0f 85 11 ff ff ff    	jne    0x601f1c
60200b:	83 c4 0c             	add    $0xc,%esp
60200e:	5d                   	pop    %ebp
60200f:	5f                   	pop    %edi
602010:	5e                   	pop    %esi
602011:	5b                   	pop    %ebx
602012:	c3                   	ret
602013:	90                   	nop
602014:	53                   	push   %ebx
602015:	56                   	push   %esi
602016:	84 d2                	test   %dl,%dl
602018:	74 08                	je     0x602022
60201a:	83 c4 f0             	add    $0xfffffff0,%esp
60201d:	e8 ba 1d e0 ff       	call   0x403ddc
602022:	8b da                	mov    %edx,%ebx
602024:	8b f0                	mov    %eax,%esi
602026:	33 d2                	xor    %edx,%edx
602028:	8b c6                	mov    %esi,%eax
60202a:	e8 19 1a e0 ff       	call   0x403a48
60202f:	33 c0                	xor    %eax,%eax
602031:	89 86 a8 00 00 00    	mov    %eax,0xa8(%esi)
602037:	33 c0                	xor    %eax,%eax
602039:	89 86 ac 00 00 00    	mov    %eax,0xac(%esi)
60203f:	33 c0                	xor    %eax,%eax
602041:	89 86 b0 00 00 00    	mov    %eax,0xb0(%esi)
602047:	33 c0                	xor    %eax,%eax
602049:	89 86 b4 00 00 00    	mov    %eax,0xb4(%esi)
60204f:	8b c6                	mov    %esi,%eax
602051:	84 db                	test   %bl,%bl
602053:	74 0f                	je     0x602064
602055:	e8 da 1d e0 ff       	call   0x403e34
60205a:	64 8f 05 00 00 00 00 	pop    %fs:0x0
602061:	83 c4 0c             	add    $0xc,%esp
602064:	8b c6                	mov    %esi,%eax
602066:	5e                   	pop    %esi
602067:	5b                   	pop    %ebx
602068:	c3                   	ret
602069:	8d 40 00             	lea    0x0(%eax),%eax
60206c:	53                   	push   %ebx
60206d:	56                   	push   %esi
60206e:	e8 d1 1d e0 ff       	call   0x403e44
602073:	8b da                	mov    %edx,%ebx
602075:	8b f0                	mov    %eax,%esi
602077:	8b 86 a8 00 00 00    	mov    0xa8(%esi),%eax
60207d:	85 c0                	test   %eax,%eax
60207f:	74 05                	je     0x602086
602081:	e8 46 07 e0 ff       	call   0x4027cc
602086:	8b 86 b0 00 00 00    	mov    0xb0(%esi),%eax
60208c:	85 c0                	test   %eax,%eax
60208e:	74 05                	je     0x602095
602090:	e8 37 07 e0 ff       	call   0x4027cc
602095:	8b 86 b4 00 00 00    	mov    0xb4(%esi),%eax
60209b:	85 c0                	test   %eax,%eax
60209d:	74 05                	je     0x6020a4
60209f:	e8 d4 19 e0 ff       	call   0x403a78
6020a4:	8b d3                	mov    %ebx,%edx
6020a6:	80 e2 fc             	and    $0xfc,%dl
6020a9:	8b c6                	mov    %esi,%eax
6020ab:	e8 b8 19 e0 ff       	call   0x403a68
6020b0:	84 db                	test   %bl,%bl
6020b2:	7e 07                	jle    0x6020bb
6020b4:	8b c6                	mov    %esi,%eax
6020b6:	e8 71 1d e0 ff       	call   0x403e2c
6020bb:	5e                   	pop    %esi
6020bc:	5b                   	pop    %ebx
6020bd:	c3                   	ret
6020be:	8b c0                	mov    %eax,%eax
6020c0:	55                   	push   %ebp
6020c1:	8b ec                	mov    %esp,%ebp
6020c3:	83 c4 f0             	add    $0xfffffff0,%esp
6020c6:	53                   	push   %ebx
6020c7:	56                   	push   %esi
6020c8:	57                   	push   %edi
6020c9:	33 db                	xor    %ebx,%ebx
6020cb:	89 5d f0             	mov    %ebx,-0x10(%ebp)
6020ce:	89 5d f8             	mov    %ebx,-0x8(%ebp)
6020d1:	89 55 fc             	mov    %edx,-0x4(%ebp)
6020d4:	8b f8                	mov    %eax,%edi
6020d6:	8b 75 10             	mov    0x10(%ebp),%esi
6020d9:	33 c0                	xor    %eax,%eax
6020db:	55                   	push   %ebp
6020dc:	68 8d 23 60 00       	push   $0x60238d
6020e1:	64 ff 30             	push   %fs:(%eax)
6020e4:	64 89 20             	mov    %esp,%fs:(%eax)
6020e7:	8b 06                	mov    (%esi),%eax
6020e9:	8b 55 fc             	mov    -0x4(%ebp),%edx
6020ec:	8d 1c 02             	lea    (%edx,%eax,1),%ebx
6020ef:	8d 45 f8             	lea    -0x8(%ebp),%eax
6020f2:	e8 71 27 e0 ff       	call   0x404868
6020f7:	eb 16                	jmp    0x60210f
6020f9:	8d 45 f0             	lea    -0x10(%ebp),%eax
6020fc:	8a 13                	mov    (%ebx),%dl
6020fe:	e8 45 29 e0 ff       	call   0x404a48
602103:	8b 55 f0             	mov    -0x10(%ebp),%edx
602106:	8d 45 f8             	lea    -0x8(%ebp),%eax
602109:	e8 1a 2a e0 ff       	call   0x404b28
60210e:	43                   	inc    %ebx
60210f:	80 3b 00             	cmpb   $0x0,(%ebx)
602112:	74 0d                	je     0x602121
602114:	8b 45 f8             	mov    -0x8(%ebp),%eax
602117:	e8 04 2a e0 ff       	call   0x404b20
60211c:	83 f8 08             	cmp    $0x8,%eax
60211f:	7c d8                	jl     0x6020f9
602121:	83 06 08             	addl   $0x8,(%esi)
602124:	8b 06                	mov    (%esi),%eax
602126:	8b 55 fc             	mov    -0x4(%ebp),%edx
602129:	8d 04 02             	lea    (%edx,%eax,1),%eax
60212c:	8b 18                	mov    (%eax),%ebx
60212e:	83 06 04             	addl   $0x4,(%esi)
602131:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
602135:	75 03                	jne    0x60213a
602137:	83 06 04             	addl   $0x4,(%esi)
60213a:	8b 45 f8             	mov    -0x8(%ebp),%eax
60213d:	ba a8 23 60 00       	mov    $0x6023a8,%edx
602142:	e8 1d 2b e0 ff       	call   0x404c64
602147:	0f 85 c0 00 00 00    	jne    0x60220d
60214d:	83 7d 08 0c          	cmpl   $0xc,0x8(%ebp)
602151:	74 0c                	je     0x60215f
602153:	83 7d 08 01          	cmpl   $0x1,0x8(%ebp)
602157:	74 06                	je     0x60215f
602159:	83 7d 08 02          	cmpl   $0x2,0x8(%ebp)
60215d:	75 38                	jne    0x602197
60215f:	8b 47 04             	mov    0x4(%edi),%eax
602162:	85 c0                	test   %eax,%eax
602164:	74 0a                	je     0x602170
602166:	ba 38 00 00 00       	mov    $0x38,%edx
60216b:	e8 5c 06 e0 ff       	call   0x4027cc
602170:	b8 38 00 00 00       	mov    $0x38,%eax
602175:	e8 32 06 e0 ff       	call   0x4027ac
60217a:	89 47 04             	mov    %eax,0x4(%edi)
60217d:	8b 06                	mov    (%esi),%eax
60217f:	8b 55 fc             	mov    -0x4(%ebp),%edx
602182:	8d 04 02             	lea    (%edx,%eax,1),%eax
602185:	8b 57 04             	mov    0x4(%edi),%edx
602188:	b9 38 00 00 00       	mov    $0x38,%ecx
60218d:	e8 8e 08 e0 ff       	call   0x402a20
602192:	e9 d6 01 00 00       	jmp    0x60236d
602197:	83 7d 08 04          	cmpl   $0x4,0x8(%ebp)
60219b:	74 0a                	je     0x6021a7
60219d:	83 7d 08 03          	cmpl   $0x3,0x8(%ebp)
6021a1:	0f 85 c6 01 00 00    	jne    0x60236d
6021a7:	8b 07                	mov    (%edi),%eax
6021a9:	85 c0                	test   %eax,%eax
6021ab:	74 0a                	je     0x6021b7
6021ad:	ba 0c 00 00 00       	mov    $0xc,%edx
6021b2:	e8 15 06 e0 ff       	call   0x4027cc
6021b7:	b8 0c 00 00 00       	mov    $0xc,%eax
6021bc:	e8 eb 05 e0 ff       	call   0x4027ac
6021c1:	89 07                	mov    %eax,(%edi)
6021c3:	8b 06                	mov    (%esi),%eax
6021c5:	8b 55 fc             	mov    -0x4(%ebp),%edx
6021c8:	8d 04 02             	lea    (%edx,%eax,1),%eax
6021cb:	8b 17                	mov    (%edi),%edx
6021cd:	b9 08 00 00 00       	mov    $0x8,%ecx
6021d2:	e8 49 08 e0 ff       	call   0x402a20
6021d7:	8b 07                	mov    (%edi),%eax
6021d9:	8b 40 04             	mov    0x4(%eax),%eax
6021dc:	c1 e0 03             	shl    $0x3,%eax
6021df:	89 45 f4             	mov    %eax,-0xc(%ebp)
6021e2:	8b 45 f4             	mov    -0xc(%ebp),%eax
6021e5:	e8 c2 05 e0 ff       	call   0x4027ac
6021ea:	8b 17                	mov    (%edi),%edx
6021ec:	89 42 08             	mov    %eax,0x8(%edx)
6021ef:	8b 06                	mov    (%esi),%eax
6021f1:	83 c0 0c             	add    $0xc,%eax
6021f4:	8b 55 fc             	mov    -0x4(%ebp),%edx
6021f7:	8d 44 02 fc          	lea    -0x4(%edx,%eax,1),%eax
6021fb:	8b 17                	mov    (%edi),%edx
6021fd:	8b 52 08             	mov    0x8(%edx),%edx
602200:	8b 4d f4             	mov    -0xc(%ebp),%ecx
602203:	e8 18 08 e0 ff       	call   0x402a20
602208:	e9 60 01 00 00       	jmp    0x60236d
60220d:	8b 45 f8             	mov    -0x8(%ebp),%eax
602210:	ba bc 23 60 00       	mov    $0x6023bc,%edx
602215:	e8 4a 2a e0 ff       	call   0x404c64
60221a:	75 41                	jne    0x60225d
60221c:	8b 47 08             	mov    0x8(%edi),%eax
60221f:	85 c0                	test   %eax,%eax
602221:	74 05                	je     0x602228
602223:	e8 a4 05 e0 ff       	call   0x4027cc
602228:	8b 06                	mov    (%esi),%eax
60222a:	8b 55 fc             	mov    -0x4(%ebp),%edx
60222d:	8d 04 02             	lea    (%edx,%eax,1),%eax
602230:	e8 bb 7b e0 ff       	call   0x409df0
602235:	89 45 f4             	mov    %eax,-0xc(%ebp)
602238:	8b 45 f4             	mov    -0xc(%ebp),%eax
60223b:	40                   	inc    %eax
60223c:	e8 6b 05 e0 ff       	call   0x4027ac
602241:	89 47 08             	mov    %eax,0x8(%edi)
602244:	8b 06                	mov    (%esi),%eax
602246:	8b 55 fc             	mov    -0x4(%ebp),%edx
602249:	8d 04 02             	lea    (%edx,%eax,1),%eax
60224c:	8b 4d f4             	mov    -0xc(%ebp),%ecx
60224f:	41                   	inc    %ecx
602250:	8b 57 08             	mov    0x8(%edi),%edx
602253:	e8 c8 07 e0 ff       	call   0x402a20
602258:	e9 10 01 00 00       	jmp    0x60236d
60225d:	8b 45 f8             	mov    -0x8(%ebp),%eax
602260:	ba d0 23 60 00       	mov    $0x6023d0,%edx
602265:	e8 fa 29 e0 ff       	call   0x404c64
60226a:	75 2d                	jne    0x602299
60226c:	8b 47 0c             	mov    0xc(%edi),%eax
60226f:	85 c0                	test   %eax,%eax
602271:	74 05                	je     0x602278
602273:	e8 54 05 e0 ff       	call   0x4027cc
602278:	8b c3                	mov    %ebx,%eax
60227a:	e8 2d 05 e0 ff       	call   0x4027ac
60227f:	89 47 0c             	mov    %eax,0xc(%edi)
602282:	8b 06                	mov    (%esi),%eax
602284:	8b 55 fc             	mov    -0x4(%ebp),%edx
602287:	8d 04 02             	lea    (%edx,%eax,1),%eax
60228a:	8b 57 0c             	mov    0xc(%edi),%edx
60228d:	8b cb                	mov    %ebx,%ecx
60228f:	e8 8c 07 e0 ff       	call   0x402a20
602294:	e9 d4 00 00 00       	jmp    0x60236d