515eaf:	50                   	push   %eax
515eb0:	68 58 b2 6b 00       	push   $0x6bb258
515eb5:	53                   	push   %ebx
515eb6:	e8 a5 d3 00 00       	call   0x523260
515ebb:	83 c4 0c             	add    $0xc,%esp
515ebe:	eb 0e                	jmp    0x515ece
515ec0:	68 6c b2 6b 00       	push   $0x6bb26c
515ec5:	53                   	push   %ebx
515ec6:	e8 95 d3 00 00       	call   0x523260
515ecb:	83 c4 08             	add    $0x8,%esp
515ece:	8b 45 b8             	mov    -0x48(%ebp),%eax
515ed1:	8b 4d cc             	mov    -0x34(%ebp),%ecx
515ed4:	40                   	inc    %eax
515ed5:	89 45 b8             	mov    %eax,-0x48(%ebp)
515ed8:	3b 01                	cmp    (%ecx),%eax
515eda:	0f 8c c2 f8 ff ff    	jl     0x5157a2
515ee0:	8b 75 0c             	mov    0xc(%ebp),%esi
515ee3:	8b 5d f4             	mov    -0xc(%ebp),%ebx
515ee6:	51                   	push   %ecx
515ee7:	53                   	push   %ebx
515ee8:	e8 13 b1 fe ff       	call   0x501000
515eed:	8b 45 e8             	mov    -0x18(%ebp),%eax
515ef0:	83 c4 08             	add    $0x8,%esp
515ef3:	89 46 1c             	mov    %eax,0x1c(%esi)
515ef6:	eb 03                	jmp    0x515efb
515ef8:	8b 5d f4             	mov    -0xc(%ebp),%ebx
515efb:	8b 46 1c             	mov    0x1c(%esi),%eax
515efe:	85 c0                	test   %eax,%eax
515f00:	74 33                	je     0x515f35
515f02:	8b 00                	mov    (%eax),%eax
515f04:	3b 43 74             	cmp    0x74(%ebx),%eax
515f07:	7e 1c                	jle    0x515f25
515f09:	68 80 b2 6b 00       	push   $0x6bb280
515f0e:	ff 75 f8             	push   -0x8(%ebp)
515f11:	e8 4a d3 00 00       	call   0x523260
515f16:	83 c4 08             	add    $0x8,%esp
515f19:	b8 02 00 00 00       	mov    $0x2,%eax
515f1e:	5f                   	pop    %edi
515f1f:	5e                   	pop    %esi
515f20:	5b                   	pop    %ebx
515f21:	8b e5                	mov    %ebp,%esp
515f23:	5d                   	pop    %ebp
515f24:	c3                   	ret
515f25:	f7 45 d8 04 00 20 00 	testl  $0x200004,-0x28(%ebp)
515f2c:	74 07                	je     0x515f35
515f2e:	81 4e 04 00 00 04 00 	orl    $0x40000,0x4(%esi)
515f35:	5f                   	pop    %edi
515f36:	5e                   	pop    %esi
515f37:	33 c0                	xor    %eax,%eax
515f39:	5b                   	pop    %ebx
515f3a:	8b e5                	mov    %ebp,%esp
515f3c:	5d                   	pop    %ebp
515f3d:	c3                   	ret
515f3e:	cc                   	int3
515f3f:	cc                   	int3
515f40:	55                   	push   %ebp
515f41:	8b ec                	mov    %esp,%ebp
515f43:	83 ec 54             	sub    $0x54,%esp
515f46:	a1 d4 89 72 00       	mov    0x7289d4,%eax
515f4b:	33 c5                	xor    %ebp,%eax
515f4d:	89 45 fc             	mov    %eax,-0x4(%ebp)
515f50:	8b 55 1c             	mov    0x1c(%ebp),%edx
515f53:	8b 4d 18             	mov    0x18(%ebp),%ecx
515f56:	8b 45 14             	mov    0x14(%ebp),%eax
515f59:	89 55 d0             	mov    %edx,-0x30(%ebp)
515f5c:	0f b6 12             	movzbl (%edx),%edx
515f5f:	89 55 c0             	mov    %edx,-0x40(%ebp)
515f62:	8b 55 d0             	mov    -0x30(%ebp),%edx
515f65:	89 45 e4             	mov    %eax,-0x1c(%ebp)
515f68:	89 4d c4             	mov    %ecx,-0x3c(%ebp)
515f6b:	c7 45 d8 00 00 00 00 	movl   $0x0,-0x28(%ebp)
515f72:	8b 52 04             	mov    0x4(%edx),%edx
515f75:	89 55 e0             	mov    %edx,-0x20(%ebp)
515f78:	53                   	push   %ebx
515f79:	8b 5d 08             	mov    0x8(%ebp),%ebx
515f7c:	89 5d b8             	mov    %ebx,-0x48(%ebp)
515f7f:	56                   	push   %esi
515f80:	57                   	push   %edi
515f81:	8b 7d 0c             	mov    0xc(%ebp),%edi
515f84:	8b 73 08             	mov    0x8(%ebx),%esi
515f87:	89 7d d4             	mov    %edi,-0x2c(%ebp)
515f8a:	89 75 ac             	mov    %esi,-0x54(%ebp)
515f8d:	85 c9                	test   %ecx,%ecx
515f8f:	74 06                	je     0x515f97
515f91:	0f b6 49 01          	movzbl 0x1(%ecx),%ecx
515f95:	eb 02                	jmp    0x515f99
515f97:	33 c9                	xor    %ecx,%ecx
515f99:	89 4d dc             	mov    %ecx,-0x24(%ebp)
515f9c:	85 c0                	test   %eax,%eax
515f9e:	74 0c                	je     0x515fac
515fa0:	83 38 00             	cmpl   $0x0,(%eax)
515fa3:	75 1a                	jne    0x515fbf
515fa5:	c7 45 e4 00 00 00 00 	movl   $0x0,-0x1c(%ebp)
515fac:	85 c9                	test   %ecx,%ecx
515fae:	75 0f                	jne    0x515fbf
515fb0:	ff 75 20             	push   0x20(%ebp)
515fb3:	ff 77 0c             	push   0xc(%edi)
515fb6:	56                   	push   %esi
515fb7:	e8 14 42 fe ff       	call   0x4fa1d0
515fbc:	83 c4 0c             	add    $0xc,%esp
515fbf:	8b 47 1c             	mov    0x1c(%edi),%eax
515fc2:	8b 55 d0             	mov    -0x30(%ebp),%edx
515fc5:	8b 38                	mov    (%eax),%edi
515fc7:	8b 42 08             	mov    0x8(%edx),%eax
515fca:	89 7d cc             	mov    %edi,-0x34(%ebp)
515fcd:	85 c0                	test   %eax,%eax
515fcf:	75 2a                	jne    0x515ffb
515fd1:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
515fd4:	85 c9                	test   %ecx,%ecx
515fd6:	74 17                	je     0x515fef
515fd8:	f6 41 20 01          	testb  $0x1,0x20(%ecx)
515fdc:	8b 01                	mov    (%ecx),%eax
515fde:	8b 10                	mov    (%eax),%edx
515fe0:	89 55 d8             	mov    %edx,-0x28(%ebp)
515fe3:	75 04                	jne    0x515fe9
515fe5:	42                   	inc    %edx
515fe6:	89 55 d8             	mov    %edx,-0x28(%ebp)
515fe9:	01 53 2c             	add    %edx,0x2c(%ebx)
515fec:	8b 55 d0             	mov    -0x30(%ebp),%edx
515fef:	8b 43 2c             	mov    0x2c(%ebx),%eax
515ff2:	40                   	inc    %eax
515ff3:	89 42 08             	mov    %eax,0x8(%edx)
515ff6:	01 7b 2c             	add    %edi,0x2c(%ebx)
515ff9:	eb 12                	jmp    0x51600d
515ffb:	8b 4b 2c             	mov    0x2c(%ebx),%ecx
515ffe:	03 c7                	add    %edi,%eax
516000:	3b c1                	cmp    %ecx,%eax
516002:	7e 06                	jle    0x51600a
516004:	8d 04 39             	lea    (%ecx,%edi,1),%eax
516007:	89 43 2c             	mov    %eax,0x2c(%ebx)
51600a:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
51600d:	83 7d 10 00          	cmpl   $0x0,0x10(%ebp)
516011:	89 7a 0c             	mov    %edi,0xc(%edx)
516014:	8b 52 08             	mov    0x8(%edx),%edx
516017:	89 55 f0             	mov    %edx,-0x10(%ebp)
51601a:	89 55 bc             	mov    %edx,-0x44(%ebp)
51601d:	7c 6c                	jl     0x51608b
51601f:	85 ff                	test   %edi,%edi
516021:	0f 8e 7e 01 00 00    	jle    0x5161a5
516027:	33 db                	xor    %ebx,%ebx
516029:	0f 1f 80 00 00 00 00 	nopl   0x0(%eax)
516030:	8b 4e 6c             	mov    0x6c(%esi),%ecx
516033:	39 4e 70             	cmp    %ecx,0x70(%esi)
516036:	7f 18                	jg     0x516050
516038:	8d 04 13             	lea    (%ebx,%edx,1),%eax
51603b:	50                   	push   %eax
51603c:	53                   	push   %ebx
51603d:	ff 75 10             	push   0x10(%ebp)
516040:	6a 59                	push   $0x59
516042:	56                   	push   %esi
516043:	e8 b8 04 ff ff       	call   0x506500
516048:	8b 55 f0             	mov    -0x10(%ebp),%edx
51604b:	83 c4 14             	add    $0x14,%esp
51604e:	eb 2e                	jmp    0x51607e
516050:	8d 41 01             	lea    0x1(%ecx),%eax
516053:	89 46 6c             	mov    %eax,0x6c(%esi)
516056:	8d 0c 89             	lea    (%ecx,%ecx,4),%ecx
516059:	8b 46 68             	mov    0x68(%esi),%eax
51605c:	c7 04 88 59 00 00 00 	movl   $0x59,(%eax,%ecx,4)
516063:	89 5c 88 08          	mov    %ebx,0x8(%eax,%ecx,4)
516067:	c7 44 88 10 00 00 00 	movl   $0x0,0x10(%eax,%ecx,4)
51606e:	00
51606f:	8d 0c 88             	lea    (%eax,%ecx,4),%ecx
516072:	8b 45 10             	mov    0x10(%ebp),%eax
516075:	89 41 04             	mov    %eax,0x4(%ecx)
516078:	8d 04 13             	lea    (%ebx,%edx,1),%eax
51607b:	89 41 0c             	mov    %eax,0xc(%ecx)
51607e:	43                   	inc    %ebx
51607f:	3b df                	cmp    %edi,%ebx
516081:	7c ad                	jl     0x516030
516083:	8b 5d b8             	mov    -0x48(%ebp),%ebx
516086:	e9 1a 01 00 00       	jmp    0x5161a5
51608b:	8b 45 c0             	mov    -0x40(%ebp),%eax
51608e:	83 f8 03             	cmp    $0x3,%eax
516091:	0f 84 0e 01 00 00    	je     0x5161a5
516097:	83 f8 0a             	cmp    $0xa,%eax
51609a:	74 0e                	je     0x5160aa
51609c:	83 f8 09             	cmp    $0x9,%eax
51609f:	74 09                	je     0x5160aa
5160a1:	83 f8 0d             	cmp    $0xd,%eax
5160a4:	74 04                	je     0x5160aa
5160a6:	32 c0                	xor    %al,%al
5160a8:	eb 02                	jmp    0x5160ac
5160aa:	b0 01                	mov    $0x1,%al
5160ac:	88 45 ec             	mov    %al,-0x14(%ebp)
5160af:	85 c9                	test   %ecx,%ecx
5160b1:	0f 84 ab 00 00 00    	je     0x516162
5160b7:	83 7d dc 00          	cmpl   $0x0,-0x24(%ebp)
5160bb:	0f 85 a1 00 00 00    	jne    0x516162
5160c1:	83 7d c0 0c          	cmpl   $0xc,-0x40(%ebp)
5160c5:	0f 84 97 00 00 00    	je     0x516162
5160cb:	83 7d c0 0e          	cmpl   $0xe,-0x40(%ebp)
5160cf:	0f 84 8d 00 00 00    	je     0x516162
5160d5:	8b 49 04             	mov    0x4(%ecx),%ecx
5160d8:	0c 0c                	or     $0xc,%al
5160da:	88 45 ec             	mov    %al,-0x14(%ebp)
5160dd:	8b 45 e4             	mov    -0x1c(%ebp),%eax
5160e0:	89 4d e8             	mov    %ecx,-0x18(%ebp)
5160e3:	8b 00                	mov    (%eax),%eax
5160e5:	3b 08                	cmp    (%eax),%ecx
5160e7:	7d 4e                	jge    0x516137
5160e9:	8b 7d e4             	mov    -0x1c(%ebp),%edi
5160ec:	8b d9                	mov    %ecx,%ebx
5160ee:	8b 75 d4             	mov    -0x2c(%ebp),%esi
5160f1:	8d 0c 9b             	lea    (%ebx,%ebx,4),%ecx
5160f4:	c1 e1 02             	shl    $0x2,%ecx
5160f7:	89 4d c8             	mov    %ecx,-0x38(%ebp)
5160fa:	66 0f 1f 44 00 00    	nopw   0x0(%eax,%eax,1)
516100:	8b 07                	mov    (%edi),%eax
516102:	0f b7 44 08 14       	movzwl 0x14(%eax,%ecx,1),%eax
516107:	85 c0                	test   %eax,%eax
516109:	74 16                	je     0x516121
51610b:	8d 0c 80             	lea    (%eax,%eax,4),%ecx
51610e:	66 8b d3             	mov    %bx,%dx
516111:	66 2b 57 04          	sub    0x4(%edi),%dx
516115:	8b 46 1c             	mov    0x1c(%esi),%eax
516118:	66 42                	inc    %dx
51611a:	66 89 14 88          	mov    %dx,(%eax,%ecx,4)
51611e:	8b 4d c8             	mov    -0x38(%ebp),%ecx
516121:	8b 07                	mov    (%edi),%eax
516123:	43                   	inc    %ebx
516124:	83 c1 14             	add    $0x14,%ecx
516127:	89 4d c8             	mov    %ecx,-0x38(%ebp)
51612a:	3b 18                	cmp    (%eax),%ebx
51612c:	7c d2                	jl     0x516100
51612e:	8b 5d b8             	mov    -0x48(%ebp),%ebx
516131:	8b 7d cc             	mov    -0x34(%ebp),%edi
516134:	8b 55 f0             	mov    -0x10(%ebp),%edx
516137:	8b 45 d4             	mov    -0x2c(%ebp),%eax
51613a:	8b 40 1c             	mov    0x1c(%eax),%eax
51613d:	8b 08                	mov    (%eax),%ecx
51613f:	85 c9                	test   %ecx,%ecx
516141:	7e 1c                	jle    0x51615f
516143:	83 c0 14             	add    $0x14,%eax
516146:	66 83 38 00          	cmpw   $0x0,(%eax)
51614a:	76 08                	jbe    0x516154
51614c:	4f                   	dec    %edi
51614d:	c7 45 bc 00 00 00 00 	movl   $0x0,-0x44(%ebp)
516154:	83 c0 14             	add    $0x14,%eax
516157:	83 e9 01             	sub    $0x1,%ecx
51615a:	75 ea                	jne    0x516146
51615c:	89 7d cc             	mov    %edi,-0x34(%ebp)
51615f:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
516162:	8b 75 d4             	mov    -0x2c(%ebp),%esi
516165:	8a 45 ec             	mov    -0x14(%ebp),%al
516168:	89 55 f4             	mov    %edx,-0xc(%ebp)
51616b:	88 45 f8             	mov    %al,-0x8(%ebp)
51616e:	83 7e 08 00          	cmpl   $0x0,0x8(%esi)
516172:	8b 75 ac             	mov    -0x54(%ebp),%esi
516175:	74 19                	je     0x516190
516177:	a8 08                	test   $0x8,%al
516179:	74 15                	je     0x516190
51617b:	83 7d d8 00          	cmpl   $0x0,-0x28(%ebp)
51617f:	7e 0f                	jle    0x516190
516181:	8d 45 f4             	lea    -0xc(%ebp),%eax
516184:	c7 45 bc 00 00 00 00 	movl   $0x0,-0x44(%ebp)
51618b:	89 41 24             	mov    %eax,0x24(%ecx)
51618e:	eb 15                	jmp    0x5161a5
516190:	ff 75 ec             	push   -0x14(%ebp)
516193:	8b 45 d4             	mov    -0x2c(%ebp),%eax
516196:	6a 00                	push   $0x0
516198:	52                   	push   %edx
516199:	ff 70 1c             	push   0x1c(%eax)
51619c:	53                   	push   %ebx
51619d:	e8 2e db 00 00       	call   0x523cd0
5161a2:	83 c4 14             	add    $0x14,%esp
5161a5:	83 7d dc 00          	cmpl   $0x0,-0x24(%ebp)
5161a9:	0f 84 f5 02 00 00    	je     0x5164a4
5161af:	8b 4d c4             	mov    -0x3c(%ebp),%ecx
5161b2:	0f b6 41 01          	movzbl 0x1(%ecx),%eax
5161b6:	83 e8 01             	sub    $0x1,%eax
5161b9:	0f 84 53 02 00 00    	je     0x516412
5161bf:	83 e8 01             	sub    $0x1,%eax
5161c2:	74 18                	je     0x5161dc
5161c4:	ff 75 f0             	push   -0x10(%ebp)
5161c7:	57                   	push   %edi
5161c8:	ff 75 20             	push   0x20(%ebp)
5161cb:	ff 71 04             	push   0x4(%ecx)
5161ce:	53                   	push   %ebx
5161cf:	e8 7c 37 fe ff       	call   0x4f9950
5161d4:	83 c4 14             	add    $0x14,%esp
5161d7:	e9 6b 02 00 00       	jmp    0x516447
5161dc:	8b 43 2c             	mov    0x2c(%ebx),%eax
5161df:	8d 50 01             	lea    0x1(%eax),%edx
5161e2:	03 c7                	add    %edi,%eax
5161e4:	89 43 2c             	mov    %eax,0x2c(%ebx)
5161e7:	89 55 c8             	mov    %edx,-0x38(%ebp)
5161ea:	8b 16                	mov    (%esi),%edx
5161ec:	80 7a 51 00          	cmpb   $0x0,0x51(%edx)
5161f0:	75 30                	jne    0x516222
5161f2:	8b 41 08             	mov    0x8(%ecx),%eax
5161f5:	8d 0c 80             	lea    (%eax,%eax,4),%ecx
5161f8:	8b 46 68             	mov    0x68(%esi),%eax
5161fb:	ff 74 88 10          	push   0x10(%eax,%ecx,4)
5161ff:	8d 3c 88             	lea    (%eax,%ecx,4),%edi
516202:	0f be 47 01          	movsbl 0x1(%edi),%eax
516206:	50                   	push   %eax
516207:	52                   	push   %edx
516208:	e8 a3 da fe ff       	call   0x503cb0
51620d:	8b 4d c4             	mov    -0x3c(%ebp),%ecx
516210:	83 c4 0c             	add    $0xc,%esp
516213:	66 c7 07 ad 00       	movw   $0xad,(%edi)
516218:	c7 47 10 00 00 00 00 	movl   $0x0,0x10(%edi)
51621f:	8b 7d cc             	mov    -0x34(%ebp),%edi
516222:	8b 49 08             	mov    0x8(%ecx),%ecx
516225:	85 c9                	test   %ecx,%ecx
516227:	79 04                	jns    0x51622d
516229:	8b 4e 6c             	mov    0x6c(%esi),%ecx
51622c:	49                   	dec    %ecx
51622d:	8b 06                	mov    (%esi),%eax
51622f:	80 78 51 00          	cmpb   $0x0,0x51(%eax)
516233:	74 07                	je     0x51623c
516235:	b8 ec 02 73 00       	mov    $0x7302ec,%eax
51623a:	eb 09                	jmp    0x516245
51623c:	8b 46 68             	mov    0x68(%esi),%eax
51623f:	8d 0c 89             	lea    (%ecx,%ecx,4),%ecx
516242:	8d 04 88             	lea    (%eax,%ecx,4),%eax
516245:	8b 4d c8             	mov    -0x38(%ebp),%ecx
516248:	c6 00 48             	movb   $0x48,(%eax)
51624b:	c7 40 04 01 00 00 00 	movl   $0x1,0x4(%eax)
516252:	89 48 08             	mov    %ecx,0x8(%eax)
516255:	8b 46 6c             	mov    0x6c(%esi),%eax
516258:	03 c7                	add    %edi,%eax
51625a:	c7 45 c4 00 00 00 00 	movl   $0x0,-0x3c(%ebp)
516261:	89 45 b0             	mov    %eax,-0x50(%ebp)
516264:	85 ff                	test   %edi,%edi
516266:	0f 8e 54 01 00 00    	jle    0x5163c0
51626c:	8b 45 f0             	mov    -0x10(%ebp),%eax
51626f:	33 d2                	xor    %edx,%edx
516271:	2b c8                	sub    %eax,%ecx
516273:	89 45 ec             	mov    %eax,-0x14(%ebp)
516276:	89 55 e8             	mov    %edx,-0x18(%ebp)
516279:	89 4d dc             	mov    %ecx,-0x24(%ebp)
51627c:	0f 1f 40 00          	nopl   0x0(%eax)
516280:	8b 45 d4             	mov    -0x2c(%ebp),%eax
516283:	8b 40 1c             	mov    0x1c(%eax),%eax
516286:	ff 74 10 04          	push   0x4(%eax,%edx,1)
51628a:	53                   	push   %ebx
51628b:	e8 50 00 01 00       	call   0x5262e0
516290:	8b 4e 6c             	mov    0x6c(%esi),%ecx
516293:	8b d0                	mov    %eax,%edx
516295:	8d 47 ff             	lea    -0x1(%edi),%eax
516298:	89 55 b4             	mov    %edx,-0x4c(%ebp)
51629b:	83 c4 08             	add    $0x8,%esp
51629e:	39 45 c4             	cmp    %eax,-0x3c(%ebp)
5162a1:	7d 52                	jge    0x5162f5
5162a3:	39 4e 70             	cmp    %ecx,0x70(%esi)
5162a6:	7f 20                	jg     0x5162c8
5162a8:	8b 45 ec             	mov    -0x14(%ebp),%eax
5162ab:	8b 4d dc             	mov    -0x24(%ebp),%ecx