443040:	8d 45 f8             	lea    -0x8(%ebp),%eax
443043:	50                   	push   %eax
443044:	ff 75 08             	push   0x8(%ebp)
443047:	ff 75 fc             	push   -0x4(%ebp)
44304a:	e8 70 00 00 00       	call   0x4430bf
44304f:	8b f0                	mov    %eax,%esi
443051:	85 f6                	test   %esi,%esi
443053:	78 30                	js     0x443085
443055:	8b 45 fc             	mov    -0x4(%ebp),%eax
443058:	6a 00                	push   $0x0
44305a:	ff 75 f8             	push   -0x8(%ebp)
44305d:	8b 08                	mov    (%eax),%ecx
44305f:	50                   	push   %eax
443060:	ff 51 54             	call   *0x54(%ecx)
443063:	8b f0                	mov    %eax,%esi
443065:	85 f6                	test   %esi,%esi
443067:	78 1c                	js     0x443085
443069:	8b 45 0c             	mov    0xc(%ebp),%eax
44306c:	8b 4d fc             	mov    -0x4(%ebp),%ecx
44306f:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
443073:	89 08                	mov    %ecx,(%eax)
443075:	8b 4d 10             	mov    0x10(%ebp),%ecx
443078:	85 c9                	test   %ecx,%ecx
44307a:	74 09                	je     0x443085
44307c:	8b 45 f8             	mov    -0x8(%ebp),%eax
44307f:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
443083:	89 01                	mov    %eax,(%ecx)
443085:	85 db                	test   %ebx,%ebx
443087:	74 11                	je     0x44309a
443089:	ff 75 f4             	push   -0xc(%ebp)
44308c:	ff d7                	call   *%edi
44308e:	85 c0                	test   %eax,%eax
443090:	75 08                	jne    0x44309a
443092:	6a 01                	push   $0x1
443094:	ff 15 d8 b2 44 00    	call   *0x44b2d8
44309a:	5f                   	pop    %edi
44309b:	8b 4d f8             	mov    -0x8(%ebp),%ecx
44309e:	85 c9                	test   %ecx,%ecx
4430a0:	74 06                	je     0x4430a8
4430a2:	8b 01                	mov    (%ecx),%eax
4430a4:	51                   	push   %ecx
4430a5:	ff 50 08             	call   *0x8(%eax)
4430a8:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4430ab:	85 c9                	test   %ecx,%ecx
4430ad:	74 06                	je     0x4430b5
4430af:	8b 01                	mov    (%ecx),%eax
4430b1:	51                   	push   %ecx
4430b2:	ff 50 08             	call   *0x8(%eax)
4430b5:	8b c6                	mov    %esi,%eax
4430b7:	5e                   	pop    %esi
4430b8:	5b                   	pop    %ebx
4430b9:	8b e5                	mov    %ebp,%esp
4430bb:	5d                   	pop    %ebp
4430bc:	c2 0c 00             	ret    $0xc
4430bf:	55                   	push   %ebp
4430c0:	8b ec                	mov    %esp,%ebp
4430c2:	83 7d 10 00          	cmpl   $0x0,0x10(%ebp)
4430c6:	56                   	push   %esi
4430c7:	74 46                	je     0x44310f
4430c9:	8b 75 08             	mov    0x8(%ebp),%esi
4430cc:	85 f6                	test   %esi,%esi
4430ce:	74 3f                	je     0x44310f
4430d0:	57                   	push   %edi
4430d1:	ff 75 0c             	push   0xc(%ebp)
4430d4:	ff 15 24 b3 44 00    	call   *0x44b324
4430da:	8b f8                	mov    %eax,%edi
4430dc:	85 ff                	test   %edi,%edi
4430de:	75 14                	jne    0x4430f4
4430e0:	be 0e 00 07 80       	mov    $0x8007000e,%esi
4430e5:	56                   	push   %esi
4430e6:	6a 66                	push   $0x66
4430e8:	68 a8 65 46 00       	push   $0x4665a8
4430ed:	e8 e1 06 fc ff       	call   0x4037d3
4430f2:	eb 16                	jmp    0x44310a
4430f4:	ff 75 10             	push   0x10(%ebp)
4430f7:	8b 06                	mov    (%esi),%eax
4430f9:	57                   	push   %edi
4430fa:	56                   	push   %esi
4430fb:	ff 90 bc 00 00 00    	call   *0xbc(%eax)
443101:	8b f0                	mov    %eax,%esi
443103:	57                   	push   %edi
443104:	ff 15 20 b3 44 00    	call   *0x44b320
44310a:	8b c6                	mov    %esi,%eax
44310c:	5f                   	pop    %edi
44310d:	eb 05                	jmp    0x443114
44310f:	b8 57 00 07 80       	mov    $0x80070057,%eax
443114:	5e                   	pop    %esi
443115:	5d                   	pop    %ebp
443116:	c2 0c 00             	ret    $0xc
443119:	55                   	push   %ebp
44311a:	8b ec                	mov    %esp,%ebp
44311c:	83 ec 18             	sub    $0x18,%esp
44311f:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
443123:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
443127:	56                   	push   %esi
443128:	57                   	push   %edi
443129:	ff 75 0c             	push   0xc(%ebp)
44312c:	ff 15 24 b3 44 00    	call   *0x44b324
443132:	8b f8                	mov    %eax,%edi
443134:	8d 45 e8             	lea    -0x18(%ebp),%eax
443137:	50                   	push   %eax
443138:	ff 15 28 b3 44 00    	call   *0x44b328
44313e:	8b 4d 08             	mov    0x8(%ebp),%ecx
443141:	8d 45 fc             	lea    -0x4(%ebp),%eax
443144:	50                   	push   %eax
443145:	51                   	push   %ecx
443146:	8b 11                	mov    (%ecx),%edx
443148:	ff 52 44             	call   *0x44(%edx)
44314b:	8b f0                	mov    %eax,%esi
44314d:	85 f6                	test   %esi,%esi
44314f:	78 3d                	js     0x44318e
443151:	8d 45 f8             	lea    -0x8(%ebp),%eax
443154:	50                   	push   %eax
443155:	57                   	push   %edi
443156:	ff 75 fc             	push   -0x4(%ebp)
443159:	e8 10 02 00 00       	call   0x44336e
44315e:	8b f0                	mov    %eax,%esi
443160:	83 fe 01             	cmp    $0x1,%esi
443163:	74 29                	je     0x44318e
443165:	85 f6                	test   %esi,%esi
443167:	78 25                	js     0x44318e
443169:	8b 45 f8             	mov    -0x8(%ebp),%eax
44316c:	8d 55 e8             	lea    -0x18(%ebp),%edx
44316f:	52                   	push   %edx
443170:	50                   	push   %eax
443171:	8b 08                	mov    (%eax),%ecx
443173:	ff 51 20             	call   *0x20(%ecx)
443176:	8b f0                	mov    %eax,%esi
443178:	85 f6                	test   %esi,%esi
44317a:	78 12                	js     0x44318e
44317c:	75 10                	jne    0x44318e
44317e:	8b 4d 10             	mov    0x10(%ebp),%ecx
443181:	85 c9                	test   %ecx,%ecx
443183:	74 09                	je     0x44318e
443185:	8b 45 f0             	mov    -0x10(%ebp),%eax
443188:	83 65 f0 00          	andl   $0x0,-0x10(%ebp)
44318c:	89 01                	mov    %eax,(%ecx)
44318e:	8b 4d fc             	mov    -0x4(%ebp),%ecx
443191:	85 c9                	test   %ecx,%ecx
443193:	74 06                	je     0x44319b
443195:	8b 01                	mov    (%ecx),%eax
443197:	51                   	push   %ecx
443198:	ff 50 08             	call   *0x8(%eax)
44319b:	8b 4d f8             	mov    -0x8(%ebp),%ecx
44319e:	85 c9                	test   %ecx,%ecx
4431a0:	74 06                	je     0x4431a8
4431a2:	8b 01                	mov    (%ecx),%eax
4431a4:	51                   	push   %ecx
4431a5:	ff 50 08             	call   *0x8(%eax)
4431a8:	8d 45 e8             	lea    -0x18(%ebp),%eax
4431ab:	50                   	push   %eax
4431ac:	ff 15 2c b3 44 00    	call   *0x44b32c
4431b2:	85 ff                	test   %edi,%edi
4431b4:	74 07                	je     0x4431bd
4431b6:	57                   	push   %edi
4431b7:	ff 15 20 b3 44 00    	call   *0x44b320
4431bd:	5f                   	pop    %edi
4431be:	8b c6                	mov    %esi,%eax
4431c0:	5e                   	pop    %esi
4431c1:	8b e5                	mov    %ebp,%esp
4431c3:	5d                   	pop    %ebp
4431c4:	c2 0c 00             	ret    $0xc
4431c7:	55                   	push   %ebp
4431c8:	8b ec                	mov    %esp,%ebp
4431ca:	83 ec 18             	sub    $0x18,%esp
4431cd:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
4431d1:	8d 45 e8             	lea    -0x18(%ebp),%eax
4431d4:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
4431d8:	56                   	push   %esi
4431d9:	57                   	push   %edi
4431da:	50                   	push   %eax
4431db:	33 ff                	xor    %edi,%edi
4431dd:	ff 15 28 b3 44 00    	call   *0x44b328
4431e3:	8b 45 08             	mov    0x8(%ebp),%eax
4431e6:	8d 55 fc             	lea    -0x4(%ebp),%edx
4431e9:	52                   	push   %edx
4431ea:	50                   	push   %eax
4431eb:	8b 08                	mov    (%eax),%ecx
4431ed:	ff 51 44             	call   *0x44(%ecx)
4431f0:	8b f0                	mov    %eax,%esi
4431f2:	85 f6                	test   %esi,%esi
4431f4:	78 6c                	js     0x443262
4431f6:	ff 75 0c             	push   0xc(%ebp)
4431f9:	ff 15 24 b3 44 00    	call   *0x44b324
4431ff:	8b f8                	mov    %eax,%edi
443201:	85 ff                	test   %edi,%edi
443203:	75 17                	jne    0x44321c
443205:	be 0e 00 07 80       	mov    $0x8007000e,%esi
44320a:	56                   	push   %esi
44320b:	68 a6 02 00 00       	push   $0x2a6
443210:	68 a8 65 46 00       	push   $0x4665a8
443215:	e8 b9 05 fc ff       	call   0x4037d3
44321a:	eb 46                	jmp    0x443262
44321c:	8d 45 f8             	lea    -0x8(%ebp),%eax
44321f:	50                   	push   %eax
443220:	57                   	push   %edi
443221:	ff 75 fc             	push   -0x4(%ebp)
443224:	e8 45 01 00 00       	call   0x44336e
443229:	8b f0                	mov    %eax,%esi
44322b:	83 fe 01             	cmp    $0x1,%esi
44322e:	75 07                	jne    0x443237
443230:	be 90 04 07 80       	mov    $0x80070490,%esi
443235:	eb 2b                	jmp    0x443262
443237:	85 f6                	test   %esi,%esi
443239:	78 27                	js     0x443262
44323b:	8b 45 f8             	mov    -0x8(%ebp),%eax
44323e:	8d 55 e8             	lea    -0x18(%ebp),%edx
443241:	52                   	push   %edx
443242:	50                   	push   %eax
443243:	8b 08                	mov    (%eax),%ecx
443245:	ff 51 20             	call   *0x20(%ecx)
443248:	8b f0                	mov    %eax,%esi
44324a:	83 fe 01             	cmp    $0x1,%esi
44324d:	74 e1                	je     0x443230
44324f:	85 f6                	test   %esi,%esi
443251:	78 0f                	js     0x443262
443253:	6a 00                	push   $0x0
443255:	ff 75 f0             	push   -0x10(%ebp)
443258:	ff 75 10             	push   0x10(%ebp)
44325b:	e8 45 ef fb ff       	call   0x4021a5
443260:	8b f0                	mov    %eax,%esi
443262:	8b 4d fc             	mov    -0x4(%ebp),%ecx
443265:	85 c9                	test   %ecx,%ecx
443267:	74 06                	je     0x44326f
443269:	8b 01                	mov    (%ecx),%eax
44326b:	51                   	push   %ecx
44326c:	ff 50 08             	call   *0x8(%eax)
44326f:	8b 4d f8             	mov    -0x8(%ebp),%ecx
443272:	85 c9                	test   %ecx,%ecx
443274:	74 06                	je     0x44327c
443276:	8b 01                	mov    (%ecx),%eax
443278:	51                   	push   %ecx
443279:	ff 50 08             	call   *0x8(%eax)
44327c:	8d 45 e8             	lea    -0x18(%ebp),%eax
44327f:	50                   	push   %eax
443280:	ff 15 2c b3 44 00    	call   *0x44b32c
443286:	85 ff                	test   %edi,%edi
443288:	74 07                	je     0x443291
44328a:	57                   	push   %edi
44328b:	ff 15 20 b3 44 00    	call   *0x44b320
443291:	5f                   	pop    %edi
443292:	8b c6                	mov    %esi,%eax
443294:	5e                   	pop    %esi
443295:	8b e5                	mov    %ebp,%esp
443297:	5d                   	pop    %ebp
443298:	c2 0c 00             	ret    $0xc
44329b:	55                   	push   %ebp
44329c:	8b ec                	mov    %esp,%ebp
44329e:	83 ec 0c             	sub    $0xc,%esp
4432a1:	53                   	push   %ebx
4432a2:	56                   	push   %esi
4432a3:	8d 45 fc             	lea    -0x4(%ebp),%eax
4432a6:	33 db                	xor    %ebx,%ebx
4432a8:	50                   	push   %eax
4432a9:	ff 75 0c             	push   0xc(%ebp)
4432ac:	89 5d fc             	mov    %ebx,-0x4(%ebp)
4432af:	ff 75 08             	push   0x8(%ebp)
4432b2:	e8 62 fe ff ff       	call   0x443119
4432b7:	8b f0                	mov    %eax,%esi
4432b9:	85 f6                	test   %esi,%esi
4432bb:	78 35                	js     0x4432f2
4432bd:	75 2b                	jne    0x4432ea
4432bf:	8d 45 f4             	lea    -0xc(%ebp),%eax
4432c2:	0f 57 c0             	xorps  %xmm0,%xmm0
4432c5:	50                   	push   %eax
4432c6:	53                   	push   %ebx
4432c7:	ff 75 fc             	push   -0x4(%ebp)
4432ca:	66 0f 13 45 f4       	movlpd %xmm0,-0xc(%ebp)
4432cf:	e8 f9 f5 fb ff       	call   0x4028cd
4432d4:	8b f0                	mov    %eax,%esi
4432d6:	85 f6                	test   %esi,%esi
4432d8:	78 18                	js     0x4432f2
4432da:	8b 4d 10             	mov    0x10(%ebp),%ecx
4432dd:	8b 45 f4             	mov    -0xc(%ebp),%eax
4432e0:	89 01                	mov    %eax,(%ecx)
4432e2:	8b 45 f8             	mov    -0x8(%ebp),%eax
4432e5:	89 41 04             	mov    %eax,0x4(%ecx)
4432e8:	eb 08                	jmp    0x4432f2
4432ea:	8b 45 10             	mov    0x10(%ebp),%eax
4432ed:	89 18                	mov    %ebx,(%eax)
4432ef:	89 58 04             	mov    %ebx,0x4(%eax)
4432f2:	39 5d fc             	cmp    %ebx,-0x4(%ebp)
4432f5:	74 09                	je     0x443300
4432f7:	ff 75 fc             	push   -0x4(%ebp)
4432fa:	ff 15 20 b3 44 00    	call   *0x44b320
443300:	8b c6                	mov    %esi,%eax
443302:	5e                   	pop    %esi
443303:	5b                   	pop    %ebx
443304:	8b e5                	mov    %ebp,%esp
443306:	5d                   	pop    %ebp
443307:	c2 0c 00             	ret    $0xc
44330a:	55                   	push   %ebp
44330b:	8b ec                	mov    %esp,%ebp
44330d:	ff 75 10             	push   0x10(%ebp)
443310:	6a 0a                	push   $0xa
443312:	ff 75 0c             	push   0xc(%ebp)
443315:	ff 75 08             	push   0x8(%ebp)
443318:	e8 04 00 00 00       	call   0x443321
44331d:	5d                   	pop    %ebp
44331e:	c2 0c 00             	ret    $0xc
443321:	55                   	push   %ebp
443322:	8b ec                	mov    %esp,%ebp
443324:	51                   	push   %ecx
443325:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
443329:	8d 45 fc             	lea    -0x4(%ebp),%eax
44332c:	57                   	push   %edi
44332d:	50                   	push   %eax
44332e:	ff 75 0c             	push   0xc(%ebp)
443331:	ff 75 08             	push   0x8(%ebp)
443334:	e8 e0 fd ff ff       	call   0x443119
443339:	8b f8                	mov    %eax,%edi
44333b:	85 ff                	test   %edi,%edi
44333d:	78 17                	js     0x443356
44333f:	75 15                	jne    0x443356
443341:	ff 75 10             	push   0x10(%ebp)
443344:	6a 00                	push   $0x0
443346:	ff 75 fc             	push   -0x4(%ebp)
443349:	e8 42 31 ff ff       	call   0x436490
44334e:	8b 4d 14             	mov    0x14(%ebp),%ecx
443351:	83 c4 0c             	add    $0xc,%esp
443354:	89 01                	mov    %eax,(%ecx)
443356:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
44335a:	74 09                	je     0x443365
44335c:	ff 75 fc             	push   -0x4(%ebp)
44335f:	ff 15 20 b3 44 00    	call   *0x44b320
443365:	8b c7                	mov    %edi,%eax
443367:	5f                   	pop    %edi
443368:	8b e5                	mov    %ebp,%esp
44336a:	5d                   	pop    %ebp
44336b:	c2 10 00             	ret    $0x10
44336e:	55                   	push   %ebp
44336f:	8b ec                	mov    %esp,%ebp
443371:	56                   	push   %esi
443372:	8b 75 08             	mov    0x8(%ebp),%esi
443375:	85 f6                	test   %esi,%esi
443377:	74 45                	je     0x4433be
443379:	83 7d 10 00          	cmpl   $0x0,0x10(%ebp)
44337d:	74 3f                	je     0x4433be
44337f:	57                   	push   %edi
443380:	ff 75 0c             	push   0xc(%ebp)
443383:	ff 15 24 b3 44 00    	call   *0x44b324
443389:	8b f8                	mov    %eax,%edi
44338b:	85 ff                	test   %edi,%edi
44338d:	75 17                	jne    0x4433a6
44338f:	be 0e 00 07 80       	mov    $0x8007000e,%esi
443394:	56                   	push   %esi
443395:	68 40 03 00 00       	push   $0x340
44339a:	68 a8 65 46 00       	push   $0x4665a8
44339f:	e8 2f 04 fc ff       	call   0x4037d3
4433a4:	eb 13                	jmp    0x4433b9