41cadf:	40                   	inc    %eax
41cae0:	e9 72 02 00 00       	jmp    0x41cd57
41cae5:	53                   	push   %ebx
41cae6:	8d 85 7c ff ff ff    	lea    -0x84(%ebp),%eax
41caec:	50                   	push   %eax
41caed:	ff 76 54             	push   0x54(%esi)
41caf0:	e8 ea d8 ff ff       	call   0x41a3df
41caf5:	33 db                	xor    %ebx,%ebx
41caf7:	89 9d 78 ff ff ff    	mov    %ebx,-0x88(%ebp)
41cafd:	59                   	pop    %ecx
41cafe:	59                   	pop    %ecx
41caff:	85 c0                	test   %eax,%eax
41cb01:	0f 85 bd 00 00 00    	jne    0x41cbc4
41cb07:	6a 40                	push   $0x40
41cb09:	8d 85 7c ff ff ff    	lea    -0x84(%ebp),%eax
41cb0f:	50                   	push   %eax
41cb10:	8b 46 60             	mov    0x60(%esi),%eax
41cb13:	f7 d8                	neg    %eax
41cb15:	1b c0                	sbb    %eax,%eax
41cb17:	25 02 f0 ff ff       	and    $0xfffff002,%eax
41cb1c:	05 01 10 00 00       	add    $0x1001,%eax
41cb21:	50                   	push   %eax
41cb22:	57                   	push   %edi
41cb23:	e8 ef 6a ff ff       	call   0x413617
41cb28:	85 c0                	test   %eax,%eax
41cb2a:	75 08                	jne    0x41cb34
41cb2c:	21 5e 58             	and    %ebx,0x58(%esi)
41cb2f:	e9 cc 00 00 00       	jmp    0x41cc00
41cb34:	8d 85 7c ff ff ff    	lea    -0x84(%ebp),%eax
41cb3a:	50                   	push   %eax
41cb3b:	ff 76 50             	push   0x50(%esi)
41cb3e:	e8 9c d8 ff ff       	call   0x41a3df
41cb43:	59                   	pop    %ecx
41cb44:	59                   	pop    %ecx
41cb45:	8b 4e 58             	mov    0x58(%esi),%ecx
41cb48:	85 c0                	test   %eax,%eax
41cb4a:	75 1b                	jne    0x41cb67
41cb4c:	81 c9 04 03 00 00    	or     $0x304,%ecx
41cb52:	89 4e 58             	mov    %ecx,0x58(%esi)
41cb55:	8b cf                	mov    %edi,%ecx
41cb57:	8d 51 02             	lea    0x2(%ecx),%edx
41cb5a:	66 8b 01             	mov    (%ecx),%ax
41cb5d:	83 c1 02             	add    $0x2,%ecx
41cb60:	66 3b c3             	cmp    %bx,%ax
41cb63:	75 f5                	jne    0x41cb5a
41cb65:	eb 3b                	jmp    0x41cba2
41cb67:	f6 c1 02             	test   $0x2,%cl
41cb6a:	75 58                	jne    0x41cbc4
41cb6c:	39 5e 5c             	cmp    %ebx,0x5c(%esi)
41cb6f:	0f 84 93 00 00 00    	je     0x41cc08
41cb75:	ff 76 5c             	push   0x5c(%esi)
41cb78:	8d 85 7c ff ff ff    	lea    -0x84(%ebp),%eax
41cb7e:	50                   	push   %eax
41cb7f:	ff 76 50             	push   0x50(%esi)
41cb82:	e8 2f 02 ff ff       	call   0x40cdb6
41cb87:	83 c4 0c             	add    $0xc,%esp
41cb8a:	85 c0                	test   %eax,%eax
41cb8c:	75 7a                	jne    0x41cc08
41cb8e:	83 4e 58 02          	orl    $0x2,0x58(%esi)
41cb92:	8b cf                	mov    %edi,%ecx
41cb94:	8d 51 02             	lea    0x2(%ecx),%edx
41cb97:	66 8b 01             	mov    (%ecx),%ax
41cb9a:	83 c1 02             	add    $0x2,%ecx
41cb9d:	66 3b c3             	cmp    %bx,%ax
41cba0:	75 f5                	jne    0x41cb97
41cba2:	2b ca                	sub    %edx,%ecx
41cba4:	d1 f9                	sar    $1,%ecx
41cba6:	8d 41 01             	lea    0x1(%ecx),%eax
41cba9:	50                   	push   %eax
41cbaa:	57                   	push   %edi
41cbab:	8d 86 a0 02 00 00    	lea    0x2a0(%esi),%eax
41cbb1:	6a 55                	push   $0x55
41cbb3:	50                   	push   %eax
41cbb4:	e8 15 db ff ff       	call   0x41a6ce
41cbb9:	83 c4 10             	add    $0x10,%esp
41cbbc:	85 c0                	test   %eax,%eax
41cbbe:	0f 85 a5 01 00 00    	jne    0x41cd69
41cbc4:	8b 46 58             	mov    0x58(%esi),%eax
41cbc7:	b9 00 03 00 00       	mov    $0x300,%ecx
41cbcc:	23 c1                	and    %ecx,%eax
41cbce:	3b c1                	cmp    %ecx,%eax
41cbd0:	0f 84 75 01 00 00    	je     0x41cd4b
41cbd6:	8b 4e 60             	mov    0x60(%esi),%ecx
41cbd9:	8d 85 7c ff ff ff    	lea    -0x84(%ebp),%eax
41cbdf:	f7 d9                	neg    %ecx
41cbe1:	6a 40                	push   $0x40
41cbe3:	1b c9                	sbb    %ecx,%ecx
41cbe5:	81 e1 02 f0 ff ff    	and    $0xfffff002,%ecx
41cbeb:	50                   	push   %eax
41cbec:	81 c1 01 10 00 00    	add    $0x1001,%ecx
41cbf2:	51                   	push   %ecx
41cbf3:	57                   	push   %edi
41cbf4:	e8 1e 6a ff ff       	call   0x413617
41cbf9:	85 c0                	test   %eax,%eax
41cbfb:	75 35                	jne    0x41cc32
41cbfd:	89 5e 58             	mov    %ebx,0x58(%esi)
41cc00:	33 c0                	xor    %eax,%eax
41cc02:	40                   	inc    %eax
41cc03:	e9 4e 01 00 00       	jmp    0x41cd56
41cc08:	f6 46 58 01          	testb  $0x1,0x58(%esi)
41cc0c:	75 b6                	jne    0x41cbc4
41cc0e:	57                   	push   %edi
41cc0f:	e8 15 03 00 00       	call   0x41cf29
41cc14:	59                   	pop    %ecx
41cc15:	85 c0                	test   %eax,%eax
41cc17:	74 ab                	je     0x41cbc4
41cc19:	83 4e 58 01          	orl    $0x1,0x58(%esi)
41cc1d:	8b cf                	mov    %edi,%ecx
41cc1f:	8d 51 02             	lea    0x2(%ecx),%edx
41cc22:	66 8b 01             	mov    (%ecx),%ax
41cc25:	83 c1 02             	add    $0x2,%ecx
41cc28:	66 3b c3             	cmp    %bx,%ax
41cc2b:	75 f5                	jne    0x41cc22
41cc2d:	e9 70 ff ff ff       	jmp    0x41cba2
41cc32:	8d 85 7c ff ff ff    	lea    -0x84(%ebp),%eax
41cc38:	50                   	push   %eax
41cc39:	ff 76 50             	push   0x50(%esi)
41cc3c:	e8 9e d7 ff ff       	call   0x41a3df
41cc41:	59                   	pop    %ecx
41cc42:	59                   	pop    %ecx
41cc43:	85 c0                	test   %eax,%eax
41cc45:	0f 85 00 01 00 00    	jne    0x41cd4b
41cc4b:	8b 4e 58             	mov    0x58(%esi),%ecx
41cc4e:	81 c9 00 02 00 00    	or     $0x200,%ecx
41cc54:	89 4e 58             	mov    %ecx,0x58(%esi)
41cc57:	39 5e 60             	cmp    %ebx,0x60(%esi)
41cc5a:	74 31                	je     0x41cc8d
41cc5c:	81 c9 00 01 00 00    	or     $0x100,%ecx
41cc62:	8d 96 a0 02 00 00    	lea    0x2a0(%esi),%edx
41cc68:	89 4e 58             	mov    %ecx,0x58(%esi)
41cc6b:	66 39 1a             	cmp    %bx,(%edx)
41cc6e:	0f 85 d7 00 00 00    	jne    0x41cd4b
41cc74:	8b cf                	mov    %edi,%ecx
41cc76:	8d 59 02             	lea    0x2(%ecx),%ebx
41cc79:	66 8b 01             	mov    (%ecx),%ax
41cc7c:	83 c1 02             	add    $0x2,%ecx
41cc7f:	66 3b 85 78 ff ff ff 	cmp    -0x88(%ebp),%ax
41cc86:	75 f1                	jne    0x41cc79
41cc88:	e9 a6 00 00 00       	jmp    0x41cd33
41cc8d:	39 5e 5c             	cmp    %ebx,0x5c(%esi)
41cc90:	74 79                	je     0x41cd0b
41cc92:	8b 56 50             	mov    0x50(%esi),%edx
41cc95:	8d 5a 02             	lea    0x2(%edx),%ebx
41cc98:	66 8b 02             	mov    (%edx),%ax
41cc9b:	83 c2 02             	add    $0x2,%edx
41cc9e:	66 3b 85 78 ff ff ff 	cmp    -0x88(%ebp),%ax
41cca5:	75 f1                	jne    0x41cc98
41cca7:	2b d3                	sub    %ebx,%edx
41cca9:	d1 fa                	sar    $1,%edx
41ccab:	3b 56 5c             	cmp    0x5c(%esi),%edx
41ccae:	75 59                	jne    0x41cd09
41ccb0:	57                   	push   %edi
41ccb1:	e8 73 02 00 00       	call   0x41cf29
41ccb6:	59                   	pop    %ecx
41ccb7:	85 c0                	test   %eax,%eax
41ccb9:	75 24                	jne    0x41ccdf
41ccbb:	8b 5e 50             	mov    0x50(%esi),%ebx
41ccbe:	33 d2                	xor    %edx,%edx
41ccc0:	8d 4b 02             	lea    0x2(%ebx),%ecx
41ccc3:	66 8b 03             	mov    (%ebx),%ax
41ccc6:	83 c3 02             	add    $0x2,%ebx
41ccc9:	66 3b c2             	cmp    %dx,%ax
41cccc:	75 f5                	jne    0x41ccc3
41ccce:	ff 76 50             	push   0x50(%esi)
41ccd1:	2b d9                	sub    %ecx,%ebx
41ccd3:	d1 fb                	sar    $1,%ebx
41ccd5:	e8 86 fd ff ff       	call   0x41ca60
41ccda:	59                   	pop    %ecx
41ccdb:	3b c3                	cmp    %ebx,%eax
41ccdd:	74 6c                	je     0x41cd4b
41ccdf:	81 4e 58 00 01 00 00 	orl    $0x100,0x58(%esi)
41cce6:	8d 96 a0 02 00 00    	lea    0x2a0(%esi),%edx
41ccec:	33 c0                	xor    %eax,%eax
41ccee:	66 39 02             	cmp    %ax,(%edx)
41ccf1:	75 58                	jne    0x41cd4b
41ccf3:	8b cf                	mov    %edi,%ecx
41ccf5:	8d 59 02             	lea    0x2(%ecx),%ebx
41ccf8:	66 8b 01             	mov    (%ecx),%ax
41ccfb:	83 c1 02             	add    $0x2,%ecx
41ccfe:	66 3b 85 78 ff ff ff 	cmp    -0x88(%ebp),%ax
41cd05:	75 f1                	jne    0x41ccf8
41cd07:	eb 2a                	jmp    0x41cd33
41cd09:	33 db                	xor    %ebx,%ebx
41cd0b:	81 c9 00 01 00 00    	or     $0x100,%ecx
41cd11:	8d 96 a0 02 00 00    	lea    0x2a0(%esi),%edx
41cd17:	89 4e 58             	mov    %ecx,0x58(%esi)
41cd1a:	66 39 1a             	cmp    %bx,(%edx)
41cd1d:	75 2c                	jne    0x41cd4b
41cd1f:	8b cf                	mov    %edi,%ecx
41cd21:	8d 59 02             	lea    0x2(%ecx),%ebx
41cd24:	66 8b 01             	mov    (%ecx),%ax
41cd27:	83 c1 02             	add    $0x2,%ecx
41cd2a:	66 3b 85 78 ff ff ff 	cmp    -0x88(%ebp),%ax
41cd31:	75 f1                	jne    0x41cd24
41cd33:	2b cb                	sub    %ebx,%ecx
41cd35:	d1 f9                	sar    $1,%ecx
41cd37:	8d 41 01             	lea    0x1(%ecx),%eax
41cd3a:	50                   	push   %eax
41cd3b:	57                   	push   %edi
41cd3c:	6a 55                	push   $0x55
41cd3e:	52                   	push   %edx
41cd3f:	e8 8a d9 ff ff       	call   0x41a6ce
41cd44:	83 c4 10             	add    $0x10,%esp
41cd47:	85 c0                	test   %eax,%eax
41cd49:	75 1c                	jne    0x41cd67
41cd4b:	8b 46 58             	mov    0x58(%esi),%eax
41cd4e:	c1 e8 02             	shr    $0x2,%eax
41cd51:	f7 d0                	not    %eax
41cd53:	83 e0 01             	and    $0x1,%eax
41cd56:	5b                   	pop    %ebx
41cd57:	8b 4d fc             	mov    -0x4(%ebp),%ecx
41cd5a:	5f                   	pop    %edi
41cd5b:	33 cd                	xor    %ebp,%ecx
41cd5d:	5e                   	pop    %esi
41cd5e:	e8 a9 a6 fe ff       	call   0x40740c
41cd63:	c9                   	leave
41cd64:	c2 0c 00             	ret    $0xc
41cd67:	33 db                	xor    %ebx,%ebx
41cd69:	53                   	push   %ebx
41cd6a:	53                   	push   %ebx
41cd6b:	53                   	push   %ebx
41cd6c:	53                   	push   %ebx
41cd6d:	53                   	push   %ebx
41cd6e:	e8 3b 03 ff ff       	call   0x40d0ae
41cd73:	cc                   	int3
41cd74:	8b ff                	mov    %edi,%edi
41cd76:	55                   	push   %ebp
41cd77:	8b ec                	mov    %esp,%ebp
41cd79:	81 ec f4 00 00 00    	sub    $0xf4,%esp
41cd7f:	a1 14 30 43 00       	mov    0x433014,%eax
41cd84:	33 c5                	xor    %ebp,%eax
41cd86:	89 45 fc             	mov    %eax,-0x4(%ebp)
41cd89:	56                   	push   %esi
41cd8a:	57                   	push   %edi
41cd8b:	8b 7d 08             	mov    0x8(%ebp),%edi
41cd8e:	e8 40 74 ff ff       	call   0x4141d3
41cd93:	8b f0                	mov    %eax,%esi
41cd95:	8d 85 0c ff ff ff    	lea    -0xf4(%ebp),%eax
41cd9b:	6a 78                	push   $0x78
41cd9d:	50                   	push   %eax
41cd9e:	8b 4e 60             	mov    0x60(%esi),%ecx
41cda1:	f7 d9                	neg    %ecx
41cda3:	1b c9                	sbb    %ecx,%ecx
41cda5:	81 e1 02 f0 ff ff    	and    $0xfffff002,%ecx
41cdab:	81 c1 01 10 00 00    	add    $0x1001,%ecx
41cdb1:	51                   	push   %ecx
41cdb2:	57                   	push   %edi
41cdb3:	e8 5f 68 ff ff       	call   0x413617
41cdb8:	85 c0                	test   %eax,%eax
41cdba:	75 06                	jne    0x41cdc2
41cdbc:	21 46 58             	and    %eax,0x58(%esi)
41cdbf:	40                   	inc    %eax
41cdc0:	eb 56                	jmp    0x41ce18
41cdc2:	8d 85 0c ff ff ff    	lea    -0xf4(%ebp),%eax
41cdc8:	50                   	push   %eax
41cdc9:	ff 76 50             	push   0x50(%esi)
41cdcc:	e8 0e d6 ff ff       	call   0x41a3df
41cdd1:	59                   	pop    %ecx
41cdd2:	59                   	pop    %ecx
41cdd3:	85 c0                	test   %eax,%eax
41cdd5:	75 36                	jne    0x41ce0d
41cdd7:	8b cf                	mov    %edi,%ecx
41cdd9:	53                   	push   %ebx
41cdda:	33 db                	xor    %ebx,%ebx
41cddc:	8d 51 02             	lea    0x2(%ecx),%edx
41cddf:	66 8b 01             	mov    (%ecx),%ax
41cde2:	83 c1 02             	add    $0x2,%ecx
41cde5:	66 3b c3             	cmp    %bx,%ax
41cde8:	75 f5                	jne    0x41cddf
41cdea:	2b ca                	sub    %edx,%ecx
41cdec:	d1 f9                	sar    $1,%ecx
41cdee:	8d 41 01             	lea    0x1(%ecx),%eax
41cdf1:	50                   	push   %eax
41cdf2:	57                   	push   %edi
41cdf3:	8d 86 a0 02 00 00    	lea    0x2a0(%esi),%eax
41cdf9:	6a 55                	push   $0x55
41cdfb:	50                   	push   %eax
41cdfc:	e8 cd d8 ff ff       	call   0x41a6ce
41ce01:	83 c4 10             	add    $0x10,%esp
41ce04:	85 c0                	test   %eax,%eax
41ce06:	75 20                	jne    0x41ce28
41ce08:	83 4e 58 04          	orl    $0x4,0x58(%esi)
41ce0c:	5b                   	pop    %ebx
41ce0d:	8b 46 58             	mov    0x58(%esi),%eax
41ce10:	c1 e8 02             	shr    $0x2,%eax
41ce13:	f7 d0                	not    %eax
41ce15:	83 e0 01             	and    $0x1,%eax
41ce18:	8b 4d fc             	mov    -0x4(%ebp),%ecx
41ce1b:	5f                   	pop    %edi
41ce1c:	33 cd                	xor    %ebp,%ecx
41ce1e:	5e                   	pop    %esi
41ce1f:	e8 e8 a5 fe ff       	call   0x40740c
41ce24:	c9                   	leave
41ce25:	c2 0c 00             	ret    $0xc
41ce28:	53                   	push   %ebx
41ce29:	53                   	push   %ebx
41ce2a:	53                   	push   %ebx
41ce2b:	53                   	push   %ebx
41ce2c:	53                   	push   %ebx
41ce2d:	e8 7c 02 ff ff       	call   0x40d0ae
41ce32:	cc                   	int3
41ce33:	8b ff                	mov    %edi,%edi
41ce35:	55                   	push   %ebp
41ce36:	8b ec                	mov    %esp,%ebp
41ce38:	51                   	push   %ecx
41ce39:	56                   	push   %esi
41ce3a:	8b 75 08             	mov    0x8(%ebp),%esi
41ce3d:	57                   	push   %edi
41ce3e:	85 f6                	test   %esi,%esi
41ce40:	0f 84 d2 00 00 00    	je     0x41cf18
41ce46:	33 ff                	xor    %edi,%edi
41ce48:	66 39 3e             	cmp    %di,(%esi)
41ce4b:	0f 84 c7 00 00 00    	je     0x41cf18
41ce51:	b9 b0 93 42 00       	mov    $0x4293b0,%ecx
41ce56:	8b c6                	mov    %esi,%eax
41ce58:	66 8b 10             	mov    (%eax),%dx
41ce5b:	66 3b 11             	cmp    (%ecx),%dx
41ce5e:	75 1e                	jne    0x41ce7e
41ce60:	66 85 d2             	test   %dx,%dx
41ce63:	74 15                	je     0x41ce7a
41ce65:	66 8b 50 02          	mov    0x2(%eax),%dx
41ce69:	66 3b 51 02          	cmp    0x2(%ecx),%dx
41ce6d:	75 0f                	jne    0x41ce7e
41ce6f:	83 c0 04             	add    $0x4,%eax
41ce72:	83 c1 04             	add    $0x4,%ecx
41ce75:	66 85 d2             	test   %dx,%dx
41ce78:	75 de                	jne    0x41ce58
41ce7a:	8b c7                	mov    %edi,%eax
41ce7c:	eb 05                	jmp    0x41ce83
41ce7e:	1b c0                	sbb    %eax,%eax
41ce80:	83 c8 01             	or     $0x1,%eax
41ce83:	85 c0                	test   %eax,%eax
41ce85:	0f 84 8d 00 00 00    	je     0x41cf18
41ce8b:	68 a4 93 42 00       	push   $0x4293a4
41ce90:	56                   	push   %esi
41ce91:	e8 49 d5 ff ff       	call   0x41a3df
41ce96:	59                   	pop    %ecx
41ce97:	59                   	pop    %ecx
41ce98:	85 c0                	test   %eax,%eax
41ce9a:	74 6a                	je     0x41cf06
41ce9c:	68 b8 93 42 00       	push   $0x4293b8
41cea1:	56                   	push   %esi
41cea2:	e8 38 d5 ff ff       	call   0x41a3df
41cea7:	59                   	pop    %ecx
41cea8:	59                   	pop    %ecx
41cea9:	85 c0                	test   %eax,%eax
41ceab:	74 59                	je     0x41cf06
41cead:	b9 c4 93 42 00       	mov    $0x4293c4,%ecx
41ceb2:	8b c6                	mov    %esi,%eax
41ceb4:	66 8b 10             	mov    (%eax),%dx