4c0000:	55                   	push   %ebp
4c0001:	8b ec                	mov    %esp,%ebp
4c0003:	8b 55 08             	mov    0x8(%ebp),%edx
4c0006:	85 d2                	test   %edx,%edx
4c0008:	74 44                	je     0x4c004e
4c000a:	53                   	push   %ebx
4c000b:	56                   	push   %esi
4c000c:	bb 30 c7 6a 00       	mov    $0x6ac730,%ebx
4c0011:	c6 02 bd             	movb   $0xbd,(%edx)
4c0014:	57                   	push   %edi
4c0015:	be 32 c7 6a 00       	mov    $0x6ac732,%esi
4c001a:	8d 42 03             	lea    0x3(%edx),%eax
4c001d:	2b da                	sub    %edx,%ebx
4c001f:	bf 15 00 00 00       	mov    $0x15,%edi
4c0024:	0f b6 4e ff          	movzbl -0x1(%esi),%ecx
4c0028:	8d 76 03             	lea    0x3(%esi),%esi
4c002b:	32 0a                	xor    (%edx),%cl
4c002d:	8d 40 03             	lea    0x3(%eax),%eax
4c0030:	88 48 fb             	mov    %cl,-0x5(%eax)
4c0033:	0f b6 0a             	movzbl (%edx),%ecx
4c0036:	32 4e fd             	xor    -0x3(%esi),%cl
4c0039:	88 48 fc             	mov    %cl,-0x4(%eax)
4c003c:	0f b6 4c 03 fd       	movzbl -0x3(%ebx,%eax,1),%ecx
4c0041:	32 0a                	xor    (%edx),%cl
4c0043:	88 48 fd             	mov    %cl,-0x3(%eax)
4c0046:	83 ef 01             	sub    $0x1,%edi
4c0049:	75 d9                	jne    0x4c0024
4c004b:	5f                   	pop    %edi
4c004c:	5e                   	pop    %esi
4c004d:	5b                   	pop    %ebx
4c004e:	b8 40 00 00 00       	mov    $0x40,%eax
4c0053:	5d                   	pop    %ebp
4c0054:	c2 04 00             	ret    $0x4
4c0057:	cc                   	int3
4c0058:	cc                   	int3
4c0059:	cc                   	int3
4c005a:	cc                   	int3
4c005b:	cc                   	int3
4c005c:	cc                   	int3
4c005d:	cc                   	int3
4c005e:	cc                   	int3
4c005f:	cc                   	int3
4c0060:	55                   	push   %ebp
4c0061:	8b ec                	mov    %esp,%ebp
4c0063:	8b 45 08             	mov    0x8(%ebp),%eax
4c0066:	56                   	push   %esi
4c0067:	8b f1                	mov    %ecx,%esi
4c0069:	ff 70 04             	push   0x4(%eax)
4c006c:	e8 68 e8 10 00       	call   0x5ce8d9
4c0071:	83 c4 04             	add    $0x4,%esp
4c0074:	89 46 04             	mov    %eax,0x4(%esi)
4c0077:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
4c007b:	74 61                	je     0x4c00de
4c007d:	a1 14 06 73 00       	mov    0x730614,%eax
4c0082:	85 c0                	test   %eax,%eax
4c0084:	75 2f                	jne    0x4c00b5
4c0086:	50                   	push   %eax
4c0087:	8d 4d 08             	lea    0x8(%ebp),%ecx
4c008a:	e8 68 e3 10 00       	call   0x5ce3f7
4c008f:	83 3d 14 06 73 00 00 	cmpl   $0x0,0x730614
4c0096:	75 10                	jne    0x4c00a8
4c0098:	a1 08 06 73 00       	mov    0x730608,%eax
4c009d:	40                   	inc    %eax
4c009e:	a3 08 06 73 00       	mov    %eax,0x730608
4c00a3:	a3 14 06 73 00       	mov    %eax,0x730614
4c00a8:	8d 4d 08             	lea    0x8(%ebp),%ecx
4c00ab:	e8 9f e3 10 00       	call   0x5ce44f
4c00b0:	a1 14 06 73 00       	mov    0x730614,%eax
4c00b5:	50                   	push   %eax
4c00b6:	ff 75 0c             	push   0xc(%ebp)
4c00b9:	ff 76 04             	push   0x4(%esi)
4c00bc:	e8 e5 f6 10 00       	call   0x5cf7a6
4c00c1:	8b 46 04             	mov    0x4(%esi),%eax
4c00c4:	83 c4 0c             	add    $0xc,%esp
4c00c7:	c7 40 10 00 00 00 00 	movl   $0x0,0x10(%eax)
4c00ce:	8b 4e 04             	mov    0x4(%esi),%ecx
4c00d1:	68 e0 c8 6a 00       	push   $0x6ac8e0
4c00d6:	83 c1 18             	add    $0x18,%ecx
4c00d9:	e8 a2 06 00 00       	call   0x4c0780
4c00de:	8b c6                	mov    %esi,%eax
4c00e0:	5e                   	pop    %esi
4c00e1:	5d                   	pop    %ebp
4c00e2:	c2 08 00             	ret    $0x8
4c00e5:	cc                   	int3
4c00e6:	cc                   	int3
4c00e7:	cc                   	int3
4c00e8:	cc                   	int3
4c00e9:	cc                   	int3
4c00ea:	cc                   	int3
4c00eb:	cc                   	int3
4c00ec:	cc                   	int3
4c00ed:	cc                   	int3
4c00ee:	cc                   	int3
4c00ef:	cc                   	int3
4c00f0:	55                   	push   %ebp
4c00f1:	8b ec                	mov    %esp,%ebp
4c00f3:	6a ff                	push   $0xffffffff
4c00f5:	68 fc ad 65 00       	push   $0x65adfc
4c00fa:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
4c0100:	50                   	push   %eax
4c0101:	83 ec 54             	sub    $0x54,%esp
4c0104:	53                   	push   %ebx
4c0105:	56                   	push   %esi
4c0106:	57                   	push   %edi
4c0107:	a1 d4 89 72 00       	mov    0x7289d4,%eax
4c010c:	33 c5                	xor    %ebp,%eax
4c010e:	50                   	push   %eax
4c010f:	8d 45 f4             	lea    -0xc(%ebp),%eax
4c0112:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
4c0118:	89 65 f0             	mov    %esp,-0x10(%ebp)
4c011b:	8b 45 0c             	mov    0xc(%ebp),%eax
4c011e:	33 f6                	xor    %esi,%esi
4c0120:	89 75 e4             	mov    %esi,-0x1c(%ebp)
4c0123:	66 39 30             	cmp    %si,(%eax)
4c0126:	75 04                	jne    0x4c012c
4c0128:	33 c9                	xor    %ecx,%ecx
4c012a:	eb 14                	jmp    0x4c0140
4c012c:	8b c8                	mov    %eax,%ecx
4c012e:	8d 51 02             	lea    0x2(%ecx),%edx
4c0131:	66 8b 01             	mov    (%ecx),%ax
4c0134:	83 c1 02             	add    $0x2,%ecx
4c0137:	66 85 c0             	test   %ax,%ax
4c013a:	75 f5                	jne    0x4c0131
4c013c:	2b ca                	sub    %edx,%ecx
4c013e:	d1 f9                	sar    $1,%ecx
4c0140:	8b 55 08             	mov    0x8(%ebp),%edx
4c0143:	89 4d ec             	mov    %ecx,-0x14(%ebp)
4c0146:	8b 02                	mov    (%edx),%eax
4c0148:	8b 40 04             	mov    0x4(%eax),%eax
4c014b:	8b 5c 10 24          	mov    0x24(%eax,%edx,1),%ebx
4c014f:	8b 7c 10 20          	mov    0x20(%eax,%edx,1),%edi
4c0153:	85 db                	test   %ebx,%ebx
4c0155:	7c 16                	jl     0x4c016d
4c0157:	7f 0e                	jg     0x4c0167
4c0159:	85 ff                	test   %edi,%edi
4c015b:	74 10                	je     0x4c016d
4c015d:	85 db                	test   %ebx,%ebx
4c015f:	7c 0c                	jl     0x4c016d
4c0161:	7f 04                	jg     0x4c0167
4c0163:	3b f9                	cmp    %ecx,%edi
4c0165:	76 06                	jbe    0x4c016d
4c0167:	2b f9                	sub    %ecx,%edi
4c0169:	1b de                	sbb    %esi,%ebx
4c016b:	eb 0e                	jmp    0x4c017b
4c016d:	0f 57 c0             	xorps  %xmm0,%xmm0
4c0170:	66 0f 13 45 dc       	movlpd %xmm0,-0x24(%ebp)
4c0175:	8b 5d e0             	mov    -0x20(%ebp),%ebx
4c0178:	8b 7d dc             	mov    -0x24(%ebp),%edi
4c017b:	8b 4c 10 38          	mov    0x38(%eax,%edx,1),%ecx
4c017f:	89 55 dc             	mov    %edx,-0x24(%ebp)
4c0182:	85 c9                	test   %ecx,%ecx
4c0184:	74 08                	je     0x4c018e
4c0186:	8b 01                	mov    (%ecx),%eax
4c0188:	ff 50 04             	call   *0x4(%eax)
4c018b:	8b 55 08             	mov    0x8(%ebp),%edx
4c018e:	8b 02                	mov    (%edx),%eax
4c0190:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
4c0197:	8b 40 04             	mov    0x4(%eax),%eax
4c019a:	83 7c 10 0c 00       	cmpl   $0x0,0xc(%eax,%edx,1)
4c019f:	75 14                	jne    0x4c01b5
4c01a1:	8b 4c 10 3c          	mov    0x3c(%eax,%edx,1),%ecx
4c01a5:	85 c9                	test   %ecx,%ecx
4c01a7:	74 0c                	je     0x4c01b5
4c01a9:	3b ca                	cmp    %edx,%ecx
4c01ab:	74 08                	je     0x4c01b5
4c01ad:	e8 3e 05 f8 ff       	call   0x4406f0
4c01b2:	8b 55 08             	mov    0x8(%ebp),%edx
4c01b5:	8b 02                	mov    (%edx),%eax
4c01b7:	8b 48 04             	mov    0x4(%eax),%ecx
4c01ba:	83 7c 11 0c 00       	cmpl   $0x0,0xc(%ecx,%edx,1)
4c01bf:	0f 94 c0             	sete   %al
4c01c2:	88 45 e0             	mov    %al,-0x20(%ebp)
4c01c5:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
4c01cc:	84 c0                	test   %al,%al
4c01ce:	75 0a                	jne    0x4c01da
4c01d0:	be 04 00 00 00       	mov    $0x4,%esi
4c01d5:	e9 79 01 00 00       	jmp    0x4c0353
4c01da:	8b 44 11 14          	mov    0x14(%ecx,%edx,1),%eax
4c01de:	25 c0 01 00 00       	and    $0x1c0,%eax
4c01e3:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
4c01e7:	83 f8 40             	cmp    $0x40,%eax
4c01ea:	74 70                	je     0x4c025c
4c01ec:	0f 1f 40 00          	nopl   0x0(%eax)
4c01f0:	85 db                	test   %ebx,%ebx
4c01f2:	7c 60                	jl     0x4c0254
4c01f4:	7f 04                	jg     0x4c01fa
4c01f6:	85 ff                	test   %edi,%edi
4c01f8:	74 5a                	je     0x4c0254
4c01fa:	8b 02                	mov    (%edx),%eax
4c01fc:	8b 40 04             	mov    0x4(%eax),%eax
4c01ff:	0f b7 4c 10 40       	movzwl 0x40(%eax,%edx,1),%ecx
4c0204:	89 4d e8             	mov    %ecx,-0x18(%ebp)
4c0207:	8b 4c 10 38          	mov    0x38(%eax,%edx,1),%ecx
4c020b:	8b 41 20             	mov    0x20(%ecx),%eax
4c020e:	83 38 00             	cmpl   $0x0,(%eax)
4c0211:	74 1e                	je     0x4c0231
4c0213:	8b 51 30             	mov    0x30(%ecx),%edx
4c0216:	8b 02                	mov    (%edx),%eax
4c0218:	85 c0                	test   %eax,%eax
4c021a:	7e 15                	jle    0x4c0231
4c021c:	48                   	dec    %eax
4c021d:	89 02                	mov    %eax,(%edx)
4c021f:	8b 49 20             	mov    0x20(%ecx),%ecx
4c0222:	8b 11                	mov    (%ecx),%edx
4c0224:	8d 42 02             	lea    0x2(%edx),%eax
4c0227:	89 01                	mov    %eax,(%ecx)
4c0229:	8b 45 e8             	mov    -0x18(%ebp),%eax
4c022c:	66 89 02             	mov    %ax,(%edx)
4c022f:	eb 08                	jmp    0x4c0239
4c0231:	8b 01                	mov    (%ecx),%eax
4c0233:	ff 75 e8             	push   -0x18(%ebp)
4c0236:	ff 50 0c             	call   *0xc(%eax)
4c0239:	8b 55 08             	mov    0x8(%ebp),%edx
4c023c:	b9 ff ff 00 00       	mov    $0xffff,%ecx
4c0241:	0f b7 c0             	movzwl %ax,%eax
4c0244:	66 3b c8             	cmp    %ax,%cx
4c0247:	0f 94 c0             	sete   %al
4c024a:	84 c0                	test   %al,%al
4c024c:	74 7a                	je     0x4c02c8
4c024e:	83 ce 04             	or     $0x4,%esi
4c0251:	89 75 e4             	mov    %esi,-0x1c(%ebp)
4c0254:	85 f6                	test   %esi,%esi
4c0256:	0f 85 a4 00 00 00    	jne    0x4c0300
4c025c:	8b 02                	mov    (%edx),%eax
4c025e:	6a 00                	push   $0x0
4c0260:	ff 75 ec             	push   -0x14(%ebp)
4c0263:	8b 40 04             	mov    0x4(%eax),%eax
4c0266:	ff 75 0c             	push   0xc(%ebp)
4c0269:	8b 4c 10 38          	mov    0x38(%eax,%edx,1),%ecx
4c026d:	8b 01                	mov    (%ecx),%eax
4c026f:	8b 40 24             	mov    0x24(%eax),%eax
4c0272:	ff d0                	call   *%eax
4c0274:	3b 45 ec             	cmp    -0x14(%ebp),%eax
4c0277:	0f 85 7b 00 00 00    	jne    0x4c02f8
4c027d:	85 d2                	test   %edx,%edx
4c027f:	75 77                	jne    0x4c02f8
4c0281:	85 db                	test   %ebx,%ebx
4c0283:	7c 78                	jl     0x4c02fd
4c0285:	7f 04                	jg     0x4c028b
4c0287:	85 ff                	test   %edi,%edi
4c0289:	74 72                	je     0x4c02fd
4c028b:	8b 4d 08             	mov    0x8(%ebp),%ecx
4c028e:	8b 01                	mov    (%ecx),%eax
4c0290:	8b 40 04             	mov    0x4(%eax),%eax
4c0293:	0f b7 54 08 40       	movzwl 0x40(%eax,%ecx,1),%edx
4c0298:	8b 4c 08 38          	mov    0x38(%eax,%ecx,1),%ecx
4c029c:	89 55 e8             	mov    %edx,-0x18(%ebp)
4c029f:	8b 41 20             	mov    0x20(%ecx),%eax
4c02a2:	83 38 00             	cmpl   $0x0,(%eax)
4c02a5:	74 2c                	je     0x4c02d3
4c02a7:	8b 41 30             	mov    0x30(%ecx),%eax
4c02aa:	8b 00                	mov    (%eax),%eax
4c02ac:	85 c0                	test   %eax,%eax
4c02ae:	7e 23                	jle    0x4c02d3
4c02b0:	8b 51 30             	mov    0x30(%ecx),%edx
4c02b3:	48                   	dec    %eax
4c02b4:	89 02                	mov    %eax,(%edx)
4c02b6:	8b 49 20             	mov    0x20(%ecx),%ecx
4c02b9:	8b 11                	mov    (%ecx),%edx
4c02bb:	8d 42 02             	lea    0x2(%edx),%eax
4c02be:	89 01                	mov    %eax,(%ecx)
4c02c0:	8b 45 e8             	mov    -0x18(%ebp),%eax
4c02c3:	66 89 02             	mov    %ax,(%edx)
4c02c6:	eb 11                	jmp    0x4c02d9
4c02c8:	83 c7 ff             	add    $0xffffffff,%edi
4c02cb:	83 d3 ff             	adc    $0xffffffff,%ebx
4c02ce:	e9 1d ff ff ff       	jmp    0x4c01f0
4c02d3:	8b 01                	mov    (%ecx),%eax
4c02d5:	52                   	push   %edx
4c02d6:	ff 50 0c             	call   *0xc(%eax)
4c02d9:	0f b7 c0             	movzwl %ax,%eax
4c02dc:	b9 ff ff 00 00       	mov    $0xffff,%ecx
4c02e1:	66 3b c8             	cmp    %ax,%cx
4c02e4:	0f 94 c0             	sete   %al
4c02e7:	84 c0                	test   %al,%al
4c02e9:	74 05                	je     0x4c02f0
4c02eb:	83 ce 04             	or     $0x4,%esi
4c02ee:	eb 0d                	jmp    0x4c02fd
4c02f0:	83 c7 ff             	add    $0xffffffff,%edi
4c02f3:	83 d3 ff             	adc    $0xffffffff,%ebx
4c02f6:	eb 89                	jmp    0x4c0281
4c02f8:	be 04 00 00 00       	mov    $0x4,%esi
4c02fd:	8b 55 08             	mov    0x8(%ebp),%edx
4c0300:	8b 02                	mov    (%edx),%eax
4c0302:	8b 40 04             	mov    0x4(%eax),%eax
4c0305:	c7 44 10 20 00 00 00 	movl   $0x0,0x20(%eax,%edx,1)
4c030c:	00
4c030d:	c7 44 10 24 00 00 00 	movl   $0x0,0x24(%eax,%edx,1)
4c0314:	00
4c0315:	eb 35                	jmp    0x4c034c
4c0317:	8b 4d 08             	mov    0x8(%ebp),%ecx
4c031a:	8b 01                	mov    (%ecx),%eax
4c031c:	8b 50 04             	mov    0x4(%eax),%edx
4c031f:	8b 44 0a 0c          	mov    0xc(%edx,%ecx,1),%eax
4c0323:	03 d1                	add    %ecx,%edx
4c0325:	83 c8 04             	or     $0x4,%eax
4c0328:	83 7a 38 00          	cmpl   $0x0,0x38(%edx)
4c032c:	75 03                	jne    0x4c0331
4c032e:	83 c8 04             	or     $0x4,%eax
4c0331:	83 e0 17             	and    $0x17,%eax
4c0334:	89 42 0c             	mov    %eax,0xc(%edx)
4c0337:	85 42 10             	test   %eax,0x10(%edx)
4c033a:	0f 85 0e 01 00 00    	jne    0x4c044e
4c0340:	b8 46 03 4c 00       	mov    $0x4c0346,%eax
4c0345:	c3                   	ret
4c0346:	8b 75 e4             	mov    -0x1c(%ebp),%esi
4c0349:	8b 55 08             	mov    0x8(%ebp),%edx
4c034c:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
4c0353:	8b 02                	mov    (%edx),%eax
4c0355:	8b 48 04             	mov    0x4(%eax),%ecx
4c0358:	03 ca                	add    %edx,%ecx
4c035a:	85 f6                	test   %esi,%esi
4c035c:	0f 84 a7 00 00 00    	je     0x4c0409
4c0362:	8b 41 0c             	mov    0xc(%ecx),%eax
4c0365:	0b c6                	or     %esi,%eax
4c0367:	83 79 38 00          	cmpl   $0x0,0x38(%ecx)
4c036b:	75 03                	jne    0x4c0370
4c036d:	83 c8 04             	or     $0x4,%eax
4c0370:	83 e0 17             	and    $0x17,%eax
4c0373:	89 41 0c             	mov    %eax,0xc(%ecx)
4c0376:	8b 49 10             	mov    0x10(%ecx),%ecx
4c0379:	23 c8                	and    %eax,%ecx
4c037b:	0f 84 88 00 00 00    	je     0x4c0409
4c0381:	f6 c1 04             	test   $0x4,%cl
4c0384:	74 2a                	je     0x4c03b0
4c0386:	e8 35 0b f8 ff       	call   0x440ec0
4c038b:	68 d8 57 6e 00       	push   $0x6e57d8
4c0390:	50                   	push   %eax
4c0391:	6a 01                	push   $0x1
4c0393:	8d 4d c8             	lea    -0x38(%ebp),%ecx
4c0396:	e8 95 9f f7 ff       	call   0x43a330
4c039b:	68 0c 60 70 00       	push   $0x70600c
4c03a0:	8d 45 c8             	lea    -0x38(%ebp),%eax
4c03a3:	c7 45 c8 24 c4 68 00 	movl   $0x68c424,-0x38(%ebp)
4c03aa:	50                   	push   %eax
4c03ab:	e8 82 26 12 00       	call   0x5e2a32
4c03b0:	f6 c1 02             	test   $0x2,%cl
4c03b3:	74 2a                	je     0x4c03df
4c03b5:	e8 06 0b f8 ff       	call   0x440ec0
4c03ba:	68 f0 57 6e 00       	push   $0x6e57f0
4c03bf:	50                   	push   %eax
4c03c0:	6a 01                	push   $0x1
4c03c2:	8d 4d b4             	lea    -0x4c(%ebp),%ecx
4c03c5:	e8 66 9f f7 ff       	call   0x43a330
4c03ca:	68 0c 60 70 00       	push   $0x70600c
4c03cf:	8d 45 b4             	lea    -0x4c(%ebp),%eax
4c03d2:	c7 45 b4 24 c4 68 00 	movl   $0x68c424,-0x4c(%ebp)
4c03d9:	50                   	push   %eax
4c03da:	e8 53 26 12 00       	call   0x5e2a32
4c03df:	e8 dc 0a f8 ff       	call   0x440ec0