4ecf53:	2b f2                	sub    %edx,%esi
4ecf55:	8d 04 37             	lea    (%edi,%esi,1),%eax
4ecf58:	89 44 24 2c          	mov    %eax,0x2c(%esp)
4ecf5c:	eb 04                	jmp    0x4ecf62
4ecf5e:	8b 44 24 2c          	mov    0x2c(%esp),%eax
4ecf62:	8b f2                	mov    %edx,%esi
4ecf64:	f6 c1 01             	test   $0x1,%cl
4ecf67:	74 08                	je     0x4ecf71
4ecf69:	83 fb ff             	cmp    $0xffffffff,%ebx
4ecf6c:	74 2e                	je     0x4ecf9c
4ecf6e:	43                   	inc    %ebx
4ecf6f:	eb 02                	jmp    0x4ecf73
4ecf71:	03 f0                	add    %eax,%esi
4ecf73:	2b ee                	sub    %esi,%ebp
4ecf75:	03 fd                	add    %ebp,%edi
4ecf77:	85 ff                	test   %edi,%edi
4ecf79:	0f 8f 51 ff ff ff    	jg     0x4eced0
4ecf7f:	85 db                	test   %ebx,%ebx
4ecf81:	0f 85 8b 00 00 00    	jne    0x4ed012
4ecf87:	8b 54 24 38          	mov    0x38(%esp),%edx
4ecf8b:	8b fe                	mov    %esi,%edi
4ecf8d:	8b 6c 24 18          	mov    0x18(%esp),%ebp
4ecf91:	2b f2                	sub    %edx,%esi
4ecf93:	8b 5c 24 58          	mov    0x58(%esp),%ebx
4ecf97:	e9 8f 00 00 00       	jmp    0x4ed02b
4ecf9c:	68 ca 03 00 00       	push   $0x3ca
4ecfa1:	68 08 59 61 00       	push   $0x615908
4ecfa6:	6a 3a                	push   $0x3a
4ecfa8:	68 be 00 00 00       	push   $0xbe
4ecfad:	6a 0d                	push   $0xd
4ecfaf:	e8 cc bf fe ff       	call   0x4d8f80
4ecfb4:	83 c4 14             	add    $0x14,%esp
4ecfb7:	33 db                	xor    %ebx,%ebx
4ecfb9:	80 7c 24 13 00       	cmpb   $0x0,0x13(%esp)
4ecfbe:	74 16                	je     0x4ecfd6
4ecfc0:	68 13 03 00 00       	push   $0x313
4ecfc5:	68 08 59 61 00       	push   $0x615908
4ecfca:	ff 74 24 4c          	push   0x4c(%esp)
4ecfce:	e8 ad 37 ff ff       	call   0x4e0780
4ecfd3:	83 c4 0c             	add    $0xc,%esp
4ecfd6:	5e                   	pop    %esi
4ecfd7:	8b c3                	mov    %ebx,%eax
4ecfd9:	5b                   	pop    %ebx
4ecfda:	5f                   	pop    %edi
4ecfdb:	5d                   	pop    %ebp
4ecfdc:	83 c4 40             	add    $0x40,%esp
4ecfdf:	c3                   	ret
4ecfe0:	68 71 04 00 00       	push   $0x471
4ecfe5:	68 08 59 61 00       	push   $0x615908
4ecfea:	6a 66                	push   $0x66
4ecfec:	6a 68                	push   $0x68
4ecfee:	6a 0d                	push   $0xd
4ecff0:	e8 8b bf fe ff       	call   0x4d8f80
4ecff5:	68 c5 03 00 00       	push   $0x3c5
4ecffa:	68 08 59 61 00       	push   $0x615908
4ecfff:	6a 3a                	push   $0x3a
4ed001:	68 be 00 00 00       	push   $0xbe
4ed006:	6a 0d                	push   $0xd
4ed008:	e8 73 bf fe ff       	call   0x4d8f80
4ed00d:	83 c4 28             	add    $0x28,%esp
4ed010:	eb a5                	jmp    0x4ecfb7
4ed012:	68 d4 03 00 00       	push   $0x3d4
4ed017:	68 08 59 61 00       	push   $0x615908
4ed01c:	68 89 00 00 00       	push   $0x89
4ed021:	eb 85                	jmp    0x4ecfa8
4ed023:	8b f7                	mov    %edi,%esi
4ed025:	2b f2                	sub    %edx,%esi
4ed027:	03 f1                	add    %ecx,%esi
4ed029:	03 f9                	add    %ecx,%edi
4ed02b:	ff 74 24 60          	push   0x60(%esp)
4ed02f:	8d 44 24 17          	lea    0x17(%esp),%eax
4ed033:	50                   	push   %eax
4ed034:	55                   	push   %ebp
4ed035:	56                   	push   %esi
4ed036:	52                   	push   %edx
4ed037:	ff 74 24 68          	push   0x68(%esp)
4ed03b:	e8 20 00 00 00       	call   0x4ed060
4ed040:	83 c4 18             	add    $0x18,%esp
4ed043:	85 c0                	test   %eax,%eax
4ed045:	0f 84 6c ff ff ff    	je     0x4ecfb7
4ed04b:	89 3b                	mov    %edi,(%ebx)
4ed04d:	bb 01 00 00 00       	mov    $0x1,%ebx
4ed052:	e9 62 ff ff ff       	jmp    0x4ecfb9
4ed057:	cc                   	int3
4ed058:	cc                   	int3
4ed059:	cc                   	int3
4ed05a:	cc                   	int3
4ed05b:	cc                   	int3
4ed05c:	cc                   	int3
4ed05d:	cc                   	int3
4ed05e:	cc                   	int3
4ed05f:	cc                   	int3
4ed060:	b8 04 00 00 00       	mov    $0x4,%eax
4ed065:	e8 46 47 0e 00       	call   0x5d17b0
4ed06a:	8b 44 24 1c          	mov    0x1c(%esp),%eax
4ed06e:	53                   	push   %ebx
4ed06f:	56                   	push   %esi
4ed070:	33 f6                	xor    %esi,%esi
4ed072:	c7 44 24 08 00 00 00 	movl   $0x0,0x8(%esp)
4ed079:	00
4ed07a:	8b 48 10             	mov    0x10(%eax),%ecx
4ed07d:	33 db                	xor    %ebx,%ebx
4ed07f:	85 c9                	test   %ecx,%ecx
4ed081:	74 25                	je     0x4ed0a8
4ed083:	8b 49 14             	mov    0x14(%ecx),%ecx
4ed086:	85 c9                	test   %ecx,%ecx
4ed088:	74 1e                	je     0x4ed0a8
4ed08a:	50                   	push   %eax
4ed08b:	ff 74 24 24          	push   0x24(%esp)
4ed08f:	ff 74 24 24          	push   0x24(%esp)
4ed093:	ff 74 24 24          	push   0x24(%esp)
4ed097:	ff 74 24 24          	push   0x24(%esp)
4ed09b:	ff 74 24 24          	push   0x24(%esp)
4ed09f:	ff d1                	call   *%ecx
4ed0a1:	83 c4 18             	add    $0x18,%esp
4ed0a4:	5e                   	pop    %esi
4ed0a5:	5b                   	pop    %ebx
4ed0a6:	59                   	pop    %ecx
4ed0a7:	c3                   	ret
4ed0a8:	83 78 04 fc          	cmpl   $0xfffffffc,0x4(%eax)
4ed0ac:	55                   	push   %ebp
4ed0ad:	8b 6c 24 20          	mov    0x20(%esp),%ebp
4ed0b1:	57                   	push   %edi
4ed0b2:	8b 7c 24 18          	mov    0x18(%esp),%edi
4ed0b6:	75 2e                	jne    0x4ed0e6
4ed0b8:	8b 37                	mov    (%edi),%esi
4ed0ba:	85 f6                	test   %esi,%esi
4ed0bc:	75 11                	jne    0x4ed0cf
4ed0be:	e8 2d e8 ff ff       	call   0x4eb8f0
4ed0c3:	8b f0                	mov    %eax,%esi
4ed0c5:	85 f6                	test   %esi,%esi
4ed0c7:	0f 84 18 02 00 00    	je     0x4ed2e5
4ed0cd:	89 37                	mov    %esi,(%edi)
4ed0cf:	3b 2e                	cmp    (%esi),%ebp
4ed0d1:	74 0c                	je     0x4ed0df
4ed0d3:	6a 00                	push   $0x0
4ed0d5:	55                   	push   %ebp
4ed0d6:	56                   	push   %esi
4ed0d7:	e8 04 d6 01 00       	call   0x50a6e0
4ed0dc:	83 c4 0c             	add    $0xc,%esp
4ed0df:	89 7c 24 10          	mov    %edi,0x10(%esp)
4ed0e3:	8d 7e 04             	lea    0x4(%esi),%edi
4ed0e6:	8d 45 ff             	lea    -0x1(%ebp),%eax
4ed0e9:	83 f8 09             	cmp    $0x9,%eax
4ed0ec:	0f 87 e3 00 00 00    	ja     0x4ed1d5
4ed0f2:	ff 24 85 08 d3 4e 00 	jmp    *0x4ed308(,%eax,4)
4ed0f9:	ff 74 24 20          	push   0x20(%esp)
4ed0fd:	8d 44 24 20          	lea    0x20(%esp),%eax
4ed101:	50                   	push   %eax
4ed102:	57                   	push   %edi
4ed103:	e8 88 db 01 00       	call   0x50ac90
4ed108:	83 c4 0c             	add    $0xc,%esp
4ed10b:	85 c0                	test   %eax,%eax
4ed10d:	0f 84 d2 01 00 00    	je     0x4ed2e5
4ed113:	85 f6                	test   %esi,%esi
4ed115:	74 0c                	je     0x4ed123
4ed117:	83 fd 05             	cmp    $0x5,%ebp
4ed11a:	75 07                	jne    0x4ed123
4ed11c:	c7 46 04 00 00 00 00 	movl   $0x0,0x4(%esi)
4ed123:	bb 01 00 00 00       	mov    $0x1,%ebx
4ed128:	5f                   	pop    %edi
4ed129:	5d                   	pop    %ebp
4ed12a:	5e                   	pop    %esi
4ed12b:	8b c3                	mov    %ebx,%eax
4ed12d:	5b                   	pop    %ebx
4ed12e:	59                   	pop    %ecx
4ed12f:	c3                   	ret
4ed130:	39 5c 24 20          	cmp    %ebx,0x20(%esp)
4ed134:	74 23                	je     0x4ed159
4ed136:	68 3d 03 00 00       	push   $0x33d
4ed13b:	68 08 59 61 00       	push   $0x615908
4ed140:	68 90 00 00 00       	push   $0x90
4ed145:	68 cc 00 00 00       	push   $0xcc
4ed14a:	6a 0d                	push   $0xd
4ed14c:	e8 2f be fe ff       	call   0x4d8f80
4ed151:	83 c4 14             	add    $0x14,%esp
4ed154:	e9 8c 01 00 00       	jmp    0x4ed2e5
4ed159:	c7 07 01 00 00 00    	movl   $0x1,(%edi)
4ed15f:	eb b2                	jmp    0x4ed113
4ed161:	83 7c 24 20 01       	cmpl   $0x1,0x20(%esp)
4ed166:	74 20                	je     0x4ed188
4ed168:	68 45 03 00 00       	push   $0x345
4ed16d:	68 08 59 61 00       	push   $0x615908
4ed172:	6a 6a                	push   $0x6a
4ed174:	68 cc 00 00 00       	push   $0xcc
4ed179:	6a 0d                	push   $0xd
4ed17b:	e8 00 be fe ff       	call   0x4d8f80
4ed180:	83 c4 14             	add    $0x14,%esp
4ed183:	e9 5d 01 00 00       	jmp    0x4ed2e5
4ed188:	8b 44 24 1c          	mov    0x1c(%esp),%eax
4ed18c:	0f b6 00             	movzbl (%eax),%eax
4ed18f:	89 07                	mov    %eax,(%edi)
4ed191:	eb 80                	jmp    0x4ed113
4ed193:	ff 74 24 20          	push   0x20(%esp)
4ed197:	8d 44 24 20          	lea    0x20(%esp),%eax
4ed19b:	50                   	push   %eax
4ed19c:	57                   	push   %edi
4ed19d:	e8 9e e8 01 00       	call   0x50ba40
4ed1a2:	e9 61 ff ff ff       	jmp    0x4ed108
4ed1a7:	ff 74 24 20          	push   0x20(%esp)
4ed1ab:	8d 44 24 20          	lea    0x20(%esp),%eax
4ed1af:	50                   	push   %eax
4ed1b0:	57                   	push   %edi
4ed1b1:	e8 7a c7 01 00       	call   0x509930
4ed1b6:	83 c4 0c             	add    $0xc,%esp
4ed1b9:	85 c0                	test   %eax,%eax
4ed1bb:	0f 84 24 01 00 00    	je     0x4ed2e5
4ed1c1:	8b 0f                	mov    (%edi),%ecx
4ed1c3:	8b 41 04             	mov    0x4(%ecx),%eax
4ed1c6:	25 00 01 00 00       	and    $0x100,%eax
4ed1cb:	0b c5                	or     %ebp,%eax
4ed1cd:	89 41 04             	mov    %eax,0x4(%ecx)
4ed1d0:	e9 3e ff ff ff       	jmp    0x4ed113
4ed1d5:	83 fd 1e             	cmp    $0x1e,%ebp
4ed1d8:	75 2a                	jne    0x4ed204
4ed1da:	f6 44 24 20 01       	testb  $0x1,0x20(%esp)
4ed1df:	74 52                	je     0x4ed233
4ed1e1:	68 6f 03 00 00       	push   $0x36f
4ed1e6:	68 08 59 61 00       	push   $0x615908
4ed1eb:	68 d6 00 00 00       	push   $0xd6
4ed1f0:	68 cc 00 00 00       	push   $0xcc
4ed1f5:	6a 0d                	push   $0xd
4ed1f7:	e8 84 bd fe ff       	call   0x4d8f80
4ed1fc:	83 c4 14             	add    $0x14,%esp
4ed1ff:	e9 e1 00 00 00       	jmp    0x4ed2e5
4ed204:	83 fd 1c             	cmp    $0x1c,%ebp
4ed207:	75 2a                	jne    0x4ed233
4ed209:	f6 44 24 20 03       	testb  $0x3,0x20(%esp)
4ed20e:	74 23                	je     0x4ed233
4ed210:	68 74 03 00 00       	push   $0x374
4ed215:	68 08 59 61 00       	push   $0x615908
4ed21a:	68 d7 00 00 00       	push   $0xd7
4ed21f:	68 cc 00 00 00       	push   $0xcc
4ed224:	6a 0d                	push   $0xd
4ed226:	e8 55 bd fe ff       	call   0x4d8f80
4ed22b:	83 c4 14             	add    $0x14,%esp
4ed22e:	e9 b2 00 00 00       	jmp    0x4ed2e5
4ed233:	8b 1f                	mov    (%edi),%ebx
4ed235:	85 db                	test   %ebx,%ebx
4ed237:	75 30                	jne    0x4ed269
4ed239:	55                   	push   %ebp
4ed23a:	e8 01 d1 01 00       	call   0x50a340
4ed23f:	8b d8                	mov    %eax,%ebx
4ed241:	83 c4 04             	add    $0x4,%esp
4ed244:	85 db                	test   %ebx,%ebx
4ed246:	75 1d                	jne    0x4ed265
4ed248:	68 7b 03 00 00       	push   $0x37b
4ed24d:	68 08 59 61 00       	push   $0x615908
4ed252:	6a 41                	push   $0x41
4ed254:	68 cc 00 00 00       	push   $0xcc
4ed259:	6a 0d                	push   $0xd
4ed25b:	e8 20 bd fe ff       	call   0x4d8f80
4ed260:	83 c4 14             	add    $0x14,%esp
4ed263:	eb 7e                	jmp    0x4ed2e3
4ed265:	89 1f                	mov    %ebx,(%edi)
4ed267:	eb 03                	jmp    0x4ed26c
4ed269:	89 6b 04             	mov    %ebp,0x4(%ebx)
4ed26c:	8b 44 24 28          	mov    0x28(%esp),%eax
4ed270:	80 38 00             	cmpb   $0x0,(%eax)
4ed273:	74 2e                	je     0x4ed2a3
4ed275:	68 85 03 00 00       	push   $0x385
4ed27a:	68 08 59 61 00       	push   $0x615908
4ed27f:	ff 73 08             	push   0x8(%ebx)
4ed282:	e8 f9 34 ff ff       	call   0x4e0780
4ed287:	8b 44 24 28          	mov    0x28(%esp),%eax
4ed28b:	83 c4 0c             	add    $0xc,%esp
4ed28e:	89 43 08             	mov    %eax,0x8(%ebx)
4ed291:	8b 44 24 20          	mov    0x20(%esp),%eax
4ed295:	89 03                	mov    %eax,(%ebx)
4ed297:	8b 44 24 28          	mov    0x28(%esp),%eax
4ed29b:	c6 00 00             	movb   $0x0,(%eax)
4ed29e:	e9 70 fe ff ff       	jmp    0x4ed113
4ed2a3:	ff 74 24 20          	push   0x20(%esp)
4ed2a7:	ff 74 24 20          	push   0x20(%esp)
4ed2ab:	53                   	push   %ebx
4ed2ac:	e8 8f cf 01 00       	call   0x50a240
4ed2b1:	83 c4 0c             	add    $0xc,%esp
4ed2b4:	85 c0                	test   %eax,%eax
4ed2b6:	0f 85 57 fe ff ff    	jne    0x4ed113
4ed2bc:	68 8b 03 00 00       	push   $0x38b
4ed2c1:	68 08 59 61 00       	push   $0x615908
4ed2c6:	6a 41                	push   $0x41
4ed2c8:	68 cc 00 00 00       	push   $0xcc
4ed2cd:	6a 0d                	push   $0xd
4ed2cf:	e8 ac bc fe ff       	call   0x4d8f80
4ed2d4:	53                   	push   %ebx
4ed2d5:	e8 d6 ce 01 00       	call   0x50a1b0
4ed2da:	83 c4 18             	add    $0x18,%esp
4ed2dd:	c7 07 00 00 00 00    	movl   $0x0,(%edi)
4ed2e3:	33 db                	xor    %ebx,%ebx
4ed2e5:	56                   	push   %esi
4ed2e6:	e8 e5 e5 ff ff       	call   0x4eb8d0
4ed2eb:	8b 44 24 14          	mov    0x14(%esp),%eax
4ed2ef:	83 c4 04             	add    $0x4,%esp
4ed2f2:	85 c0                	test   %eax,%eax
4ed2f4:	0f 84 2e fe ff ff    	je     0x4ed128
4ed2fa:	5f                   	pop    %edi
4ed2fb:	5d                   	pop    %ebp
4ed2fc:	c7 00 00 00 00 00    	movl   $0x0,(%eax)
4ed302:	8b c3                	mov    %ebx,%eax
4ed304:	5e                   	pop    %esi
4ed305:	5b                   	pop    %ebx
4ed306:	59                   	pop    %ecx
4ed307:	c3                   	ret
4ed308:	61                   	popa
4ed309:	d1 4e 00             	rorl   $1,0x0(%esi)
4ed30c:	a7                   	cmpsl  %es:(%edi),%ds:(%esi)
4ed30d:	d1 4e 00             	rorl   $1,0x0(%esi)
4ed310:	93                   	xchg   %eax,%ebx
4ed311:	d1 4e 00             	rorl   $1,0x0(%esi)
4ed314:	d5 d1                	aad    $0xd1
4ed316:	4e                   	dec    %esi
4ed317:	00 30                	add    %dh,(%eax)
4ed319:	d1 4e 00             	rorl   $1,0x0(%esi)
4ed31c:	f9                   	stc
4ed31d:	d0 4e 00             	rorb   $1,0x0(%esi)
4ed320:	d5 d1                	aad    $0xd1
4ed322:	4e                   	dec    %esi
4ed323:	00 d5                	add    %dl,%ch
4ed325:	d1 4e 00             	rorl   $1,0x0(%esi)
4ed328:	d5 d1                	aad    $0xd1
4ed32a:	4e                   	dec    %esi
4ed32b:	00 a7 d1 4e 00 b8    	add    %ah,-0x47ffb12f(%edi)
4ed331:	34 00                	xor    $0x0,%al
4ed333:	00 00                	add    %al,(%eax)
4ed335:	e8 76 44 0e 00       	call   0x5d17b0
4ed33a:	53                   	push   %ebx
4ed33b:	8b 5c 24 3c          	mov    0x3c(%esp),%ebx
4ed33f:	55                   	push   %ebp
4ed340:	8b 6c 24 48          	mov    0x48(%esp),%ebp
4ed344:	56                   	push   %esi
4ed345:	57                   	push   %edi
4ed346:	8b 7c 24 54          	mov    0x54(%esp),%edi
4ed34a:	8b 47 10             	mov    0x10(%edi),%eax
4ed34d:	89 44 24 40          	mov    %eax,0x40(%esp)
4ed351:	85 db                	test   %ebx,%ebx
4ed353:	0f 84 42 09 00 00    	je     0x4edc9b
4ed359:	85 c0                	test   %eax,%eax
4ed35b:	74 0b                	je     0x4ed368
4ed35d:	8b 70 10             	mov    0x10(%eax),%esi
4ed360:	89 74 24 24          	mov    %esi,0x24(%esp)
4ed364:	85 f6                	test   %esi,%esi
4ed366:	75 06                	jne    0x4ed36e
4ed368:	33 f6                	xor    %esi,%esi
4ed36a:	89 74 24 24          	mov    %esi,0x24(%esp)
4ed36e:	8b 54 24 68          	mov    0x68(%esp),%edx
4ed372:	42                   	inc    %edx
4ed373:	89 54 24 68          	mov    %edx,0x68(%esp)
4ed377:	83 fa 1e             	cmp    $0x1e,%edx
4ed37a:	7e 14                	jle    0x4ed390