41ff57:	5e                   	pop    %esi
41ff58:	c9                   	leave
41ff59:	c2 08 00             	ret    $0x8
41ff5c:	55                   	push   %ebp
41ff5d:	8b ec                	mov    %esp,%ebp
41ff5f:	51                   	push   %ecx
41ff60:	8d 45 fc             	lea    -0x4(%ebp),%eax
41ff63:	68 48 03 43 00       	push   $0x430348
41ff68:	50                   	push   %eax
41ff69:	c7 45 fc 58 6b 43 00 	movl   $0x436b58,-0x4(%ebp)
41ff70:	e8 fb c4 fe ff       	call   0x40c470
41ff75:	c9                   	leave
41ff76:	c3                   	ret
41ff77:	8b 41 1c             	mov    0x1c(%ecx),%eax
41ff7a:	6a 00                	push   $0x0
41ff7c:	6a 00                	push   $0x0
41ff7e:	6a 10                	push   $0x10
41ff80:	ff 70 1c             	push   0x1c(%eax)
41ff83:	ff 15 88 99 43 00    	call   *0x439988
41ff89:	c3                   	ret
41ff8a:	55                   	push   %ebp
41ff8b:	8b ec                	mov    %esp,%ebp
41ff8d:	83 ec 0c             	sub    $0xc,%esp
41ff90:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
41ff94:	74 13                	je     0x41ffa9
41ff96:	6a f0                	push   $0xfffffff0
41ff98:	ff 75 08             	push   0x8(%ebp)
41ff9b:	ff 15 20 99 43 00    	call   *0x439920
41ffa1:	83 e0 0f             	and    $0xf,%eax
41ffa4:	3b 45 0c             	cmp    0xc(%ebp),%eax
41ffa7:	74 04                	je     0x41ffad
41ffa9:	33 c0                	xor    %eax,%eax
41ffab:	eb 23                	jmp    0x41ffd0
41ffad:	8d 45 f4             	lea    -0xc(%ebp),%eax
41ffb0:	6a 0a                	push   $0xa
41ffb2:	50                   	push   %eax
41ffb3:	ff 75 08             	push   0x8(%ebp)
41ffb6:	ff 15 e4 97 43 00    	call   *0x4397e4
41ffbc:	8d 45 f4             	lea    -0xc(%ebp),%eax
41ffbf:	68 10 b5 42 00       	push   $0x42b510
41ffc4:	50                   	push   %eax
41ffc5:	ff 15 0c 97 43 00    	call   *0x43970c
41ffcb:	f7 d8                	neg    %eax
41ffcd:	1b c0                	sbb    %eax,%eax
41ffcf:	40                   	inc    %eax
41ffd0:	c9                   	leave
41ffd1:	c2 08 00             	ret    $0x8
41ffd4:	55                   	push   %ebp
41ffd5:	8b ec                	mov    %esp,%ebp
41ffd7:	83 ec 20             	sub    $0x20,%esp
41ffda:	8d 45 e0             	lea    -0x20(%ebp),%eax
41ffdd:	6a 20                	push   $0x20
41ffdf:	50                   	push   %eax
41ffe0:	ff 75 08             	push   0x8(%ebp)
41ffe3:	ff 15 e4 97 43 00    	call   *0x4397e4
41ffe9:	ff 75 0c             	push   0xc(%ebp)
41ffec:	8d 45 e0             	lea    -0x20(%ebp),%eax
41ffef:	50                   	push   %eax
41fff0:	ff 15 0c 97 43 00    	call   *0x43970c
41fff6:	f7 d8                	neg    %eax
41fff8:	1b c0                	sbb    %eax,%eax
41fffa:	40                   	inc    %eax
41fffb:	c9                   	leave
41fffc:	c2 08 00             	ret    $0x8
41ffff:	55                   	push   %ebp
420000:	8b ec                	mov    %esp,%ebp
420002:	83 ec 10             	sub    $0x10,%esp
420005:	56                   	push   %esi
420006:	8d 45 0c             	lea    0xc(%ebp),%eax
420009:	57                   	push   %edi
42000a:	50                   	push   %eax
42000b:	ff 75 08             	push   0x8(%ebp)
42000e:	ff 15 ec 97 43 00    	call   *0x4397ec
420014:	8b 3d 34 99 43 00    	mov    0x439934,%edi
42001a:	6a 05                	push   $0x5
42001c:	ff 75 08             	push   0x8(%ebp)
42001f:	ff d7                	call   *%edi
420021:	8b f0                	mov    %eax,%esi
420023:	85 f6                	test   %esi,%esi
420025:	74 45                	je     0x42006c
420027:	56                   	push   %esi
420028:	ff 15 d8 98 43 00    	call   *0x4398d8
42002e:	66 3d ff ff          	cmp    $0xffff,%ax
420032:	74 2f                	je     0x420063
420034:	6a f0                	push   $0xfffffff0
420036:	56                   	push   %esi
420037:	ff 15 20 99 43 00    	call   *0x439920
42003d:	a9 00 00 00 10       	test   $0x10000000,%eax
420042:	74 1f                	je     0x420063
420044:	8d 45 f0             	lea    -0x10(%ebp),%eax
420047:	50                   	push   %eax
420048:	56                   	push   %esi
420049:	ff 15 1c 99 43 00    	call   *0x43991c
42004f:	ff 75 10             	push   0x10(%ebp)
420052:	8d 45 f0             	lea    -0x10(%ebp),%eax
420055:	ff 75 0c             	push   0xc(%ebp)
420058:	50                   	push   %eax
420059:	ff 15 e8 97 43 00    	call   *0x4397e8
42005f:	85 c0                	test   %eax,%eax
420061:	75 05                	jne    0x420068
420063:	6a 02                	push   $0x2
420065:	56                   	push   %esi
420066:	eb b7                	jmp    0x42001f
420068:	8b c6                	mov    %esi,%eax
42006a:	eb 02                	jmp    0x42006e
42006c:	33 c0                	xor    %eax,%eax
42006e:	5f                   	pop    %edi
42006f:	5e                   	pop    %esi
420070:	c9                   	leave
420071:	c2 0c 00             	ret    $0xc
420074:	55                   	push   %ebp
420075:	8b ec                	mov    %esp,%ebp
420077:	81 ec 00 01 00 00    	sub    $0x100,%esp
42007d:	56                   	push   %esi
42007e:	ff 75 0c             	push   0xc(%ebp)
420081:	ff 15 40 97 43 00    	call   *0x439740
420087:	8b f0                	mov    %eax,%esi
420089:	b8 00 01 00 00       	mov    $0x100,%eax
42008e:	3b f0                	cmp    %eax,%esi
420090:	77 29                	ja     0x4200bb
420092:	50                   	push   %eax
420093:	8d 85 00 ff ff ff    	lea    -0x100(%ebp),%eax
420099:	50                   	push   %eax
42009a:	ff 75 08             	push   0x8(%ebp)
42009d:	ff 15 d4 98 43 00    	call   *0x4398d4
4200a3:	3b c6                	cmp    %esi,%eax
4200a5:	75 14                	jne    0x4200bb
4200a7:	ff 75 0c             	push   0xc(%ebp)
4200aa:	8d 85 00 ff ff ff    	lea    -0x100(%ebp),%eax
4200b0:	50                   	push   %eax
4200b1:	ff 15 08 97 43 00    	call   *0x439708
4200b7:	85 c0                	test   %eax,%eax
4200b9:	74 0c                	je     0x4200c7
4200bb:	ff 75 0c             	push   0xc(%ebp)
4200be:	ff 75 08             	push   0x8(%ebp)
4200c1:	ff 15 94 97 43 00    	call   *0x439794
4200c7:	5e                   	pop    %esi
4200c8:	c9                   	leave
4200c9:	c2 08 00             	ret    $0x8
4200cc:	56                   	push   %esi
4200cd:	8b 74 24 08          	mov    0x8(%esp),%esi
4200d1:	8b 06                	mov    (%esi),%eax
4200d3:	85 c0                	test   %eax,%eax
4200d5:	74 0a                	je     0x4200e1
4200d7:	50                   	push   %eax
4200d8:	ff 15 74 95 43 00    	call   *0x439574
4200de:	83 26 00             	andl   $0x0,(%esi)
4200e1:	5e                   	pop    %esi
4200e2:	c2 04 00             	ret    $0x4
4200e5:	53                   	push   %ebx
4200e6:	56                   	push   %esi
4200e7:	57                   	push   %edi
4200e8:	ff 15 58 98 43 00    	call   *0x439858
4200ee:	8b f0                	mov    %eax,%esi
4200f0:	85 f6                	test   %esi,%esi
4200f2:	74 62                	je     0x420156
4200f4:	8b 7c 24 10          	mov    0x10(%esp),%edi
4200f8:	3b f7                	cmp    %edi,%esi
4200fa:	74 5a                	je     0x420156
4200fc:	6a 03                	push   $0x3
4200fe:	56                   	push   %esi
4200ff:	e8 86 fe ff ff       	call   0x41ff8a
420104:	8b 1d a8 98 43 00    	mov    0x4398a8,%ebx
42010a:	85 c0                	test   %eax,%eax
42010c:	75 15                	jne    0x420123
42010e:	56                   	push   %esi
42010f:	ff d3                	call   *%ebx
420111:	8b f0                	mov    %eax,%esi
420113:	3b f7                	cmp    %edi,%esi
420115:	74 3f                	je     0x420156
420117:	6a 02                	push   $0x2
420119:	56                   	push   %esi
42011a:	e8 6b fe ff ff       	call   0x41ff8a
42011f:	85 c0                	test   %eax,%eax
420121:	74 33                	je     0x420156
420123:	85 ff                	test   %edi,%edi
420125:	74 1f                	je     0x420146
420127:	6a f0                	push   $0xfffffff0
420129:	57                   	push   %edi
42012a:	ff 15 20 99 43 00    	call   *0x439920
420130:	a9 00 00 00 40       	test   $0x40000000,%eax
420135:	74 0f                	je     0x420146
420137:	57                   	push   %edi
420138:	ff d3                	call   *%ebx
42013a:	8b f8                	mov    %eax,%edi
42013c:	ff 15 08 98 43 00    	call   *0x439808
420142:	3b f8                	cmp    %eax,%edi
420144:	74 10                	je     0x420156
420146:	6a 00                	push   $0x0
420148:	6a 00                	push   $0x0
42014a:	68 4f 01 00 00       	push   $0x14f
42014f:	56                   	push   %esi
420150:	ff 15 88 99 43 00    	call   *0x439988
420156:	5f                   	pop    %edi
420157:	5e                   	pop    %esi
420158:	5b                   	pop    %ebx
420159:	c2 04 00             	ret    $0x4
42015c:	57                   	push   %edi
42015d:	8b 7c 24 08          	mov    0x8(%esp),%edi
420161:	85 ff                	test   %edi,%edi
420163:	74 29                	je     0x42018e
420165:	57                   	push   %edi
420166:	ff 15 b4 96 43 00    	call   *0x4396b4
42016c:	25 ff 00 00 00       	and    $0xff,%eax
420171:	8b c8                	mov    %eax,%ecx
420173:	48                   	dec    %eax
420174:	85 c9                	test   %ecx,%ecx
420176:	74 0f                	je     0x420187
420178:	56                   	push   %esi
420179:	8d 70 01             	lea    0x1(%eax),%esi
42017c:	57                   	push   %edi
42017d:	ff 15 30 97 43 00    	call   *0x439730
420183:	4e                   	dec    %esi
420184:	75 f6                	jne    0x42017c
420186:	5e                   	pop    %esi
420187:	57                   	push   %edi
420188:	ff 15 24 97 43 00    	call   *0x439724
42018e:	5f                   	pop    %edi
42018f:	c2 04 00             	ret    $0x4
420192:	56                   	push   %esi
420193:	e8 5c 42 00 00       	call   0x4243f4
420198:	8b f0                	mov    %eax,%esi
42019a:	85 f6                	test   %esi,%esi
42019c:	74 3d                	je     0x4201db
42019e:	8b 46 0c             	mov    0xc(%esi),%eax
4201a1:	85 c0                	test   %eax,%eax
4201a3:	74 36                	je     0x4201db
4201a5:	50                   	push   %eax
4201a6:	e8 25 ca fe ff       	call   0x40cbd0
4201ab:	59                   	pop    %ecx
4201ac:	8b 4c 24 08          	mov    0x8(%esp),%ecx
4201b0:	8d 51 04             	lea    0x4(%ecx),%edx
4201b3:	3b c2                	cmp    %edx,%eax
4201b5:	77 0f                	ja     0x4201c6
4201b7:	ff 76 0c             	push   0xc(%esi)
4201ba:	e8 d1 c3 fe ff       	call   0x40c590
4201bf:	83 66 0c 00          	andl   $0x0,0xc(%esi)
4201c3:	59                   	pop    %ecx
4201c4:	eb 10                	jmp    0x4201d6
4201c6:	2b c1                	sub    %ecx,%eax
4201c8:	83 e8 04             	sub    $0x4,%eax
4201cb:	50                   	push   %eax
4201cc:	ff 76 0c             	push   0xc(%esi)
4201cf:	e8 6c ca fe ff       	call   0x40cc40
4201d4:	59                   	pop    %ecx
4201d5:	59                   	pop    %ecx
4201d6:	6a 01                	push   $0x1
4201d8:	58                   	pop    %eax
4201d9:	5e                   	pop    %esi
4201da:	c3                   	ret
4201db:	e8 95 94 ff ff       	call   0x419675
4201e0:	33 c0                	xor    %eax,%eax
4201e2:	5e                   	pop    %esi
4201e3:	c3                   	ret
4201e4:	55                   	push   %ebp
4201e5:	8b ec                	mov    %esp,%ebp
4201e7:	81 ec 1c 01 00 00    	sub    $0x11c,%esp
4201ed:	57                   	push   %edi
4201ee:	33 ff                	xor    %edi,%edi
4201f0:	39 7d 08             	cmp    %edi,0x8(%ebp)
4201f3:	75 0c                	jne    0x420201
4201f5:	39 3d f4 6f 43 00    	cmp    %edi,0x436ff4
4201fb:	0f 85 52 01 00 00    	jne    0x420353
420201:	66 39 3d 00 70 43 00 	cmp    %di,0x437000
420208:	c7 05 f4 6f 43 00 01 	movl   $0x1,0x436ff4
42020f:	00 00 00
420212:	75 1f                	jne    0x420233
420214:	68 54 b6 42 00       	push   $0x42b654
420219:	ff 15 30 99 43 00    	call   *0x439930
42021f:	33 c9                	xor    %ecx,%ecx
420221:	3b c7                	cmp    %edi,%eax
420223:	0f 95 c1             	setne  %cl
420226:	41                   	inc    %ecx
420227:	a3 fc 6f 43 00       	mov    %eax,0x436ffc
42022c:	66 89 0d 00 70 43 00 	mov    %cx,0x437000
420233:	66 83 3d 00 70 43 00 	cmpw   $0x2,0x437000
42023a:	02
42023b:	75 32                	jne    0x42026f
42023d:	68 40 b6 42 00       	push   $0x42b640
420242:	68 38 b6 42 00       	push   $0x42b638
420247:	ff 15 f4 97 43 00    	call   *0x4397f4
42024d:	3b c7                	cmp    %edi,%eax
42024f:	74 1e                	je     0x42026f
420251:	8b 0d fc 6f 43 00    	mov    0x436ffc,%ecx
420257:	3b cf                	cmp    %edi,%ecx
420259:	74 14                	je     0x42026f
42025b:	57                   	push   %edi
42025c:	57                   	push   %edi
42025d:	51                   	push   %ecx
42025e:	50                   	push   %eax
42025f:	ff 15 88 99 43 00    	call   *0x439988
420265:	a3 f8 6f 43 00       	mov    %eax,0x436ff8
42026a:	e9 e9 00 00 00       	jmp    0x420358
42026f:	68 94 00 00 00       	push   $0x94
420274:	8d 85 64 ff ff ff    	lea    -0x9c(%ebp),%eax
42027a:	57                   	push   %edi
42027b:	50                   	push   %eax
42027c:	e8 8f c1 fe ff       	call   0x40c410
420281:	83 c4 0c             	add    $0xc,%esp
420284:	8d 85 64 ff ff ff    	lea    -0x9c(%ebp),%eax
42028a:	c7 85 64 ff ff ff 94 	movl   $0x94,-0x9c(%ebp)
420291:	00 00 00
420294:	c7 05 f8 6f 43 00 03 	movl   $0x3,0x436ff8
42029b:	00 00 00
42029e:	50                   	push   %eax
42029f:	ff 15 a0 96 43 00    	call   *0x4396a0
4202a5:	85 c0                	test   %eax,%eax
4202a7:	0f 84 a6 00 00 00    	je     0x420353
4202ad:	83 bd 74 ff ff ff 01 	cmpl   $0x1,-0x8c(%ebp)
4202b4:	74 0d                	je     0x4202c3
4202b6:	83 bd 74 ff ff ff 02 	cmpl   $0x2,-0x8c(%ebp)
4202bd:	0f 85 90 00 00 00    	jne    0x420353
4202c3:	83 bd 68 ff ff ff 04 	cmpl   $0x4,-0x98(%ebp)
4202ca:	73 66                	jae    0x420332
4202cc:	8d 45 08             	lea    0x8(%ebp),%eax
4202cf:	50                   	push   %eax
4202d0:	6a 01                	push   $0x1
4202d2:	57                   	push   %edi
4202d3:	68 20 b6 42 00       	push   $0x42b620
4202d8:	68 01 00 00 80       	push   $0x80000001
4202dd:	ff 15 44 95 43 00    	call   *0x439544
4202e3:	85 c0                	test   %eax,%eax
4202e5:	75 6c                	jne    0x420353
4202e7:	8d 45 fc             	lea    -0x4(%ebp),%eax
4202ea:	c7 45 fc 80 00 00 00 	movl   $0x80,-0x4(%ebp)
4202f1:	50                   	push   %eax
4202f2:	8d 85 e4 fe ff ff    	lea    -0x11c(%ebp),%eax
4202f8:	50                   	push   %eax
4202f9:	8d 45 f8             	lea    -0x8(%ebp),%eax
4202fc:	50                   	push   %eax
4202fd:	57                   	push   %edi
4202fe:	68 0c b6 42 00       	push   $0x42b60c
420303:	ff 75 08             	push   0x8(%ebp)
420306:	ff 15 34 95 43 00    	call   *0x439534
42030c:	85 c0                	test   %eax,%eax
42030e:	75 17                	jne    0x420327
420310:	6a 0a                	push   $0xa
420312:	8d 85 e4 fe ff ff    	lea    -0x11c(%ebp),%eax
420318:	57                   	push   %edi
420319:	50                   	push   %eax
42031a:	e8 61 cc fe ff       	call   0x40cf80
42031f:	83 c4 0c             	add    $0xc,%esp
420322:	a3 f8 6f 43 00       	mov    %eax,0x436ff8
420327:	ff 75 08             	push   0x8(%ebp)
42032a:	ff 15 38 95 43 00    	call   *0x439538
420330:	eb 21                	jmp    0x420353
420332:	83 bd 74 ff ff ff 02 	cmpl   $0x2,-0x8c(%ebp)
420339:	75 18                	jne    0x420353
42033b:	83 bd 68 ff ff ff 04 	cmpl   $0x4,-0x98(%ebp)
420342:	72 0f                	jb     0x420353