434117:	8b 75 18             	mov    0x18(%ebp),%esi
43411a:	c7 00 01 00 00 00    	movl   $0x1,(%eax)
434120:	8b 07                	mov    (%edi),%eax
434122:	89 06                	mov    %eax,(%esi)
434124:	e8 24 29 01 00       	call   0x446a4d
434129:	8b 0e                	mov    (%esi),%ecx
43412b:	50                   	push   %eax
43412c:	e8 fe 2d 01 00       	call   0x446f2f
434131:	8b f0                	mov    %eax,%esi
434133:	85 f6                	test   %esi,%esi
434135:	79 39                	jns    0x434170
434137:	8b 45 1c             	mov    0x1c(%ebp),%eax
43413a:	8d 4b 44             	lea    0x44(%ebx),%ecx
43413d:	33 d2                	xor    %edx,%edx
43413f:	42                   	inc    %edx
434140:	ff 30                	push   (%eax)
434142:	ff 37                	push   (%edi)
434144:	e8 45 2d 01 00       	call   0x446e8e
434149:	8b 45 08             	mov    0x8(%ebp),%eax
43414c:	8b 55 10             	mov    0x10(%ebp),%edx
43414f:	8b 4d 0c             	mov    0xc(%ebp),%ecx
434152:	ff 30                	push   (%eax)
434154:	8b 12                	mov    (%edx),%edx
434156:	8b 09                	mov    (%ecx),%ecx
434158:	e8 f5 ab fe ff       	call   0x41ed52
43415d:	85 f6                	test   %esi,%esi
43415f:	79 0f                	jns    0x434170
434161:	56                   	push   %esi
434162:	ff 15 a0 12 45 00    	call   *0x4512a0
434168:	8b c8                	mov    %eax,%ecx
43416a:	ff 15 a4 12 45 00    	call   *0x4512a4
434170:	a1 00 f0 44 00       	mov    0x44f000,%eax
434175:	3d 00 f0 44 00       	cmp    $0x44f000,%eax
43417a:	74 20                	je     0x43419c
43417c:	f6 40 1c 04          	testb  $0x4,0x1c(%eax)
434180:	74 1a                	je     0x43419c
434182:	80 78 19 02          	cmpb   $0x2,0x19(%eax)
434186:	72 14                	jb     0x43419c
434188:	56                   	push   %esi
434189:	ff 70 14             	push   0x14(%eax)
43418c:	ba d4 b1 40 00       	mov    $0x40b1d4,%edx
434191:	ff 70 10             	push   0x10(%eax)
434194:	6a 46                	push   $0x46
434196:	59                   	pop    %ecx
434197:	e8 2a c6 ff ff       	call   0x4307c6
43419c:	5f                   	pop    %edi
43419d:	8b c6                	mov    %esi,%eax
43419f:	5e                   	pop    %esi
4341a0:	5b                   	pop    %ebx
4341a1:	5d                   	pop    %ebp
4341a2:	c2 20 00             	ret    $0x20
4341a5:	8b ff                	mov    %edi,%edi
4341a7:	55                   	push   %ebp
4341a8:	8b ec                	mov    %esp,%ebp
4341aa:	8b 45 1c             	mov    0x1c(%ebp),%eax
4341ad:	8b 55 10             	mov    0x10(%ebp),%edx
4341b0:	53                   	push   %ebx
4341b1:	56                   	push   %esi
4341b2:	33 f6                	xor    %esi,%esi
4341b4:	8b d9                	mov    %ecx,%ebx
4341b6:	8b 4d 0c             	mov    0xc(%ebp),%ecx
4341b9:	57                   	push   %edi
4341ba:	8b 7d 20             	mov    0x20(%ebp),%edi
4341bd:	89 30                	mov    %esi,(%eax)
4341bf:	8b 45 08             	mov    0x8(%ebp),%eax
4341c2:	50                   	push   %eax
4341c3:	89 37                	mov    %esi,(%edi)
4341c5:	89 31                	mov    %esi,(%ecx)
4341c7:	89 30                	mov    %esi,(%eax)
4341c9:	89 32                	mov    %esi,(%edx)
4341cb:	e8 39 25 01 00       	call   0x446709
4341d0:	8b f0                	mov    %eax,%esi
4341d2:	85 f6                	test   %esi,%esi
4341d4:	0f 88 82 00 00 00    	js     0x43425c
4341da:	ff 75 1c             	push   0x1c(%ebp)
4341dd:	8d 4b 44             	lea    0x44(%ebx),%ecx
4341e0:	33 d2                	xor    %edx,%edx
4341e2:	57                   	push   %edi
4341e3:	ff 73 38             	push   0x38(%ebx)
4341e6:	68 48 6b 40 00       	push   $0x406b48
4341eb:	e8 e6 a9 fe ff       	call   0x41ebd6
4341f0:	8b f0                	mov    %eax,%esi
4341f2:	81 fe 02 10 04 80    	cmp    $0x80041002,%esi
4341f8:	75 12                	jne    0x43420c
4341fa:	8b 45 18             	mov    0x18(%ebp),%eax
4341fd:	8b 4b 38             	mov    0x38(%ebx),%ecx
434200:	89 08                	mov    %ecx,(%eax)
434202:	8b 45 14             	mov    0x14(%ebp),%eax
434205:	83 20 00             	andl   $0x0,(%eax)
434208:	33 f6                	xor    %esi,%esi
43420a:	eb 5f                	jmp    0x43426b
43420c:	85 f6                	test   %esi,%esi
43420e:	78 34                	js     0x434244
434210:	8b 45 14             	mov    0x14(%ebp),%eax
434213:	8b 75 18             	mov    0x18(%ebp),%esi
434216:	c7 00 01 00 00 00    	movl   $0x1,(%eax)
43421c:	8b 07                	mov    (%edi),%eax
43421e:	89 06                	mov    %eax,(%esi)
434220:	e8 28 28 01 00       	call   0x446a4d
434225:	8b 0e                	mov    (%esi),%ecx
434227:	50                   	push   %eax
434228:	e8 02 2d 01 00       	call   0x446f2f
43422d:	8b f0                	mov    %eax,%esi
43422f:	85 f6                	test   %esi,%esi
434231:	79 38                	jns    0x43426b
434233:	8b 45 1c             	mov    0x1c(%ebp),%eax
434236:	8d 4b 44             	lea    0x44(%ebx),%ecx
434239:	33 d2                	xor    %edx,%edx
43423b:	ff 30                	push   (%eax)
43423d:	ff 37                	push   (%edi)
43423f:	e8 4a 2c 01 00       	call   0x446e8e
434244:	8b 45 08             	mov    0x8(%ebp),%eax
434247:	8b 55 10             	mov    0x10(%ebp),%edx
43424a:	8b 4d 0c             	mov    0xc(%ebp),%ecx
43424d:	ff 30                	push   (%eax)
43424f:	8b 12                	mov    (%edx),%edx
434251:	8b 09                	mov    (%ecx),%ecx
434253:	e8 fa aa fe ff       	call   0x41ed52
434258:	85 f6                	test   %esi,%esi
43425a:	79 0f                	jns    0x43426b
43425c:	56                   	push   %esi
43425d:	ff 15 a0 12 45 00    	call   *0x4512a0
434263:	8b c8                	mov    %eax,%ecx
434265:	ff 15 a4 12 45 00    	call   *0x4512a4
43426b:	a1 00 f0 44 00       	mov    0x44f000,%eax
434270:	3d 00 f0 44 00       	cmp    $0x44f000,%eax
434275:	74 20                	je     0x434297
434277:	f6 40 1c 04          	testb  $0x4,0x1c(%eax)
43427b:	74 1a                	je     0x434297
43427d:	80 78 19 02          	cmpb   $0x2,0x19(%eax)
434281:	72 14                	jb     0x434297
434283:	56                   	push   %esi
434284:	ff 70 14             	push   0x14(%eax)
434287:	ba d4 b1 40 00       	mov    $0x40b1d4,%edx
43428c:	ff 70 10             	push   0x10(%eax)
43428f:	6a 45                	push   $0x45
434291:	59                   	pop    %ecx
434292:	e8 2f c5 ff ff       	call   0x4307c6
434297:	5f                   	pop    %edi
434298:	8b c6                	mov    %esi,%eax
43429a:	5e                   	pop    %esi
43429b:	5b                   	pop    %ebx
43429c:	5d                   	pop    %ebp
43429d:	c2 20 00             	ret    $0x20
4342a0:	6a 04                	push   $0x4
4342a2:	b8 7e 3c 42 00       	mov    $0x423c7e,%eax
4342a7:	e8 c1 b3 fe ff       	call   0x41f66d
4342ac:	a1 00 f0 44 00       	mov    0x44f000,%eax
4342b1:	bb 00 f0 44 00       	mov    $0x44f000,%ebx
4342b6:	3b c3                	cmp    %ebx,%eax
4342b8:	74 22                	je     0x4342dc
4342ba:	f6 40 1c 04          	testb  $0x4,0x1c(%eax)
4342be:	74 1c                	je     0x4342dc
4342c0:	80 78 19 05          	cmpb   $0x5,0x19(%eax)
4342c4:	72 16                	jb     0x4342dc
4342c6:	ff 75 0c             	push   0xc(%ebp)
4342c9:	ba d4 b1 40 00       	mov    $0x40b1d4,%edx
4342ce:	ff 70 14             	push   0x14(%eax)
4342d1:	ff 70 10             	push   0x10(%eax)
4342d4:	6a 0c                	push   $0xc
4342d6:	59                   	pop    %ecx
4342d7:	e8 ea c4 ff ff       	call   0x4307c6
4342dc:	8b 75 08             	mov    0x8(%ebp),%esi
4342df:	8d 4d f0             	lea    -0x10(%ebp),%ecx
4342e2:	ff 76 40             	push   0x40(%esi)
4342e5:	e8 1b f6 ff ff       	call   0x433905
4342ea:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
4342ee:	8d 7e 14             	lea    0x14(%esi),%edi
4342f1:	f0 ff 07             	lock incl (%edi)
4342f4:	83 7e 10 01          	cmpl   $0x1,0x10(%esi)
4342f8:	75 07                	jne    0x434301
4342fa:	be 33 10 04 80       	mov    $0x80041033,%esi
4342ff:	eb 18                	jmp    0x434319
434301:	8b 46 38             	mov    0x38(%esi),%eax
434304:	ff 75 0c             	push   0xc(%ebp)
434307:	50                   	push   %eax
434308:	8b 08                	mov    (%eax),%ecx
43430a:	8b 71 10             	mov    0x10(%ecx),%esi
43430d:	8b ce                	mov    %esi,%ecx
43430f:	ff 15 c4 12 45 00    	call   *0x4512c4
434315:	ff d6                	call   *%esi
434317:	8b f0                	mov    %eax,%esi
434319:	f0 ff 0f             	lock decl (%edi)
43431c:	85 f6                	test   %esi,%esi
43431e:	79 0f                	jns    0x43432f
434320:	56                   	push   %esi
434321:	ff 15 a0 12 45 00    	call   *0x4512a0
434327:	8b c8                	mov    %eax,%ecx
434329:	ff 15 a4 12 45 00    	call   *0x4512a4
43432f:	a1 00 f0 44 00       	mov    0x44f000,%eax
434334:	3b c3                	cmp    %ebx,%eax
434336:	74 20                	je     0x434358
434338:	f6 40 1c 04          	testb  $0x4,0x1c(%eax)
43433c:	74 1a                	je     0x434358
43433e:	80 78 19 02          	cmpb   $0x2,0x19(%eax)
434342:	72 14                	jb     0x434358
434344:	56                   	push   %esi
434345:	ff 70 14             	push   0x14(%eax)
434348:	ba d4 b1 40 00       	mov    $0x40b1d4,%edx
43434d:	ff 70 10             	push   0x10(%eax)
434350:	6a 0d                	push   $0xd
434352:	59                   	pop    %ecx
434353:	e8 6e c4 ff ff       	call   0x4307c6
434358:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
43435f:	83 7d f0 00          	cmpl   $0x0,-0x10(%ebp)
434363:	74 06                	je     0x43436b
434365:	ff 15 64 30 45 00    	call   *0x453064
43436b:	8b c6                	mov    %esi,%eax
43436d:	e8 c9 b2 fe ff       	call   0x41f63b
434372:	c2 08 00             	ret    $0x8
434375:	cc                   	int3
434376:	cc                   	int3
434377:	cc                   	int3
434378:	cc                   	int3
434379:	cc                   	int3
43437a:	cc                   	int3
43437b:	cc                   	int3
43437c:	cc                   	int3
43437d:	cc                   	int3
43437e:	cc                   	int3
43437f:	cc                   	int3
434380:	8b ff                	mov    %edi,%edi
434382:	55                   	push   %ebp
434383:	8b ec                	mov    %esp,%ebp
434385:	83 ec 20             	sub    $0x20,%esp
434388:	a1 00 f0 44 00       	mov    0x44f000,%eax
43438d:	3d 00 f0 44 00       	cmp    $0x44f000,%eax
434392:	74 22                	je     0x4343b6
434394:	f6 40 1c 04          	testb  $0x4,0x1c(%eax)
434398:	74 1c                	je     0x4343b6
43439a:	80 78 19 05          	cmpb   $0x5,0x19(%eax)
43439e:	72 16                	jb     0x4343b6
4343a0:	ff 75 0c             	push   0xc(%ebp)
4343a3:	ba d4 b1 40 00       	mov    $0x40b1d4,%edx
4343a8:	ff 70 14             	push   0x14(%eax)
4343ab:	ff 70 10             	push   0x10(%eax)
4343ae:	6a 49                	push   $0x49
4343b0:	59                   	pop    %ecx
4343b1:	e8 10 c4 ff ff       	call   0x4307c6
4343b6:	53                   	push   %ebx
4343b7:	56                   	push   %esi
4343b8:	57                   	push   %edi
4343b9:	8b 7d 08             	mov    0x8(%ebp),%edi
4343bc:	8d 5f 14             	lea    0x14(%edi),%ebx
4343bf:	f0 ff 03             	lock incl (%ebx)
4343c2:	83 7f 10 01          	cmpl   $0x1,0x10(%edi)
4343c6:	75 07                	jne    0x4343cf
4343c8:	be 33 10 04 80       	mov    $0x80041033,%esi
4343cd:	eb 7d                	jmp    0x43444c
4343cf:	51                   	push   %ecx
4343d0:	8d 45 f8             	lea    -0x8(%ebp),%eax
4343d3:	8b cf                	mov    %edi,%ecx
4343d5:	50                   	push   %eax
4343d6:	8d 45 ec             	lea    -0x14(%ebp),%eax
4343d9:	50                   	push   %eax
4343da:	8d 45 fc             	lea    -0x4(%ebp),%eax
4343dd:	50                   	push   %eax
4343de:	8d 45 e0             	lea    -0x20(%ebp),%eax
4343e1:	50                   	push   %eax
4343e2:	8d 45 f4             	lea    -0xc(%ebp),%eax
4343e5:	50                   	push   %eax
4343e6:	8d 45 f0             	lea    -0x10(%ebp),%eax
4343e9:	50                   	push   %eax
4343ea:	8d 45 e8             	lea    -0x18(%ebp),%eax
4343ed:	50                   	push   %eax
4343ee:	e8 b2 fd ff ff       	call   0x4341a5
4343f3:	8b f0                	mov    %eax,%esi
4343f5:	85 f6                	test   %esi,%esi
4343f7:	78 53                	js     0x43444c
4343f9:	8b 45 fc             	mov    -0x4(%ebp),%eax
4343fc:	ff 75 0c             	push   0xc(%ebp)
4343ff:	50                   	push   %eax
434400:	8b 08                	mov    (%eax),%ecx
434402:	8b 71 10             	mov    0x10(%ecx),%esi
434405:	8b ce                	mov    %esi,%ecx
434407:	ff 15 c4 12 45 00    	call   *0x4512c4
43440d:	ff d6                	call   *%esi
43440f:	8b f0                	mov    %eax,%esi
434411:	8b 45 f8             	mov    -0x8(%ebp),%eax
434414:	89 45 fc             	mov    %eax,-0x4(%ebp)
434417:	8b 45 f4             	mov    -0xc(%ebp),%eax
43441a:	89 45 e4             	mov    %eax,-0x1c(%ebp)
43441d:	8b 45 f0             	mov    -0x10(%ebp),%eax
434420:	89 45 e0             	mov    %eax,-0x20(%ebp)
434423:	ff 15 64 30 45 00    	call   *0x453064
434429:	8b 45 fc             	mov    -0x4(%ebp),%eax
43442c:	85 c0                	test   %eax,%eax
43442e:	74 0e                	je     0x43443e
434430:	ff 75 ec             	push   -0x14(%ebp)
434433:	8d 4f 44             	lea    0x44(%edi),%ecx
434436:	33 d2                	xor    %edx,%edx
434438:	50                   	push   %eax
434439:	e8 50 2a 01 00       	call   0x446e8e
43443e:	ff 75 e8             	push   -0x18(%ebp)
434441:	8b 55 e4             	mov    -0x1c(%ebp),%edx
434444:	8b 4d e0             	mov    -0x20(%ebp),%ecx
434447:	e8 06 a9 fe ff       	call   0x41ed52
43444c:	f0 ff 0b             	lock decl (%ebx)
43444f:	85 f6                	test   %esi,%esi
434451:	79 0f                	jns    0x434462
434453:	56                   	push   %esi
434454:	ff 15 a0 12 45 00    	call   *0x4512a0
43445a:	8b c8                	mov    %eax,%ecx
43445c:	ff 15 a4 12 45 00    	call   *0x4512a4
434462:	a1 00 f0 44 00       	mov    0x44f000,%eax
434467:	3d 00 f0 44 00       	cmp    $0x44f000,%eax
43446c:	74 20                	je     0x43448e
43446e:	f6 40 1c 04          	testb  $0x4,0x1c(%eax)
434472:	74 1a                	je     0x43448e
434474:	80 78 19 02          	cmpb   $0x2,0x19(%eax)
434478:	72 14                	jb     0x43448e
43447a:	56                   	push   %esi
43447b:	ff 70 14             	push   0x14(%eax)
43447e:	ba d4 b1 40 00       	mov    $0x40b1d4,%edx
434483:	ff 70 10             	push   0x10(%eax)
434486:	6a 4a                	push   $0x4a
434488:	59                   	pop    %ecx
434489:	e8 38 c3 ff ff       	call   0x4307c6
43448e:	5f                   	pop    %edi
43448f:	8b c6                	mov    %esi,%eax
434491:	5e                   	pop    %esi
434492:	5b                   	pop    %ebx
434493:	c9                   	leave
434494:	c2 08 00             	ret    $0x8
434497:	cc                   	int3
434498:	cc                   	int3
434499:	cc                   	int3
43449a:	cc                   	int3
43449b:	cc                   	int3
43449c:	cc                   	int3
43449d:	cc                   	int3
43449e:	cc                   	int3
43449f:	cc                   	int3
4344a0:	6a 04                	push   $0x4
4344a2:	b8 7e 3c 42 00       	mov    $0x423c7e,%eax
4344a7:	e8 c1 b1 fe ff       	call   0x41f66d
4344ac:	a1 00 f0 44 00       	mov    0x44f000,%eax
4344b1:	bb 00 f0 44 00       	mov    $0x44f000,%ebx
4344b6:	3b c3                	cmp    %ebx,%eax
4344b8:	74 23                	je     0x4344dd
4344ba:	f6 40 1c 04          	testb  $0x4,0x1c(%eax)
4344be:	74 1d                	je     0x4344dd
4344c0:	80 78 19 05          	cmpb   $0x5,0x19(%eax)
4344c4:	72 17                	jb     0x4344dd
4344c6:	ff 75 14             	push   0x14(%ebp)
4344c9:	ff 75 10             	push   0x10(%ebp)
4344cc:	ff 75 0c             	push   0xc(%ebp)
4344cf:	ff 70 14             	push   0x14(%eax)
4344d2:	ff 70 10             	push   0x10(%eax)
4344d5:	6a 1b                	push   $0x1b