43bfe1:	8b cf                	mov    %edi,%ecx
43bfe3:	e8 c7 c5 ff ff       	call   0x4385af
43bfe8:	8b f0                	mov    %eax,%esi
43bfea:	85 f6                	test   %esi,%esi
43bfec:	78 5c                	js     0x43c04a
43bfee:	8b 45 fc             	mov    -0x4(%ebp),%eax
43bff1:	53                   	push   %ebx
43bff2:	ff 75 10             	push   0x10(%ebp)
43bff5:	ff 75 0c             	push   0xc(%ebp)
43bff8:	8b 30                	mov    (%eax),%esi
43bffa:	ff 75 08             	push   0x8(%ebp)
43bffd:	50                   	push   %eax
43bffe:	8b 4e 0c             	mov    0xc(%esi),%ecx
43c001:	ff 15 c4 12 45 00    	call   *0x4512c4
43c007:	ff 56 0c             	call   *0xc(%esi)
43c00a:	8b 5d f8             	mov    -0x8(%ebp),%ebx
43c00d:	8b f0                	mov    %eax,%esi
43c00f:	8b 45 f4             	mov    -0xc(%ebp),%eax
43c012:	89 45 fc             	mov    %eax,-0x4(%ebp)
43c015:	8b 45 f0             	mov    -0x10(%ebp),%eax
43c018:	89 45 e4             	mov    %eax,-0x1c(%ebp)
43c01b:	ff 15 64 30 45 00    	call   *0x453064
43c021:	85 db                	test   %ebx,%ebx
43c023:	74 12                	je     0x43c037
43c025:	ff 75 ec             	push   -0x14(%ebp)
43c028:	8d 8f f0 00 00 00    	lea    0xf0(%edi),%ecx
43c02e:	53                   	push   %ebx
43c02f:	6a 09                	push   $0x9
43c031:	5a                   	pop    %edx
43c032:	e8 57 ae 00 00       	call   0x446e8e
43c037:	ff 75 e8             	push   -0x18(%ebp)
43c03a:	8b 55 fc             	mov    -0x4(%ebp),%edx
43c03d:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
43c040:	e8 0d 2d fe ff       	call   0x41ed52
43c045:	5b                   	pop    %ebx
43c046:	85 f6                	test   %esi,%esi
43c048:	79 0f                	jns    0x43c059
43c04a:	56                   	push   %esi
43c04b:	ff 15 a0 12 45 00    	call   *0x4512a0
43c051:	8b c8                	mov    %eax,%ecx
43c053:	ff 15 a4 12 45 00    	call   *0x4512a4
43c059:	a1 00 f0 44 00       	mov    0x44f000,%eax
43c05e:	3d 00 f0 44 00       	cmp    $0x44f000,%eax
43c063:	74 5e                	je     0x43c0c3
43c065:	f6 40 1c 04          	testb  $0x4,0x1c(%eax)
43c069:	74 58                	je     0x43c0c3
43c06b:	80 78 19 02          	cmpb   $0x2,0x19(%eax)
43c06f:	72 52                	jb     0x43c0c3
43c071:	56                   	push   %esi
43c072:	ff 70 14             	push   0x14(%eax)
43c075:	b9 94 00 00 00       	mov    $0x94,%ecx
43c07a:	ff 70 10             	push   0x10(%eax)
43c07d:	eb 3a                	jmp    0x43c0b9
43c07f:	be 24 10 04 80       	mov    $0x80041024,%esi
43c084:	56                   	push   %esi
43c085:	ff 15 a0 12 45 00    	call   *0x4512a0
43c08b:	8b c8                	mov    %eax,%ecx
43c08d:	ff 15 a4 12 45 00    	call   *0x4512a4
43c093:	8b 0d 00 f0 44 00    	mov    0x44f000,%ecx
43c099:	81 f9 00 f0 44 00    	cmp    $0x44f000,%ecx
43c09f:	74 22                	je     0x43c0c3
43c0a1:	f6 41 1c 04          	testb  $0x4,0x1c(%ecx)
43c0a5:	74 1c                	je     0x43c0c3
43c0a7:	80 79 19 02          	cmpb   $0x2,0x19(%ecx)
43c0ab:	72 16                	jb     0x43c0c3
43c0ad:	56                   	push   %esi
43c0ae:	ff 71 14             	push   0x14(%ecx)
43c0b1:	ff 71 10             	push   0x10(%ecx)
43c0b4:	b9 95 00 00 00       	mov    $0x95,%ecx
43c0b9:	ba a8 7b 40 00       	mov    $0x407ba8,%edx
43c0be:	e8 03 47 ff ff       	call   0x4307c6
43c0c3:	5f                   	pop    %edi
43c0c4:	8b c6                	mov    %esi,%eax
43c0c6:	5e                   	pop    %esi
43c0c7:	c9                   	leave
43c0c8:	c2 0c 00             	ret    $0xc
43c0cb:	8b ff                	mov    %edi,%edi
43c0cd:	55                   	push   %ebp
43c0ce:	8b ec                	mov    %esp,%ebp
43c0d0:	83 ec 1c             	sub    $0x1c,%esp
43c0d3:	56                   	push   %esi
43c0d4:	57                   	push   %edi
43c0d5:	8b f9                	mov    %ecx,%edi
43c0d7:	83 7f 3c 00          	cmpl   $0x0,0x3c(%edi)
43c0db:	0f 84 b9 00 00 00    	je     0x43c19a
43c0e1:	8d 45 f8             	lea    -0x8(%ebp),%eax
43c0e4:	50                   	push   %eax
43c0e5:	8d 45 ec             	lea    -0x14(%ebp),%eax
43c0e8:	50                   	push   %eax
43c0e9:	8d 45 fc             	lea    -0x4(%ebp),%eax
43c0ec:	50                   	push   %eax
43c0ed:	8d 45 e4             	lea    -0x1c(%ebp),%eax
43c0f0:	50                   	push   %eax
43c0f1:	8d 45 f4             	lea    -0xc(%ebp),%eax
43c0f4:	50                   	push   %eax
43c0f5:	8d 45 f0             	lea    -0x10(%ebp),%eax
43c0f8:	50                   	push   %eax
43c0f9:	8d 45 e8             	lea    -0x18(%ebp),%eax
43c0fc:	50                   	push   %eax
43c0fd:	51                   	push   %ecx
43c0fe:	51                   	push   %ecx
43c0ff:	ff 77 3c             	push   0x3c(%edi)
43c102:	ff 75 08             	push   0x8(%ebp)
43c105:	e8 04 c2 ff ff       	call   0x43830e
43c10a:	8b f0                	mov    %eax,%esi
43c10c:	85 f6                	test   %esi,%esi
43c10e:	78 58                	js     0x43c168
43c110:	8b 45 fc             	mov    -0x4(%ebp),%eax
43c113:	53                   	push   %ebx
43c114:	ff 75 14             	push   0x14(%ebp)
43c117:	ff 75 10             	push   0x10(%ebp)
43c11a:	8b 30                	mov    (%eax),%esi
43c11c:	ff 75 0c             	push   0xc(%ebp)
43c11f:	50                   	push   %eax
43c120:	8b 4e 0c             	mov    0xc(%esi),%ecx
43c123:	ff 15 c4 12 45 00    	call   *0x4512c4
43c129:	ff 56 0c             	call   *0xc(%esi)
43c12c:	8b 5d f8             	mov    -0x8(%ebp),%ebx
43c12f:	8b f0                	mov    %eax,%esi
43c131:	8b 45 f4             	mov    -0xc(%ebp),%eax
43c134:	89 45 fc             	mov    %eax,-0x4(%ebp)
43c137:	8b 45 f0             	mov    -0x10(%ebp),%eax
43c13a:	89 45 e4             	mov    %eax,-0x1c(%ebp)
43c13d:	ff 15 64 30 45 00    	call   *0x453064
43c143:	85 db                	test   %ebx,%ebx
43c145:	74 0e                	je     0x43c155
43c147:	ff 75 ec             	push   -0x14(%ebp)
43c14a:	8d 4f 40             	lea    0x40(%edi),%ecx
43c14d:	33 d2                	xor    %edx,%edx
43c14f:	53                   	push   %ebx
43c150:	e8 39 ad 00 00       	call   0x446e8e
43c155:	ff 75 e8             	push   -0x18(%ebp)
43c158:	8b 55 fc             	mov    -0x4(%ebp),%edx
43c15b:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
43c15e:	e8 ef 2b fe ff       	call   0x41ed52
43c163:	5b                   	pop    %ebx
43c164:	85 f6                	test   %esi,%esi
43c166:	79 0f                	jns    0x43c177
43c168:	56                   	push   %esi
43c169:	ff 15 a0 12 45 00    	call   *0x4512a0
43c16f:	8b c8                	mov    %eax,%ecx
43c171:	ff 15 a4 12 45 00    	call   *0x4512a4
43c177:	a1 00 f0 44 00       	mov    0x44f000,%eax
43c17c:	3d 00 f0 44 00       	cmp    $0x44f000,%eax
43c181:	74 59                	je     0x43c1dc
43c183:	f6 40 1c 04          	testb  $0x4,0x1c(%eax)
43c187:	74 53                	je     0x43c1dc
43c189:	80 78 19 02          	cmpb   $0x2,0x19(%eax)
43c18d:	72 4d                	jb     0x43c1dc
43c18f:	56                   	push   %esi
43c190:	ff 70 14             	push   0x14(%eax)
43c193:	ff 70 10             	push   0x10(%eax)
43c196:	6a 0e                	push   $0xe
43c198:	eb 37                	jmp    0x43c1d1
43c19a:	be 24 10 04 80       	mov    $0x80041024,%esi
43c19f:	56                   	push   %esi
43c1a0:	ff 15 a0 12 45 00    	call   *0x4512a0
43c1a6:	8b c8                	mov    %eax,%ecx
43c1a8:	ff 15 a4 12 45 00    	call   *0x4512a4
43c1ae:	8b 0d 00 f0 44 00    	mov    0x44f000,%ecx
43c1b4:	81 f9 00 f0 44 00    	cmp    $0x44f000,%ecx
43c1ba:	74 20                	je     0x43c1dc
43c1bc:	f6 41 1c 04          	testb  $0x4,0x1c(%ecx)
43c1c0:	74 1a                	je     0x43c1dc
43c1c2:	80 79 19 02          	cmpb   $0x2,0x19(%ecx)
43c1c6:	72 14                	jb     0x43c1dc
43c1c8:	56                   	push   %esi
43c1c9:	ff 71 14             	push   0x14(%ecx)
43c1cc:	ff 71 10             	push   0x10(%ecx)
43c1cf:	6a 0f                	push   $0xf
43c1d1:	ba a8 7b 40 00       	mov    $0x407ba8,%edx
43c1d6:	59                   	pop    %ecx
43c1d7:	e8 ea 45 ff ff       	call   0x4307c6
43c1dc:	5f                   	pop    %edi
43c1dd:	8b c6                	mov    %esi,%eax
43c1df:	5e                   	pop    %esi
43c1e0:	c9                   	leave
43c1e1:	c2 10 00             	ret    $0x10
43c1e4:	8b ff                	mov    %edi,%edi
43c1e6:	55                   	push   %ebp
43c1e7:	8b ec                	mov    %esp,%ebp
43c1e9:	83 ec 1c             	sub    $0x1c,%esp
43c1ec:	53                   	push   %ebx
43c1ed:	56                   	push   %esi
43c1ee:	57                   	push   %edi
43c1ef:	8b f9                	mov    %ecx,%edi
43c1f1:	33 db                	xor    %ebx,%ebx
43c1f3:	8b f2                	mov    %edx,%esi
43c1f5:	39 9f c8 00 00 00    	cmp    %ebx,0xc8(%edi)
43c1fb:	0f 84 60 01 00 00    	je     0x43c361
43c201:	ff 75 10             	push   0x10(%ebp)
43c204:	8b 87 34 01 00 00    	mov    0x134(%edi),%eax
43c20a:	ff 75 0c             	push   0xc(%ebp)
43c20d:	ff 75 08             	push   0x8(%ebp)
43c210:	ff b7 44 01 00 00    	push   0x144(%edi)
43c216:	ff b7 38 01 00 00    	push   0x138(%edi)
43c21c:	ff b7 3c 01 00 00    	push   0x13c(%edi)
43c222:	ff 70 38             	push   0x38(%eax)
43c225:	ff b7 40 01 00 00    	push   0x140(%edi)
43c22b:	6a 01                	push   $0x1
43c22d:	ff 35 d0 09 45 00    	push   0x4509d0
43c233:	ff 15 24 10 45 00    	call   *0x451024
43c239:	83 c4 28             	add    $0x28,%esp
43c23c:	8d 45 f8             	lea    -0x8(%ebp),%eax
43c23f:	8b cf                	mov    %edi,%ecx
43c241:	50                   	push   %eax
43c242:	8d 45 ec             	lea    -0x14(%ebp),%eax
43c245:	50                   	push   %eax
43c246:	8d 45 fc             	lea    -0x4(%ebp),%eax
43c249:	50                   	push   %eax
43c24a:	8d 45 e4             	lea    -0x1c(%ebp),%eax
43c24d:	50                   	push   %eax
43c24e:	8d 45 f4             	lea    -0xc(%ebp),%eax
43c251:	50                   	push   %eax
43c252:	8d 45 f0             	lea    -0x10(%ebp),%eax
43c255:	50                   	push   %eax
43c256:	8d 45 e8             	lea    -0x18(%ebp),%eax
43c259:	50                   	push   %eax
43c25a:	6a 04                	push   $0x4
43c25c:	68 88 6b 40 00       	push   $0x406b88
43c261:	ff b7 c8 00 00 00    	push   0xc8(%edi)
43c267:	56                   	push   %esi
43c268:	e8 42 c3 ff ff       	call   0x4385af
43c26d:	8b f0                	mov    %eax,%esi
43c26f:	85 f6                	test   %esi,%esi
43c271:	78 79                	js     0x43c2ec
43c273:	a1 2c 0a 45 00       	mov    0x450a2c,%eax
43c278:	85 c0                	test   %eax,%eax
43c27a:	74 0d                	je     0x43c289
43c27c:	83 80 18 01 00 00 01 	addl   $0x1,0x118(%eax)
43c283:	11 98 1c 01 00 00    	adc    %ebx,0x11c(%eax)
43c289:	8b 45 fc             	mov    -0x4(%ebp),%eax
43c28c:	ff 75 10             	push   0x10(%ebp)
43c28f:	83 87 00 02 00 00 01 	addl   $0x1,0x200(%edi)
43c296:	ff 75 0c             	push   0xc(%ebp)
43c299:	11 9f 04 02 00 00    	adc    %ebx,0x204(%edi)
43c29f:	8b 30                	mov    (%eax),%esi
43c2a1:	ff 75 08             	push   0x8(%ebp)
43c2a4:	50                   	push   %eax
43c2a5:	8b 4e 0c             	mov    0xc(%esi),%ecx
43c2a8:	ff 15 c4 12 45 00    	call   *0x4512c4
43c2ae:	ff 56 0c             	call   *0xc(%esi)
43c2b1:	8b 5d f8             	mov    -0x8(%ebp),%ebx
43c2b4:	8b f0                	mov    %eax,%esi
43c2b6:	8b 45 f4             	mov    -0xc(%ebp),%eax
43c2b9:	89 45 fc             	mov    %eax,-0x4(%ebp)
43c2bc:	8b 45 f0             	mov    -0x10(%ebp),%eax
43c2bf:	89 45 e4             	mov    %eax,-0x1c(%ebp)
43c2c2:	ff 15 64 30 45 00    	call   *0x453064
43c2c8:	85 db                	test   %ebx,%ebx
43c2ca:	74 12                	je     0x43c2de
43c2cc:	ff 75 ec             	push   -0x14(%ebp)
43c2cf:	8d 8f f0 00 00 00    	lea    0xf0(%edi),%ecx
43c2d5:	53                   	push   %ebx
43c2d6:	6a 04                	push   $0x4
43c2d8:	5a                   	pop    %edx
43c2d9:	e8 b0 ab 00 00       	call   0x446e8e
43c2de:	ff 75 e8             	push   -0x18(%ebp)
43c2e1:	8b 55 fc             	mov    -0x4(%ebp),%edx
43c2e4:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
43c2e7:	e8 66 2a fe ff       	call   0x41ed52
43c2ec:	8b 87 34 01 00 00    	mov    0x134(%edi),%eax
43c2f2:	56                   	push   %esi
43c2f3:	ff 75 10             	push   0x10(%ebp)
43c2f6:	ff 75 0c             	push   0xc(%ebp)
43c2f9:	ff 75 08             	push   0x8(%ebp)
43c2fc:	ff b7 44 01 00 00    	push   0x144(%edi)
43c302:	ff b7 38 01 00 00    	push   0x138(%edi)
43c308:	ff b7 3c 01 00 00    	push   0x13c(%edi)
43c30e:	ff 70 38             	push   0x38(%eax)
43c311:	ff b7 40 01 00 00    	push   0x140(%edi)
43c317:	6a 01                	push   $0x1
43c319:	ff 35 08 0a 45 00    	push   0x450a08
43c31f:	ff 15 24 10 45 00    	call   *0x451024
43c325:	83 c4 2c             	add    $0x2c,%esp
43c328:	85 f6                	test   %esi,%esi
43c32a:	79 0f                	jns    0x43c33b
43c32c:	56                   	push   %esi
43c32d:	ff 15 a0 12 45 00    	call   *0x4512a0
43c333:	8b c8                	mov    %eax,%ecx
43c335:	ff 15 a4 12 45 00    	call   *0x4512a4
43c33b:	a1 00 f0 44 00       	mov    0x44f000,%eax
43c340:	3d 00 f0 44 00       	cmp    $0x44f000,%eax
43c345:	74 5e                	je     0x43c3a5
43c347:	f6 40 1c 04          	testb  $0x4,0x1c(%eax)
43c34b:	74 58                	je     0x43c3a5
43c34d:	80 78 19 02          	cmpb   $0x2,0x19(%eax)
43c351:	72 52                	jb     0x43c3a5
43c353:	56                   	push   %esi
43c354:	ff 70 14             	push   0x14(%eax)
43c357:	b9 88 00 00 00       	mov    $0x88,%ecx
43c35c:	ff 70 10             	push   0x10(%eax)
43c35f:	eb 3a                	jmp    0x43c39b
43c361:	be 24 10 04 80       	mov    $0x80041024,%esi
43c366:	56                   	push   %esi
43c367:	ff 15 a0 12 45 00    	call   *0x4512a0
43c36d:	8b c8                	mov    %eax,%ecx
43c36f:	ff 15 a4 12 45 00    	call   *0x4512a4
43c375:	8b 0d 00 f0 44 00    	mov    0x44f000,%ecx
43c37b:	81 f9 00 f0 44 00    	cmp    $0x44f000,%ecx
43c381:	74 22                	je     0x43c3a5
43c383:	f6 41 1c 04          	testb  $0x4,0x1c(%ecx)
43c387:	74 1c                	je     0x43c3a5
43c389:	80 79 19 02          	cmpb   $0x2,0x19(%ecx)
43c38d:	72 16                	jb     0x43c3a5
43c38f:	56                   	push   %esi
43c390:	ff 71 14             	push   0x14(%ecx)
43c393:	ff 71 10             	push   0x10(%ecx)
43c396:	b9 89 00 00 00       	mov    $0x89,%ecx
43c39b:	ba a8 7b 40 00       	mov    $0x407ba8,%edx
43c3a0:	e8 21 44 ff ff       	call   0x4307c6
43c3a5:	5f                   	pop    %edi
43c3a6:	8b c6                	mov    %esi,%eax
43c3a8:	5e                   	pop    %esi
43c3a9:	5b                   	pop    %ebx
43c3aa:	c9                   	leave
43c3ab:	c2 0c 00             	ret    $0xc
43c3ae:	8b ff                	mov    %edi,%edi
43c3b0:	55                   	push   %ebp
43c3b1:	8b ec                	mov    %esp,%ebp
43c3b3:	83 ec 1c             	sub    $0x1c,%esp
43c3b6:	53                   	push   %ebx
43c3b7:	56                   	push   %esi
43c3b8:	57                   	push   %edi
43c3b9:	8b f9                	mov    %ecx,%edi
43c3bb:	33 db                	xor    %ebx,%ebx
43c3bd:	8b f2                	mov    %edx,%esi
43c3bf:	39 9f c4 00 00 00    	cmp    %ebx,0xc4(%edi)
43c3c5:	0f 84 52 01 00 00    	je     0x43c51d
43c3cb:	ff 75 0c             	push   0xc(%ebp)
43c3ce:	8b 87 34 01 00 00    	mov    0x134(%edi),%eax
43c3d4:	ff b7 44 01 00 00    	push   0x144(%edi)
43c3da:	ff b7 38 01 00 00    	push   0x138(%edi)
43c3e0:	ff b7 3c 01 00 00    	push   0x13c(%edi)
43c3e6:	ff 70 38             	push   0x38(%eax)
43c3e9:	ff b7 40 01 00 00    	push   0x140(%edi)
43c3ef:	6a 01                	push   $0x1
43c3f1:	ff 35 c4 09 45 00    	push   0x4509c4
43c3f7:	ff 15 24 10 45 00    	call   *0x451024
43c3fd:	83 c4 20             	add    $0x20,%esp
43c400:	8d 45 f8             	lea    -0x8(%ebp),%eax
43c403:	8b cf                	mov    %edi,%ecx
43c405:	50                   	push   %eax
43c406:	8d 45 ec             	lea    -0x14(%ebp),%eax
43c409:	50                   	push   %eax
43c40a:	8d 45 fc             	lea    -0x4(%ebp),%eax
43c40d:	50                   	push   %eax
43c40e:	8d 45 e4             	lea    -0x1c(%ebp),%eax
43c411:	50                   	push   %eax
43c412:	8d 45 f4             	lea    -0xc(%ebp),%eax