44917a:	8b 4f 1c             	mov    0x1c(%edi),%ecx
44917d:	53                   	push   %ebx
44917e:	8d 56 1c             	lea    0x1c(%esi),%edx
449181:	e8 a2 02 00 00       	call   0x449428
449186:	83 c4 18             	add    $0x18,%esp
449189:	8b c6                	mov    %esi,%eax
44918b:	5f                   	pop    %edi
44918c:	5e                   	pop    %esi
44918d:	5b                   	pop    %ebx
44918e:	5d                   	pop    %ebp
44918f:	c2 04 00             	ret    $0x4
449192:	55                   	push   %ebp
449193:	8b ec                	mov    %esp,%ebp
449195:	8b 45 08             	mov    0x8(%ebp),%eax
449198:	89 01                	mov    %eax,(%ecx)
44919a:	33 c0                	xor    %eax,%eax
44919c:	89 41 04             	mov    %eax,0x4(%ecx)
44919f:	89 41 08             	mov    %eax,0x8(%ecx)
4491a2:	89 41 0c             	mov    %eax,0xc(%ecx)
4491a5:	89 41 10             	mov    %eax,0x10(%ecx)
4491a8:	89 41 14             	mov    %eax,0x14(%ecx)
4491ab:	89 41 18             	mov    %eax,0x18(%ecx)
4491ae:	89 41 1c             	mov    %eax,0x1c(%ecx)
4491b1:	89 41 20             	mov    %eax,0x20(%ecx)
4491b4:	89 41 24             	mov    %eax,0x24(%ecx)
4491b7:	66 89 41 02          	mov    %ax,0x2(%ecx)
4491bb:	8b 01                	mov    (%ecx),%eax
4491bd:	a8 08                	test   $0x8,%al
4491bf:	74 05                	je     0x4491c6
4491c1:	83 c8 06             	or     $0x6,%eax
4491c4:	89 01                	mov    %eax,(%ecx)
4491c6:	f6 01 10             	testb  $0x10,(%ecx)
4491c9:	74 06                	je     0x4491d1
4491cb:	c7 01 10 00 00 00    	movl   $0x10,(%ecx)
4491d1:	8b c1                	mov    %ecx,%eax
4491d3:	5d                   	pop    %ebp
4491d4:	c2 04 00             	ret    $0x4
4491d7:	55                   	push   %ebp
4491d8:	8b ec                	mov    %esp,%ebp
4491da:	56                   	push   %esi
4491db:	8b f1                	mov    %ecx,%esi
4491dd:	57                   	push   %edi
4491de:	33 ff                	xor    %edi,%edi
4491e0:	68 a0 0f 00 00       	push   $0xfa0
4491e5:	8d 46 14             	lea    0x14(%esi),%eax
4491e8:	c7 46 04 01 00 00 00 	movl   $0x1,0x4(%esi)
4491ef:	c7 06 94 38 4b 00    	movl   $0x4b3894,(%esi)
4491f5:	89 7e 08             	mov    %edi,0x8(%esi)
4491f8:	50                   	push   %eax
4491f9:	89 7e 0c             	mov    %edi,0xc(%esi)
4491fc:	ff 15 2c d3 48 00    	call   *0x48d32c
449202:	8b 4d 08             	mov    0x8(%ebp),%ecx
449205:	8d 56 2c             	lea    0x2c(%esi),%edx
449208:	57                   	push   %edi
449209:	89 3a                	mov    %edi,(%edx)
44920b:	89 7e 30             	mov    %edi,0x30(%esi)
44920e:	e8 15 02 00 00       	call   0x449428
449213:	8d 46 34             	lea    0x34(%esi),%eax
449216:	c7 04 24 f4 01 00 00 	movl   $0x1f4,(%esp)
44921d:	50                   	push   %eax
44921e:	ff 15 5c d2 48 00    	call   *0x48d25c
449224:	5f                   	pop    %edi
449225:	8b c6                	mov    %esi,%eax
449227:	5e                   	pop    %esi
449228:	5d                   	pop    %ebp
449229:	c2 04 00             	ret    $0x4
44922c:	56                   	push   %esi
44922d:	8b f1                	mov    %ecx,%esi
44922f:	e8 b2 01 00 00       	call   0x4493e6
449234:	8b 4e 20             	mov    0x20(%esi),%ecx
449237:	85 c9                	test   %ecx,%ecx
449239:	74 0b                	je     0x449246
44923b:	ff 49 04             	decl   0x4(%ecx)
44923e:	75 06                	jne    0x449246
449240:	8b 01                	mov    (%ecx),%eax
449242:	6a 01                	push   $0x1
449244:	ff 10                	call   *(%eax)
449246:	8b 4e 24             	mov    0x24(%esi),%ecx
449249:	5e                   	pop    %esi
44924a:	85 c9                	test   %ecx,%ecx
44924c:	74 0b                	je     0x449259
44924e:	ff 49 04             	decl   0x4(%ecx)
449251:	75 06                	jne    0x449259
449253:	8b 01                	mov    (%ecx),%eax
449255:	6a 01                	push   $0x1
449257:	ff 10                	call   *(%eax)
449259:	c3                   	ret
44925a:	57                   	push   %edi
44925b:	8b f9                	mov    %ecx,%edi
44925d:	c7 07 94 38 4b 00    	movl   $0x4b3894,(%edi)
449263:	e8 b8 07 00 00       	call   0x449a20
449268:	ff 77 2c             	push   0x2c(%edi)
44926b:	ff 15 0c d3 48 00    	call   *0x48d30c
449271:	ff 77 30             	push   0x30(%edi)
449274:	ff 15 0c d3 48 00    	call   *0x48d30c
44927a:	ff 77 08             	push   0x8(%edi)
44927d:	e8 dc 62 fd ff       	call   0x41f55e
449282:	59                   	pop    %ecx
449283:	8d 47 14             	lea    0x14(%edi),%eax
449286:	50                   	push   %eax
449287:	ff 15 48 d2 48 00    	call   *0x48d248
44928d:	c7 07 98 38 4b 00    	movl   $0x4b3898,(%edi)
449293:	5f                   	pop    %edi
449294:	c3                   	ret
449295:	55                   	push   %ebp
449296:	8b ec                	mov    %esp,%ebp
449298:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
44929c:	56                   	push   %esi
44929d:	8b f1                	mov    %ecx,%esi
44929f:	c7 06 98 38 4b 00    	movl   $0x4b3898,(%esi)
4492a5:	74 07                	je     0x4492ae
4492a7:	56                   	push   %esi
4492a8:	e8 b1 62 fd ff       	call   0x41f55e
4492ad:	59                   	pop    %ecx
4492ae:	8b c6                	mov    %esi,%eax
4492b0:	5e                   	pop    %esi
4492b1:	5d                   	pop    %ebp
4492b2:	c2 04 00             	ret    $0x4
4492b5:	55                   	push   %ebp
4492b6:	8b ec                	mov    %esp,%ebp
4492b8:	56                   	push   %esi
4492b9:	8b f1                	mov    %ecx,%esi
4492bb:	e8 9a ff ff ff       	call   0x44925a
4492c0:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
4492c4:	74 07                	je     0x4492cd
4492c6:	56                   	push   %esi
4492c7:	e8 92 62 fd ff       	call   0x41f55e
4492cc:	59                   	pop    %ecx
4492cd:	8b c6                	mov    %esi,%eax
4492cf:	5e                   	pop    %esi
4492d0:	5d                   	pop    %ebp
4492d1:	c2 04 00             	ret    $0x4
4492d4:	56                   	push   %esi
4492d5:	6a 38                	push   $0x38
4492d7:	8b f1                	mov    %ecx,%esi
4492d9:	e8 0c 62 fd ff       	call   0x41f4ea
4492de:	59                   	pop    %ecx
4492df:	85 c0                	test   %eax,%eax
4492e1:	74 0a                	je     0x4492ed
4492e3:	56                   	push   %esi
4492e4:	8b c8                	mov    %eax,%ecx
4492e6:	e8 ec fe ff ff       	call   0x4491d7
4492eb:	5e                   	pop    %esi
4492ec:	c3                   	ret
4492ed:	33 c0                	xor    %eax,%eax
4492ef:	5e                   	pop    %esi
4492f0:	c3                   	ret
4492f1:	55                   	push   %ebp
4492f2:	8b ec                	mov    %esp,%ebp
4492f4:	53                   	push   %ebx
4492f5:	56                   	push   %esi
4492f6:	57                   	push   %edi
4492f7:	8b f9                	mov    %ecx,%edi
4492f9:	8d 77 14             	lea    0x14(%edi),%esi
4492fc:	56                   	push   %esi
4492fd:	ff 15 40 d3 48 00    	call   *0x48d340
449303:	80 7d 0c 00          	cmpb   $0x0,0xc(%ebp)
449307:	8b 5f 0c             	mov    0xc(%edi),%ebx
44930a:	74 22                	je     0x44932e
44930c:	ff 77 0c             	push   0xc(%edi)
44930f:	8b 4d 08             	mov    0x8(%ebp),%ecx
449312:	e8 cc 10 00 00       	call   0x44a3e3
449317:	ff 77 0c             	push   0xc(%edi)
44931a:	8b 4d 08             	mov    0x8(%ebp),%ecx
44931d:	ff 77 08             	push   0x8(%edi)
449320:	e8 36 22 00 00       	call   0x44b55b
449325:	50                   	push   %eax
449326:	e8 55 5b fd ff       	call   0x41ee80
44932b:	83 c4 0c             	add    $0xc,%esp
44932e:	56                   	push   %esi
44932f:	ff 15 50 d2 48 00    	call   *0x48d250
449335:	5f                   	pop    %edi
449336:	5e                   	pop    %esi
449337:	8b c3                	mov    %ebx,%eax
449339:	5b                   	pop    %ebx
44933a:	5d                   	pop    %ebp
44933b:	c2 08 00             	ret    $0x8
44933e:	53                   	push   %ebx
44933f:	56                   	push   %esi
449340:	57                   	push   %edi
449341:	8b f9                	mov    %ecx,%edi
449343:	8d 77 14             	lea    0x14(%edi),%esi
449346:	56                   	push   %esi
449347:	ff 15 40 d3 48 00    	call   *0x48d340
44934d:	8d 47 34             	lea    0x34(%edi),%eax
449350:	ff 30                	push   (%eax)
449352:	50                   	push   %eax
449353:	ff 15 5c d2 48 00    	call   *0x48d25c
449359:	3d f6 01 00 00       	cmp    $0x1f6,%eax
44935e:	75 07                	jne    0x449367
449360:	33 db                	xor    %ebx,%ebx
449362:	39 5f 0c             	cmp    %ebx,0xc(%edi)
449365:	74 02                	je     0x449369
449367:	b3 01                	mov    $0x1,%bl
449369:	56                   	push   %esi
44936a:	ff 15 50 d2 48 00    	call   *0x48d250
449370:	5f                   	pop    %edi
449371:	5e                   	pop    %esi
449372:	8a c3                	mov    %bl,%al
449374:	5b                   	pop    %ebx
449375:	c3                   	ret
449376:	55                   	push   %ebp
449377:	8b ec                	mov    %esp,%ebp
449379:	53                   	push   %ebx
44937a:	56                   	push   %esi
44937b:	8b d9                	mov    %ecx,%ebx
44937d:	57                   	push   %edi
44937e:	8d 73 14             	lea    0x14(%ebx),%esi
449381:	56                   	push   %esi
449382:	ff 15 40 d3 48 00    	call   *0x48d340
449388:	8b 7b 0c             	mov    0xc(%ebx),%edi
44938b:	ff 73 0c             	push   0xc(%ebx)
44938e:	8b 4d 08             	mov    0x8(%ebp),%ecx
449391:	e8 4d 10 00 00       	call   0x44a3e3
449396:	ff 73 0c             	push   0xc(%ebx)
449399:	8b 4d 08             	mov    0x8(%ebp),%ecx
44939c:	ff 73 08             	push   0x8(%ebx)
44939f:	e8 b7 21 00 00       	call   0x44b55b
4493a4:	50                   	push   %eax
4493a5:	e8 d6 5a fd ff       	call   0x41ee80
4493aa:	ff 73 0c             	push   0xc(%ebx)
4493ad:	6a 00                	push   $0x0
4493af:	ff 73 08             	push   0x8(%ebx)
4493b2:	e8 99 79 fd ff       	call   0x420d50
4493b7:	83 c4 18             	add    $0x18,%esp
4493ba:	c7 43 0c 00 00 00 00 	movl   $0x0,0xc(%ebx)
4493c1:	56                   	push   %esi
4493c2:	ff 15 50 d2 48 00    	call   *0x48d250
4493c8:	8b c7                	mov    %edi,%eax
4493ca:	5f                   	pop    %edi
4493cb:	5e                   	pop    %esi
4493cc:	5b                   	pop    %ebx
4493cd:	5d                   	pop    %ebp
4493ce:	c2 04 00             	ret    $0x4
4493d1:	56                   	push   %esi
4493d2:	8b f1                	mov    %ecx,%esi
4493d4:	83 3e 00             	cmpl   $0x0,(%esi)
4493d7:	74 0b                	je     0x4493e4
4493d9:	ff 36                	push   (%esi)
4493db:	ff 15 0c d3 48 00    	call   *0x48d30c
4493e1:	83 26 00             	andl   $0x0,(%esi)
4493e4:	5e                   	pop    %esi
4493e5:	c3                   	ret
4493e6:	56                   	push   %esi
4493e7:	8b f1                	mov    %ecx,%esi
4493e9:	e8 1e 00 00 00       	call   0x44940c
4493ee:	8d 4e 08             	lea    0x8(%esi),%ecx
4493f1:	e8 db ff ff ff       	call   0x4493d1
4493f6:	8d 4e 10             	lea    0x10(%esi),%ecx
4493f9:	e8 d3 ff ff ff       	call   0x4493d1
4493fe:	8d 4e 18             	lea    0x18(%esi),%ecx
449401:	e8 cb ff ff ff       	call   0x4493d1
449406:	83 66 04 00          	andl   $0x0,0x4(%esi)
44940a:	5e                   	pop    %esi
44940b:	c3                   	ret
44940c:	56                   	push   %esi
44940d:	8b f1                	mov    %ecx,%esi
44940f:	8d 4e 1c             	lea    0x1c(%esi),%ecx
449412:	e8 ba ff ff ff       	call   0x4493d1
449417:	8d 4e 0c             	lea    0xc(%esi),%ecx
44941a:	e8 b2 ff ff ff       	call   0x4493d1
44941f:	8d 4e 14             	lea    0x14(%esi),%ecx
449422:	5e                   	pop    %esi
449423:	e9 a9 ff ff ff       	jmp    0x4493d1
449428:	55                   	push   %ebp
449429:	8b ec                	mov    %esp,%ebp
44942b:	57                   	push   %edi
44942c:	8b f9                	mov    %ecx,%edi
44942e:	85 ff                	test   %edi,%edi
449430:	75 04                	jne    0x449436
449432:	21 0a                	and    %ecx,(%edx)
449434:	eb 1d                	jmp    0x449453
449436:	6a 02                	push   $0x2
449438:	ff 75 08             	push   0x8(%ebp)
44943b:	6a 00                	push   $0x0
44943d:	52                   	push   %edx
44943e:	ff 15 44 d3 48 00    	call   *0x48d344
449444:	50                   	push   %eax
449445:	57                   	push   %edi
449446:	ff 15 44 d3 48 00    	call   *0x48d344
44944c:	50                   	push   %eax
44944d:	ff 15 3c d3 48 00    	call   *0x48d33c
449453:	5f                   	pop    %edi
449454:	5d                   	pop    %ebp
449455:	c3                   	ret
449456:	e8 07 00 00 00       	call   0x449462
44945b:	f7 d8                	neg    %eax
44945d:	1b c0                	sbb    %eax,%eax
44945f:	f7 d8                	neg    %eax
449461:	c3                   	ret
449462:	53                   	push   %ebx
449463:	56                   	push   %esi
449464:	57                   	push   %edi
449465:	8b f9                	mov    %ecx,%edi
449467:	33 f6                	xor    %esi,%esi
449469:	8b 4f 20             	mov    0x20(%edi),%ecx
44946c:	32 db                	xor    %bl,%bl
44946e:	85 c9                	test   %ecx,%ecx
449470:	74 29                	je     0x44949b
449472:	e8 c7 fe ff ff       	call   0x44933e
449477:	8a d8                	mov    %al,%bl
449479:	84 db                	test   %bl,%bl
44947b:	74 05                	je     0x449482
44947d:	6a 02                	push   $0x2
44947f:	5e                   	pop    %esi
449480:	eb 19                	jmp    0x44949b
449482:	8d 4f 08             	lea    0x8(%edi),%ecx
449485:	e8 47 ff ff ff       	call   0x4493d1
44948a:	8b 4f 20             	mov    0x20(%edi),%ecx
44948d:	ff 49 04             	decl   0x4(%ecx)
449490:	75 06                	jne    0x449498
449492:	8b 01                	mov    (%ecx),%eax
449494:	6a 01                	push   $0x1
449496:	ff 10                	call   *(%eax)
449498:	21 77 20             	and    %esi,0x20(%edi)
44949b:	8b cf                	mov    %edi,%ecx
44949d:	e8 03 03 00 00       	call   0x4497a5
4494a2:	84 c0                	test   %al,%al
4494a4:	74 13                	je     0x4494b9
4494a6:	84 db                	test   %bl,%bl
4494a8:	74 05                	je     0x4494af
4494aa:	83 ce 08             	or     $0x8,%esi
4494ad:	eb 39                	jmp    0x4494e8
4494af:	8d 4f 10             	lea    0x10(%edi),%ecx
4494b2:	e8 1a ff ff ff       	call   0x4493d1
4494b7:	eb 2f                	jmp    0x4494e8
4494b9:	8b 4f 24             	mov    0x24(%edi),%ecx
4494bc:	85 c9                	test   %ecx,%ecx
4494be:	74 28                	je     0x4494e8
4494c0:	e8 79 fe ff ff       	call   0x44933e
4494c5:	84 c0                	test   %al,%al
4494c7:	74 05                	je     0x4494ce
4494c9:	83 ce 04             	or     $0x4,%esi
4494cc:	eb 1a                	jmp    0x4494e8
4494ce:	8d 4f 10             	lea    0x10(%edi),%ecx
4494d1:	e8 fb fe ff ff       	call   0x4493d1
4494d6:	8b 4f 24             	mov    0x24(%edi),%ecx
4494d9:	ff 49 04             	decl   0x4(%ecx)
4494dc:	75 06                	jne    0x4494e4
4494de:	8b 01                	mov    (%ecx),%eax
4494e0:	6a 01                	push   $0x1
4494e2:	ff 10                	call   *(%eax)
4494e4:	83 67 24 00          	andl   $0x0,0x24(%edi)
4494e8:	8b cf                	mov    %edi,%ecx
4494ea:	e8 26 03 00 00       	call   0x449815
4494ef:	84 c0                	test   %al,%al
4494f1:	74 03                	je     0x4494f6
4494f3:	83 ce 01             	or     $0x1,%esi
4494f6:	85 f6                	test   %esi,%esi
4494f8:	75 03                	jne    0x4494fd