42c015:	8b 4e 04             	mov    0x4(%esi),%ecx
42c018:	e8 33 e0 ff ff       	call   0x42a050
42c01d:	ff 76 04             	push   0x4(%esi)
42c020:	ff 15 34 21 45 00    	call   *0x452134
42c026:	8b 55 f4             	mov    -0xc(%ebp),%edx
42c029:	8b 02                	mov    (%edx),%eax
42c02b:	89 06                	mov    %eax,(%esi)
42c02d:	8b 42 04             	mov    0x4(%edx),%eax
42c030:	89 46 04             	mov    %eax,0x4(%esi)
42c033:	3b 7d f0             	cmp    -0x10(%ebp),%edi
42c036:	0f 82 94 00 00 00    	jb     0x42c0d0
42c03c:	8d 64 24 00          	lea    0x0(%esp),%esp
42c040:	8b 15 30 f7 44 00    	mov    0x44f730,%edx
42c046:	8b 35 38 f7 44 00    	mov    0x44f738,%esi
42c04c:	89 7d e8             	mov    %edi,-0x18(%ebp)
42c04f:	4f                   	dec    %edi
42c050:	8d 0c fd 00 00 00 00 	lea    0x0(,%edi,8),%ecx
42c057:	3b fa                	cmp    %edx,%edi
42c059:	73 05                	jae    0x42c060
42c05b:	8d 04 31             	lea    (%ecx,%esi,1),%eax
42c05e:	eb 02                	jmp    0x42c062
42c060:	33 c0                	xor    %eax,%eax
42c062:	8b 00                	mov    (%eax),%eax
42c064:	2b 45 ec             	sub    -0x14(%ebp),%eax
42c067:	85 c0                	test   %eax,%eax
42c069:	7e 72                	jle    0x42c0dd
42c06b:	3b fa                	cmp    %edx,%edi
42c06d:	73 04                	jae    0x42c073
42c06f:	03 ce                	add    %esi,%ecx
42c071:	eb 02                	jmp    0x42c075
42c073:	33 c9                	xor    %ecx,%ecx
42c075:	8b 45 e8             	mov    -0x18(%ebp),%eax
42c078:	89 4d f4             	mov    %ecx,-0xc(%ebp)
42c07b:	3b c2                	cmp    %edx,%eax
42c07d:	73 05                	jae    0x42c084
42c07f:	8d 34 c6             	lea    (%esi,%eax,8),%esi
42c082:	eb 02                	jmp    0x42c086
42c084:	33 f6                	xor    %esi,%esi
42c086:	8b 51 04             	mov    0x4(%ecx),%edx
42c089:	85 d2                	test   %edx,%edx
42c08b:	74 09                	je     0x42c096
42c08d:	b8 01 00 00 00       	mov    $0x1,%eax
42c092:	f0 0f c1 02          	lock xadd %eax,(%edx)
42c096:	8b 56 04             	mov    0x4(%esi),%edx
42c099:	85 d2                	test   %edx,%edx
42c09b:	74 20                	je     0x42c0bd
42c09d:	83 c8 ff             	or     $0xffffffff,%eax
42c0a0:	f0 0f c1 02          	lock xadd %eax,(%edx)
42c0a4:	83 e8 01             	sub    $0x1,%eax
42c0a7:	75 14                	jne    0x42c0bd
42c0a9:	8b 4e 04             	mov    0x4(%esi),%ecx
42c0ac:	e8 9f df ff ff       	call   0x42a050
42c0b1:	ff 76 04             	push   0x4(%esi)
42c0b4:	ff 15 34 21 45 00    	call   *0x452134
42c0ba:	8b 4d f4             	mov    -0xc(%ebp),%ecx
42c0bd:	8b 01                	mov    (%ecx),%eax
42c0bf:	89 06                	mov    %eax,(%esi)
42c0c1:	8b 41 04             	mov    0x4(%ecx),%eax
42c0c4:	89 46 04             	mov    %eax,0x4(%esi)
42c0c7:	3b 7d f0             	cmp    -0x10(%ebp),%edi
42c0ca:	0f 83 70 ff ff ff    	jae    0x42c040
42c0d0:	8b 35 38 f7 44 00    	mov    0x44f738,%esi
42c0d6:	4f                   	dec    %edi
42c0d7:	8b 15 30 f7 44 00    	mov    0x44f730,%edx
42c0dd:	47                   	inc    %edi
42c0de:	3b fa                	cmp    %edx,%edi
42c0e0:	73 05                	jae    0x42c0e7
42c0e2:	8d 34 fe             	lea    (%esi,%edi,8),%esi
42c0e5:	eb 02                	jmp    0x42c0e9
42c0e7:	33 f6                	xor    %esi,%esi
42c0e9:	8b 7d fc             	mov    -0x4(%ebp),%edi
42c0ec:	85 ff                	test   %edi,%edi
42c0ee:	74 09                	je     0x42c0f9
42c0f0:	b8 01 00 00 00       	mov    $0x1,%eax
42c0f5:	f0 0f c1 07          	lock xadd %eax,(%edi)
42c0f9:	8b 4e 04             	mov    0x4(%esi),%ecx
42c0fc:	85 c9                	test   %ecx,%ecx
42c0fe:	74 1d                	je     0x42c11d
42c100:	83 c8 ff             	or     $0xffffffff,%eax
42c103:	f0 0f c1 01          	lock xadd %eax,(%ecx)
42c107:	83 e8 01             	sub    $0x1,%eax
42c10a:	75 11                	jne    0x42c11d
42c10c:	8b 4e 04             	mov    0x4(%esi),%ecx
42c10f:	e8 3c df ff ff       	call   0x42a050
42c114:	ff 76 04             	push   0x4(%esi)
42c117:	ff 15 34 21 45 00    	call   *0x452134
42c11d:	8b 45 ec             	mov    -0x14(%ebp),%eax
42c120:	89 06                	mov    %eax,(%esi)
42c122:	89 7e 04             	mov    %edi,0x4(%esi)
42c125:	8b 0d 38 f7 44 00    	mov    0x44f738,%ecx
42c12b:	8b 45 f8             	mov    -0x8(%ebp),%eax
42c12e:	8b f8                	mov    %eax,%edi
42c130:	40                   	inc    %eax
42c131:	89 45 f8             	mov    %eax,-0x8(%ebp)
42c134:	3b 43 0c             	cmp    0xc(%ebx),%eax
42c137:	0f 82 13 fe ff ff    	jb     0x42bf50
42c13d:	8b 75 fc             	mov    -0x4(%ebp),%esi
42c140:	85 f6                	test   %esi,%esi
42c142:	74 1a                	je     0x42c15e
42c144:	83 c8 ff             	or     $0xffffffff,%eax
42c147:	f0 0f c1 06          	lock xadd %eax,(%esi)
42c14b:	83 e8 01             	sub    $0x1,%eax
42c14e:	75 0e                	jne    0x42c15e
42c150:	8b ce                	mov    %esi,%ecx
42c152:	e8 f9 de ff ff       	call   0x42a050
42c157:	56                   	push   %esi
42c158:	ff 15 34 21 45 00    	call   *0x452134
42c15e:	5f                   	pop    %edi
42c15f:	5e                   	pop    %esi
42c160:	8b e5                	mov    %ebp,%esp
42c162:	5d                   	pop    %ebp
42c163:	8b e3                	mov    %ebx,%esp
42c165:	5b                   	pop    %ebx
42c166:	c2 08 00             	ret    $0x8
42c169:	cc                   	int3
42c16a:	cc                   	int3
42c16b:	cc                   	int3
42c16c:	cc                   	int3
42c16d:	cc                   	int3
42c16e:	cc                   	int3
42c16f:	cc                   	int3
42c170:	8b ff                	mov    %edi,%edi
42c172:	53                   	push   %ebx
42c173:	8b dc                	mov    %esp,%ebx
42c175:	83 ec 08             	sub    $0x8,%esp
42c178:	83 e4 f8             	and    $0xfffffff8,%esp
42c17b:	83 c4 04             	add    $0x4,%esp
42c17e:	55                   	push   %ebp
42c17f:	8b 6b 04             	mov    0x4(%ebx),%ebp
42c182:	89 6c 24 04          	mov    %ebp,0x4(%esp)
42c186:	8b ec                	mov    %esp,%ebp
42c188:	81 ec a8 00 00 00    	sub    $0xa8,%esp
42c18e:	a1 e4 f8 44 00       	mov    0x44f8e4,%eax
42c193:	33 c5                	xor    %ebp,%eax
42c195:	89 45 fc             	mov    %eax,-0x4(%ebp)
42c198:	8b 43 08             	mov    0x8(%ebx),%eax
42c19b:	8b 4b 0c             	mov    0xc(%ebx),%ecx
42c19e:	56                   	push   %esi
42c19f:	57                   	push   %edi
42c1a0:	33 f6                	xor    %esi,%esi
42c1a2:	89 b5 5c ff ff ff    	mov    %esi,-0xa4(%ebp)
42c1a8:	8b d1                	mov    %ecx,%edx
42c1aa:	2b d0                	sub    %eax,%edx
42c1ac:	83 fa 20             	cmp    $0x20,%edx
42c1af:	73 26                	jae    0x42c1d7
42c1b1:	51                   	push   %ecx
42c1b2:	50                   	push   %eax
42c1b3:	e8 58 fd ff ff       	call   0x42bf10
42c1b8:	85 f6                	test   %esi,%esi
42c1ba:	0f 84 e7 09 00 00    	je     0x42cba7
42c1c0:	8b 84 f5 70 ff ff ff 	mov    -0x90(%ebp,%esi,8),%eax
42c1c7:	4e                   	dec    %esi
42c1c8:	89 43 08             	mov    %eax,0x8(%ebx)
42c1cb:	8b 8c f5 7c ff ff ff 	mov    -0x84(%ebp,%esi,8),%ecx
42c1d2:	89 4b 0c             	mov    %ecx,0xc(%ebx)
42c1d5:	eb cb                	jmp    0x42c1a2
42c1d7:	d1 ea                	shr    $1,%edx
42c1d9:	8d 71 ff             	lea    -0x1(%ecx),%esi
42c1dc:	8b 0d 30 f7 44 00    	mov    0x44f730,%ecx
42c1e2:	03 d0                	add    %eax,%edx
42c1e4:	89 95 64 ff ff ff    	mov    %edx,-0x9c(%ebp)
42c1ea:	3b d1                	cmp    %ecx,%edx
42c1ec:	8b 15 38 f7 44 00    	mov    0x44f738,%edx
42c1f2:	8b f8                	mov    %eax,%edi
42c1f4:	73 14                	jae    0x42c20a
42c1f6:	8b 85 64 ff ff ff    	mov    -0x9c(%ebp),%eax
42c1fc:	8d 04 c2             	lea    (%edx,%eax,8),%eax
42c1ff:	89 85 74 ff ff ff    	mov    %eax,-0x8c(%ebp)
42c205:	8b 43 08             	mov    0x8(%ebx),%eax
42c208:	eb 0a                	jmp    0x42c214
42c20a:	c7 85 74 ff ff ff 00 	movl   $0x0,-0x8c(%ebp)
42c211:	00 00 00
42c214:	3b c1                	cmp    %ecx,%eax
42c216:	73 05                	jae    0x42c21d
42c218:	8d 04 c2             	lea    (%edx,%eax,8),%eax
42c21b:	eb 02                	jmp    0x42c21f
42c21d:	33 c0                	xor    %eax,%eax
42c21f:	8b 8d 74 ff ff ff    	mov    -0x8c(%ebp),%ecx
42c225:	8b 00                	mov    (%eax),%eax
42c227:	2b 01                	sub    (%ecx),%eax
42c229:	8b 0d 30 f7 44 00    	mov    0x44f730,%ecx
42c22f:	85 c0                	test   %eax,%eax
42c231:	0f 8e 95 01 00 00    	jle    0x42c3cc
42c237:	8b 43 08             	mov    0x8(%ebx),%eax
42c23a:	3b c1                	cmp    %ecx,%eax
42c23c:	73 05                	jae    0x42c243
42c23e:	8d 04 c2             	lea    (%edx,%eax,8),%eax
42c241:	eb 02                	jmp    0x42c245
42c243:	33 c0                	xor    %eax,%eax
42c245:	8b 50 04             	mov    0x4(%eax),%edx
42c248:	89 85 74 ff ff ff    	mov    %eax,-0x8c(%ebp)
42c24e:	89 95 70 ff ff ff    	mov    %edx,-0x90(%ebp)
42c254:	85 d2                	test   %edx,%edx
42c256:	74 1e                	je     0x42c276
42c258:	b8 01 00 00 00       	mov    $0x1,%eax
42c25d:	f0 0f c1 02          	lock xadd %eax,(%edx)
42c261:	8b 85 74 ff ff ff    	mov    -0x8c(%ebp),%eax
42c267:	8b 0d 30 f7 44 00    	mov    0x44f730,%ecx
42c26d:	8b 50 04             	mov    0x4(%eax),%edx
42c270:	89 95 70 ff ff ff    	mov    %edx,-0x90(%ebp)
42c276:	8b 00                	mov    (%eax),%eax
42c278:	89 85 6c ff ff ff    	mov    %eax,-0x94(%ebp)
42c27e:	8b 85 64 ff ff ff    	mov    -0x9c(%ebp),%eax
42c284:	3b c1                	cmp    %ecx,%eax
42c286:	8d 14 c5 00 00 00 00 	lea    0x0(,%eax,8),%edx
42c28d:	a1 38 f7 44 00       	mov    0x44f738,%eax
42c292:	89 95 60 ff ff ff    	mov    %edx,-0xa0(%ebp)
42c298:	73 0a                	jae    0x42c2a4
42c29a:	03 d0                	add    %eax,%edx
42c29c:	89 95 74 ff ff ff    	mov    %edx,-0x8c(%ebp)
42c2a2:	eb 0a                	jmp    0x42c2ae
42c2a4:	c7 85 74 ff ff ff 00 	movl   $0x0,-0x8c(%ebp)
42c2ab:	00 00 00
42c2ae:	8b 53 08             	mov    0x8(%ebx),%edx
42c2b1:	3b d1                	cmp    %ecx,%edx
42c2b3:	73 05                	jae    0x42c2ba
42c2b5:	8d 0c d0             	lea    (%eax,%edx,8),%ecx
42c2b8:	eb 02                	jmp    0x42c2bc
42c2ba:	33 c9                	xor    %ecx,%ecx
42c2bc:	8b 95 74 ff ff ff    	mov    -0x8c(%ebp),%edx
42c2c2:	89 8d 68 ff ff ff    	mov    %ecx,-0x98(%ebp)
42c2c8:	8b 52 04             	mov    0x4(%edx),%edx
42c2cb:	85 d2                	test   %edx,%edx
42c2cd:	74 09                	je     0x42c2d8
42c2cf:	b8 01 00 00 00       	mov    $0x1,%eax
42c2d4:	f0 0f c1 02          	lock xadd %eax,(%edx)
42c2d8:	8b 51 04             	mov    0x4(%ecx),%edx
42c2db:	85 d2                	test   %edx,%edx
42c2dd:	74 29                	je     0x42c308
42c2df:	83 c8 ff             	or     $0xffffffff,%eax
42c2e2:	f0 0f c1 02          	lock xadd %eax,(%edx)
42c2e6:	83 e8 01             	sub    $0x1,%eax
42c2e9:	75 1d                	jne    0x42c308
42c2eb:	8b 49 04             	mov    0x4(%ecx),%ecx
42c2ee:	e8 5d dd ff ff       	call   0x42a050
42c2f3:	8b 85 68 ff ff ff    	mov    -0x98(%ebp),%eax
42c2f9:	ff 70 04             	push   0x4(%eax)
42c2fc:	ff 15 34 21 45 00    	call   *0x452134
42c302:	8b 8d 68 ff ff ff    	mov    -0x98(%ebp),%ecx
42c308:	8b 95 74 ff ff ff    	mov    -0x8c(%ebp),%edx
42c30e:	8b 02                	mov    (%edx),%eax
42c310:	89 01                	mov    %eax,(%ecx)
42c312:	8b 42 04             	mov    0x4(%edx),%eax
42c315:	89 41 04             	mov    %eax,0x4(%ecx)
42c318:	8b 85 64 ff ff ff    	mov    -0x9c(%ebp),%eax
42c31e:	3b 05 30 f7 44 00    	cmp    0x44f730,%eax
42c324:	73 0e                	jae    0x42c334
42c326:	8b 8d 60 ff ff ff    	mov    -0xa0(%ebp),%ecx
42c32c:	03 0d 38 f7 44 00    	add    0x44f738,%ecx
42c332:	eb 02                	jmp    0x42c336
42c334:	33 c9                	xor    %ecx,%ecx
42c336:	8b 95 70 ff ff ff    	mov    -0x90(%ebp),%edx
42c33c:	89 8d 74 ff ff ff    	mov    %ecx,-0x8c(%ebp)
42c342:	85 d2                	test   %edx,%edx
42c344:	74 09                	je     0x42c34f
42c346:	b8 01 00 00 00       	mov    $0x1,%eax
42c34b:	f0 0f c1 02          	lock xadd %eax,(%edx)
42c34f:	8b 41 04             	mov    0x4(%ecx),%eax
42c352:	89 85 60 ff ff ff    	mov    %eax,-0xa0(%ebp)
42c358:	85 c0                	test   %eax,%eax
42c35a:	74 3b                	je     0x42c397
42c35c:	8b 95 60 ff ff ff    	mov    -0xa0(%ebp),%edx
42c362:	83 c8 ff             	or     $0xffffffff,%eax
42c365:	f0 0f c1 02          	lock xadd %eax,(%edx)
42c369:	8b 95 70 ff ff ff    	mov    -0x90(%ebp),%edx
42c36f:	83 e8 01             	sub    $0x1,%eax
42c372:	75 23                	jne    0x42c397
42c374:	8b 49 04             	mov    0x4(%ecx),%ecx
42c377:	e8 d4 dc ff ff       	call   0x42a050
42c37c:	8b 85 74 ff ff ff    	mov    -0x8c(%ebp),%eax
42c382:	ff 70 04             	push   0x4(%eax)
42c385:	ff 15 34 21 45 00    	call   *0x452134
42c38b:	8b 8d 74 ff ff ff    	mov    -0x8c(%ebp),%ecx
42c391:	8b 95 70 ff ff ff    	mov    -0x90(%ebp),%edx
42c397:	8b 85 6c ff ff ff    	mov    -0x94(%ebp),%eax
42c39d:	89 01                	mov    %eax,(%ecx)
42c39f:	89 51 04             	mov    %edx,0x4(%ecx)
42c3a2:	85 d2                	test   %edx,%edx
42c3a4:	74 20                	je     0x42c3c6
42c3a6:	83 c8 ff             	or     $0xffffffff,%eax
42c3a9:	f0 0f c1 02          	lock xadd %eax,(%edx)
42c3ad:	83 e8 01             	sub    $0x1,%eax
42c3b0:	75 14                	jne    0x42c3c6
42c3b2:	8b ca                	mov    %edx,%ecx
42c3b4:	e8 97 dc ff ff       	call   0x42a050
42c3b9:	8b 95 70 ff ff ff    	mov    -0x90(%ebp),%edx
42c3bf:	52                   	push   %edx
42c3c0:	ff 15 34 21 45 00    	call   *0x452134
42c3c6:	8b 0d 30 f7 44 00    	mov    0x44f730,%ecx
42c3cc:	8b 15 38 f7 44 00    	mov    0x44f738,%edx
42c3d2:	3b f1                	cmp    %ecx,%esi
42c3d4:	73 0b                	jae    0x42c3e1
42c3d6:	8d 04 f2             	lea    (%edx,%esi,8),%eax
42c3d9:	89 85 74 ff ff ff    	mov    %eax,-0x8c(%ebp)
42c3df:	eb 0a                	jmp    0x42c3eb
42c3e1:	c7 85 74 ff ff ff 00 	movl   $0x0,-0x8c(%ebp)
42c3e8:	00 00 00
42c3eb:	8b 43 08             	mov    0x8(%ebx),%eax
42c3ee:	3b c1                	cmp    %ecx,%eax
42c3f0:	73 05                	jae    0x42c3f7
42c3f2:	8d 04 c2             	lea    (%edx,%eax,8),%eax
42c3f5:	eb 02                	jmp    0x42c3f9
42c3f7:	33 c0                	xor    %eax,%eax
42c3f9:	8b 8d 74 ff ff ff    	mov    -0x8c(%ebp),%ecx
42c3ff:	8b 00                	mov    (%eax),%eax
42c401:	2b 01                	sub    (%ecx),%eax
42c403:	8b 0d 30 f7 44 00    	mov    0x44f730,%ecx
42c409:	85 c0                	test   %eax,%eax
42c40b:	0f 8e 77 01 00 00    	jle    0x42c588
42c411:	8b 43 08             	mov    0x8(%ebx),%eax
42c414:	3b c1                	cmp    %ecx,%eax
42c416:	73 05                	jae    0x42c41d
42c418:	8d 04 c2             	lea    (%edx,%eax,8),%eax
42c41b:	eb 02                	jmp    0x42c41f
42c41d:	33 c0                	xor    %eax,%eax
42c41f:	8b 50 04             	mov    0x4(%eax),%edx
42c422:	89 85 74 ff ff ff    	mov    %eax,-0x8c(%ebp)
42c428:	89 95 70 ff ff ff    	mov    %edx,-0x90(%ebp)
42c42e:	85 d2                	test   %edx,%edx
42c430:	74 1e                	je     0x42c450
42c432:	b8 01 00 00 00       	mov    $0x1,%eax
42c437:	f0 0f c1 02          	lock xadd %eax,(%edx)
42c43b:	8b 85 74 ff ff ff    	mov    -0x8c(%ebp),%eax
42c441:	8b 0d 30 f7 44 00    	mov    0x44f730,%ecx
42c447:	8b 50 04             	mov    0x4(%eax),%edx
42c44a:	89 95 70 ff ff ff    	mov    %edx,-0x90(%ebp)
42c450:	8b 00                	mov    (%eax),%eax
42c452:	89 85 60 ff ff ff    	mov    %eax,-0xa0(%ebp)
42c458:	a1 38 f7 44 00       	mov    0x44f738,%eax
42c45d:	3b f1                	cmp    %ecx,%esi
42c45f:	73 0b                	jae    0x42c46c
42c461:	8d 14 f0             	lea    (%eax,%esi,8),%edx
42c464:	89 95 68 ff ff ff    	mov    %edx,-0x98(%ebp)
42c46a:	eb 0a                	jmp    0x42c476
42c46c:	c7 85 68 ff ff ff 00 	movl   $0x0,-0x98(%ebp)
42c473:	00 00 00
42c476:	8b 53 08             	mov    0x8(%ebx),%edx
42c479:	3b d1                	cmp    %ecx,%edx
42c47b:	73 05                	jae    0x42c482
42c47d:	8d 0c d0             	lea    (%eax,%edx,8),%ecx
42c480:	eb 02                	jmp    0x42c484
42c482:	33 c9                	xor    %ecx,%ecx
42c484:	8b 95 68 ff ff ff    	mov    -0x98(%ebp),%edx
42c48a:	89 8d 74 ff ff ff    	mov    %ecx,-0x8c(%ebp)
42c490:	8b 52 04             	mov    0x4(%edx),%edx
42c493:	85 d2                	test   %edx,%edx
42c495:	74 09                	je     0x42c4a0
42c497:	b8 01 00 00 00       	mov    $0x1,%eax
42c49c:	f0 0f c1 02          	lock xadd %eax,(%edx)
42c4a0:	8b 51 04             	mov    0x4(%ecx),%edx