57ff34:	e8 b7 51 f6 ff       	call   0x4e50f0
57ff39:	68 71 02 00 00       	push   $0x271
57ff3e:	68 c4 b6 65 00       	push   $0x65b6c4
57ff43:	ff 36                	push   (%esi)
57ff45:	e8 36 08 f6 ff       	call   0x4e0780
57ff4a:	68 72 02 00 00       	push   $0x272
57ff4f:	68 c4 b6 65 00       	push   $0x65b6c4
57ff54:	56                   	push   %esi
57ff55:	e8 26 08 f6 ff       	call   0x4e0780
57ff5a:	83 c4 20             	add    $0x20,%esp
57ff5d:	5f                   	pop    %edi
57ff5e:	5d                   	pop    %ebp
57ff5f:	5b                   	pop    %ebx
57ff60:	33 c0                	xor    %eax,%eax
57ff62:	5e                   	pop    %esi
57ff63:	83 c4 10             	add    $0x10,%esp
57ff66:	c3                   	ret
57ff67:	cc                   	int3
57ff68:	cc                   	int3
57ff69:	cc                   	int3
57ff6a:	cc                   	int3
57ff6b:	cc                   	int3
57ff6c:	cc                   	int3
57ff6d:	cc                   	int3
57ff6e:	cc                   	int3
57ff6f:	cc                   	int3
57ff70:	57                   	push   %edi
57ff71:	8b 7c 24 08          	mov    0x8(%esp),%edi
57ff75:	85 ff                	test   %edi,%edi
57ff77:	0f 84 7e 00 00 00    	je     0x57fffb
57ff7d:	53                   	push   %ebx
57ff7e:	56                   	push   %esi
57ff7f:	ff 77 0c             	push   0xc(%edi)
57ff82:	e8 99 4f f6 ff       	call   0x4e4f20
57ff87:	68 00 00 58 00       	push   $0x580000
57ff8c:	ff 77 10             	push   0x10(%edi)
57ff8f:	e8 5c 51 f6 ff       	call   0x4e50f0
57ff94:	8b 37                	mov    (%edi),%esi
57ff96:	33 db                	xor    %ebx,%ebx
57ff98:	83 c4 0c             	add    $0xc,%esp
57ff9b:	39 5f 04             	cmp    %ebx,0x4(%edi)
57ff9e:	7e 28                	jle    0x57ffc8
57ffa0:	ff 36                	push   (%esi)
57ffa2:	e8 39 72 fd ff       	call   0x5571e0
57ffa7:	68 90 48 58 00       	push   $0x584890
57ffac:	ff 76 04             	push   0x4(%esi)
57ffaf:	e8 3c 51 f6 ff       	call   0x4e50f0
57ffb4:	ff 76 08             	push   0x8(%esi)
57ffb7:	e8 d4 48 00 00       	call   0x584890
57ffbc:	43                   	inc    %ebx
57ffbd:	8d 76 10             	lea    0x10(%esi),%esi
57ffc0:	83 c4 10             	add    $0x10,%esp
57ffc3:	3b 5f 04             	cmp    0x4(%edi),%ebx
57ffc6:	7c d8                	jl     0x57ffa0
57ffc8:	68 00 bf 57 00       	push   $0x57bf00
57ffcd:	ff 77 08             	push   0x8(%edi)
57ffd0:	e8 1b 51 f6 ff       	call   0x4e50f0
57ffd5:	68 71 02 00 00       	push   $0x271
57ffda:	68 c4 b6 65 00       	push   $0x65b6c4
57ffdf:	ff 37                	push   (%edi)
57ffe1:	e8 9a 07 f6 ff       	call   0x4e0780
57ffe6:	68 72 02 00 00       	push   $0x272
57ffeb:	68 c4 b6 65 00       	push   $0x65b6c4
57fff0:	57                   	push   %edi
57fff1:	e8 8a 07 f6 ff       	call   0x4e0780
57fff6:	83 c4 20             	add    $0x20,%esp
57fff9:	5e                   	pop    %esi
57fffa:	5b                   	pop    %ebx
57fffb:	5f                   	pop    %edi
57fffc:	c3                   	ret
57fffd:	cc                   	int3
57fffe:	cc                   	int3
57ffff:	cc                   	int3
580000:	8b 44 24 04          	mov    0x4(%esp),%eax
580004:	8b 08                	mov    (%eax),%ecx
580006:	85 c9                	test   %ecx,%ecx
580008:	74 18                	je     0x580022
58000a:	f6 01 08             	testb  $0x8,(%ecx)
58000d:	74 13                	je     0x580022
58000f:	68 5c 02 00 00       	push   $0x25c
580014:	68 c4 b6 65 00       	push   $0x65b6c4
580019:	50                   	push   %eax
58001a:	e8 61 07 f6 ff       	call   0x4e0780
58001f:	83 c4 0c             	add    $0xc,%esp
580022:	c3                   	ret
580023:	cc                   	int3
580024:	cc                   	int3
580025:	cc                   	int3
580026:	cc                   	int3
580027:	cc                   	int3
580028:	cc                   	int3
580029:	cc                   	int3
58002a:	cc                   	int3
58002b:	cc                   	int3
58002c:	cc                   	int3
58002d:	cc                   	int3
58002e:	cc                   	int3
58002f:	cc                   	int3
580030:	b8 0c 00 00 00       	mov    $0xc,%eax
580035:	e8 76 17 05 00       	call   0x5d17b0
58003a:	53                   	push   %ebx
58003b:	55                   	push   %ebp
58003c:	56                   	push   %esi
58003d:	57                   	push   %edi
58003e:	8b 7c 24 20          	mov    0x20(%esp),%edi
580042:	8b 4f 04             	mov    0x4(%edi),%ecx
580045:	8d 6f 0c             	lea    0xc(%edi),%ebp
580048:	8b 1f                	mov    (%edi),%ebx
58004a:	8b c1                	mov    %ecx,%eax
58004c:	03 c0                	add    %eax,%eax
58004e:	89 6c 24 18          	mov    %ebp,0x18(%esp)
580052:	8b 74 c3 f8          	mov    -0x8(%ebx,%eax,8),%esi
580056:	85 f6                	test   %esi,%esi
580058:	74 42                	je     0x58009c
58005a:	8b 45 00             	mov    0x0(%ebp),%eax
58005d:	85 c0                	test   %eax,%eax
58005f:	75 10                	jne    0x580071
580061:	e8 1a 48 00 00       	call   0x584880
580066:	89 45 00             	mov    %eax,0x0(%ebp)
580069:	85 c0                	test   %eax,%eax
58006b:	0f 84 fb 00 00 00    	je     0x58016c
580071:	56                   	push   %esi
580072:	50                   	push   %eax
580073:	e8 18 4e f6 ff       	call   0x4e4e90
580078:	83 c4 08             	add    $0x8,%esp
58007b:	85 c0                	test   %eax,%eax
58007d:	79 14                	jns    0x580093
58007f:	56                   	push   %esi
580080:	ff 75 00             	push   0x0(%ebp)
580083:	e8 c8 50 f6 ff       	call   0x4e5150
580088:	83 c4 08             	add    $0x8,%esp
58008b:	85 c0                	test   %eax,%eax
58008d:	0f 84 d9 00 00 00    	je     0x58016c
580093:	8b 6c 24 24          	mov    0x24(%esp),%ebp
580097:	8b 1f                	mov    (%edi),%ebx
580099:	8b 4f 04             	mov    0x4(%edi),%ecx
58009c:	c7 44 24 10 01 00 00 	movl   $0x1,0x10(%esp)
5800a3:	00
5800a4:	83 f9 01             	cmp    $0x1,%ecx
5800a7:	0f 8e 92 00 00 00    	jle    0x58013f
5800ad:	83 c3 04             	add    $0x4,%ebx
5800b0:	8b 43 04             	mov    0x4(%ebx),%eax
5800b3:	89 44 24 14          	mov    %eax,0x14(%esp)
5800b7:	85 c0                	test   %eax,%eax
5800b9:	0f 84 80 00 00 00    	je     0x58013f
5800bf:	ff 73 10             	push   0x10(%ebx)
5800c2:	83 c3 10             	add    $0x10,%ebx
5800c5:	33 f6                	xor    %esi,%esi
5800c7:	e8 f4 4f f6 ff       	call   0x4e50c0
5800cc:	83 c4 04             	add    $0x4,%esp
5800cf:	85 c0                	test   %eax,%eax
5800d1:	7e 5a                	jle    0x58012d
5800d3:	56                   	push   %esi
5800d4:	ff 33                	push   (%ebx)
5800d6:	e8 a5 51 f6 ff       	call   0x4e5280
5800db:	8b f8                	mov    %eax,%edi
5800dd:	83 c4 08             	add    $0x8,%esp
5800e0:	8b 44 24 14          	mov    0x14(%esp),%eax
5800e4:	39 47 04             	cmp    %eax,0x4(%edi)
5800e7:	75 31                	jne    0x58011a
5800e9:	8b 45 00             	mov    0x0(%ebp),%eax
5800ec:	85 c0                	test   %eax,%eax
5800ee:	75 0c                	jne    0x5800fc
5800f0:	e8 8b 47 00 00       	call   0x584880
5800f5:	89 45 00             	mov    %eax,0x0(%ebp)
5800f8:	85 c0                	test   %eax,%eax
5800fa:	74 58                	je     0x580154
5800fc:	57                   	push   %edi
5800fd:	50                   	push   %eax
5800fe:	e8 8d 4d f6 ff       	call   0x4e4e90
580103:	83 c4 08             	add    $0x8,%esp
580106:	85 c0                	test   %eax,%eax
580108:	79 10                	jns    0x58011a
58010a:	57                   	push   %edi
58010b:	ff 75 00             	push   0x0(%ebp)
58010e:	e8 3d 50 f6 ff       	call   0x4e5150
580113:	83 c4 08             	add    $0x8,%esp
580116:	85 c0                	test   %eax,%eax
580118:	74 3a                	je     0x580154
58011a:	ff 33                	push   (%ebx)
58011c:	46                   	inc    %esi
58011d:	e8 9e 4f f6 ff       	call   0x4e50c0
580122:	83 c4 04             	add    $0x4,%esp
580125:	3b f0                	cmp    %eax,%esi
580127:	7c aa                	jl     0x5800d3
580129:	8b 7c 24 20          	mov    0x20(%esp),%edi
58012d:	8b 54 24 10          	mov    0x10(%esp),%edx
580131:	42                   	inc    %edx
580132:	89 54 24 10          	mov    %edx,0x10(%esp)
580136:	3b 57 04             	cmp    0x4(%edi),%edx
580139:	0f 8c 71 ff ff ff    	jl     0x5800b0
58013f:	8b 4c 24 24          	mov    0x24(%esp),%ecx
580143:	3b e9                	cmp    %ecx,%ebp
580145:	75 2f                	jne    0x580176
580147:	5f                   	pop    %edi
580148:	5e                   	pop    %esi
580149:	5d                   	pop    %ebp
58014a:	b8 02 00 00 00       	mov    $0x2,%eax
58014f:	5b                   	pop    %ebx
580150:	83 c4 0c             	add    $0xc,%esp
580153:	c3                   	ret
580154:	8b 5c 24 24          	mov    0x24(%esp),%ebx
580158:	3b eb                	cmp    %ebx,%ebp
58015a:	75 10                	jne    0x58016c
58015c:	ff 33                	push   (%ebx)
58015e:	e8 bd 4d f6 ff       	call   0x4e4f20
580163:	83 c4 04             	add    $0x4,%esp
580166:	c7 03 00 00 00 00    	movl   $0x0,(%ebx)
58016c:	5f                   	pop    %edi
58016d:	5e                   	pop    %esi
58016e:	5d                   	pop    %ebp
58016f:	33 c0                	xor    %eax,%eax
580171:	5b                   	pop    %ebx
580172:	83 c4 0c             	add    $0xc,%esp
580175:	c3                   	ret
580176:	8b 44 24 18          	mov    0x18(%esp),%eax
58017a:	5f                   	pop    %edi
58017b:	5e                   	pop    %esi
58017c:	5d                   	pop    %ebp
58017d:	8b 00                	mov    (%eax),%eax
58017f:	89 01                	mov    %eax,(%ecx)
580181:	b8 01 00 00 00       	mov    $0x1,%eax
580186:	5b                   	pop    %ebx
580187:	83 c4 0c             	add    $0xc,%esp
58018a:	c3                   	ret
58018b:	cc                   	int3
58018c:	cc                   	int3
58018d:	cc                   	int3
58018e:	cc                   	int3
58018f:	cc                   	int3
580190:	b8 18 00 00 00       	mov    $0x18,%eax
580195:	e8 16 16 05 00       	call   0x5d17b0
58019a:	8b 44 24 1c          	mov    0x1c(%esp),%eax
58019e:	53                   	push   %ebx
58019f:	55                   	push   %ebp
5801a0:	56                   	push   %esi
5801a1:	83 78 04 01          	cmpl   $0x1,0x4(%eax)
5801a5:	8b 28                	mov    (%eax),%ebp
5801a7:	57                   	push   %edi
5801a8:	c7 44 24 1c 01 00 00 	movl   $0x1,0x1c(%esp)
5801af:	00
5801b0:	8d 7d 10             	lea    0x10(%ebp),%edi
5801b3:	89 7c 24 10          	mov    %edi,0x10(%esp)
5801b7:	0f 8e 2f 02 00 00    	jle    0x5803ec
5801bd:	83 c5 04             	add    $0x4,%ebp
5801c0:	89 6c 24 20          	mov    %ebp,0x20(%esp)
5801c4:	ff 37                	push   (%edi)
5801c6:	e8 b5 15 ff ff       	call   0x571780
5801cb:	8b f0                	mov    %eax,%esi
5801cd:	33 db                	xor    %ebx,%ebx
5801cf:	89 74 24 28          	mov    %esi,0x28(%esp)
5801d3:	89 5c 24 1c          	mov    %ebx,0x1c(%esp)
5801d7:	ff 76 04             	push   0x4(%esi)
5801da:	e8 e1 4e f6 ff       	call   0x4e50c0
5801df:	83 c4 08             	add    $0x8,%esp
5801e2:	85 c0                	test   %eax,%eax
5801e4:	0f 8e c8 00 00 00    	jle    0x5802b2
5801ea:	66 0f 1f 44 00 00    	nopw   0x0(%eax,%eax,1)
5801f0:	53                   	push   %ebx
5801f1:	ff 76 04             	push   0x4(%esi)
5801f4:	e8 87 50 f6 ff       	call   0x4e5280
5801f9:	ff 75 00             	push   0x0(%ebp)
5801fc:	8b d8                	mov    %eax,%ebx
5801fe:	c7 44 24 20 00 00 00 	movl   $0x0,0x20(%esp)
580205:	00
580206:	33 f6                	xor    %esi,%esi
580208:	e8 b3 4e f6 ff       	call   0x4e50c0
58020d:	83 c4 0c             	add    $0xc,%esp
580210:	85 c0                	test   %eax,%eax
580212:	7e 5e                	jle    0x580272
580214:	56                   	push   %esi
580215:	ff 75 00             	push   0x0(%ebp)
580218:	e8 63 50 f6 ff       	call   0x4e5280
58021d:	ff 73 04             	push   0x4(%ebx)
580220:	8b f8                	mov    %eax,%edi
580222:	8d 4d fc             	lea    -0x4(%ebp),%ecx
580225:	57                   	push   %edi
580226:	51                   	push   %ecx
580227:	e8 84 46 00 00       	call   0x5848b0
58022c:	83 c4 14             	add    $0x14,%esp
58022f:	85 c0                	test   %eax,%eax
580231:	74 23                	je     0x580256
580233:	6a 00                	push   $0x0
580235:	57                   	push   %edi
580236:	53                   	push   %ebx
580237:	ff 74 24 1c          	push   0x1c(%esp)
58023b:	e8 a0 44 00 00       	call   0x5846e0
580240:	83 c4 10             	add    $0x10,%esp
580243:	85 c0                	test   %eax,%eax
580245:	0f 84 ae 01 00 00    	je     0x5803f9
58024b:	bf 01 00 00 00       	mov    $0x1,%edi
580250:	89 7c 24 14          	mov    %edi,0x14(%esp)
580254:	eb 04                	jmp    0x58025a
580256:	8b 7c 24 14          	mov    0x14(%esp),%edi
58025a:	ff 75 00             	push   0x0(%ebp)
58025d:	46                   	inc    %esi
58025e:	e8 5d 4e f6 ff       	call   0x4e50c0
580263:	83 c4 04             	add    $0x4,%esp
580266:	3b f0                	cmp    %eax,%esi
580268:	7c aa                	jl     0x580214
58026a:	85 ff                	test   %edi,%edi
58026c:	75 20                	jne    0x58028e
58026e:	8b 7c 24 10          	mov    0x10(%esp),%edi
580272:	8b 45 04             	mov    0x4(%ebp),%eax
580275:	85 c0                	test   %eax,%eax
580277:	74 15                	je     0x58028e
580279:	6a 00                	push   $0x0
58027b:	50                   	push   %eax
58027c:	53                   	push   %ebx
58027d:	57                   	push   %edi
58027e:	e8 5d 44 00 00       	call   0x5846e0
580283:	83 c4 10             	add    $0x10,%esp
580286:	85 c0                	test   %eax,%eax
580288:	0f 84 6b 01 00 00    	je     0x5803f9
58028e:	8b 74 24 24          	mov    0x24(%esp),%esi
580292:	8b 5c 24 18          	mov    0x18(%esp),%ebx
580296:	43                   	inc    %ebx
580297:	89 5c 24 18          	mov    %ebx,0x18(%esp)
58029b:	ff 76 04             	push   0x4(%esi)
58029e:	e8 1d 4e f6 ff       	call   0x4e50c0
5802a3:	8b 7c 24 14          	mov    0x14(%esp),%edi
5802a7:	83 c4 04             	add    $0x4,%esp
5802aa:	3b d8                	cmp    %eax,%ebx
5802ac:	0f 8c 3e ff ff ff    	jl     0x5801f0
5802b2:	f7 45 18 00 02 00 00 	testl  $0x200,0x18(%ebp)
5802b9:	75 16                	jne    0x5802d1
5802bb:	ff 74 24 2c          	push   0x2c(%esp)
5802bf:	56                   	push   %esi
5802c0:	57                   	push   %edi
5802c1:	e8 6a 04 00 00       	call   0x580730
5802c6:	83 c4 0c             	add    $0xc,%esp
5802c9:	85 c0                	test   %eax,%eax
5802cb:	0f 84 28 01 00 00    	je     0x5803f9
5802d1:	f7 45 18 00 04 00 00 	testl  $0x400,0x18(%ebp)
5802d8:	8b df                	mov    %edi,%ebx
5802da:	74 4a                	je     0x580326
5802dc:	8b 7d 10             	mov    0x10(%ebp),%edi
5802df:	57                   	push   %edi
5802e0:	e8 db 4d f6 ff       	call   0x4e50c0
5802e5:	8b f0                	mov    %eax,%esi
5802e7:	83 c4 04             	add    $0x4,%esp
5802ea:	83 ee 01             	sub    $0x1,%esi
5802ed:	78 37                	js     0x580326
5802ef:	90                   	nop
5802f0:	56                   	push   %esi
5802f1:	57                   	push   %edi
5802f2:	e8 89 4f f6 ff       	call   0x4e5280
5802f7:	83 c4 08             	add    $0x8,%esp
5802fa:	8b 08                	mov    (%eax),%ecx
5802fc:	f6 01 03             	testb  $0x3,(%ecx)