45e678:	59                   	pop    %ecx
45e679:	66 39 48 08          	cmp    %cx,0x8(%eax)
45e67d:	74 10                	je     0x45e68f
45e67f:	8b 4d 10             	mov    0x10(%ebp),%ecx
45e682:	8b 45 f4             	mov    -0xc(%ebp),%eax
45e685:	89 01                	mov    %eax,(%ecx)
45e687:	33 f6                	xor    %esi,%esi
45e689:	46                   	inc    %esi
45e68a:	e9 6a 01 00 00       	jmp    0x45e7f9
45e68f:	ff 75 f8             	push   -0x8(%ebp)
45e692:	8d 4d 94             	lea    -0x6c(%ebp),%ecx
45e695:	e8 8b 42 fa ff       	call   0x402925
45e69a:	8b 4d d0             	mov    -0x30(%ebp),%ecx
45e69d:	83 e9 0f             	sub    $0xf,%ecx
45e6a0:	f7 d9                	neg    %ecx
45e6a2:	1b c9                	sbb    %ecx,%ecx
45e6a4:	6a 01                	push   $0x1
45e6a6:	f7 d1                	not    %ecx
45e6a8:	23 4d c4             	and    -0x3c(%ebp),%ecx
45e6ab:	6a 01                	push   $0x1
45e6ad:	8d 45 94             	lea    -0x6c(%ebp),%eax
45e6b0:	50                   	push   %eax
45e6b1:	e8 e8 5d fe ff       	call   0x44449e
45e6b6:	8b 4d 10             	mov    0x10(%ebp),%ecx
45e6b9:	89 01                	mov    %eax,(%ecx)
45e6bb:	8d 4d 94             	lea    -0x6c(%ebp),%ecx
45e6be:	e8 5d 45 fb ff       	call   0x412c20
45e6c3:	eb c2                	jmp    0x45e687
45e6c5:	8b 45 08             	mov    0x8(%ebp),%eax
45e6c8:	8b 0f                	mov    (%edi),%ecx
45e6ca:	8b 40 04             	mov    0x4(%eax),%eax
45e6cd:	6a 7f                	push   $0x7f
45e6cf:	8b 04 88             	mov    (%eax,%ecx,4),%eax
45e6d2:	59                   	pop    %ecx
45e6d3:	66 39 48 08          	cmp    %cx,0x8(%eax)
45e6d7:	74 0f                	je     0x45e6e8
45e6d9:	8b 03                	mov    (%ebx),%eax
45e6db:	56                   	push   %esi
45e6dc:	8b 48 04             	mov    0x4(%eax),%ecx
45e6df:	6a 01                	push   $0x1
45e6e1:	03 cb                	add    %ebx,%ecx
45e6e3:	e8 64 e8 fe ff       	call   0x44cf4c
45e6e8:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
45e6eb:	e8 30 45 fb ff       	call   0x412c20
45e6f0:	8d 4d b4             	lea    -0x4c(%ebp),%ecx
45e6f3:	e8 28 45 fb ff       	call   0x412c20
45e6f8:	8d 4d c4             	lea    -0x3c(%ebp),%ecx
45e6fb:	e8 20 45 fb ff       	call   0x412c20
45e700:	8d 4d a4             	lea    -0x5c(%ebp),%ecx
45e703:	e8 84 0f fe ff       	call   0x43f68c
45e708:	33 c0                	xor    %eax,%eax
45e70a:	e9 0c 01 00 00       	jmp    0x45e81b
45e70f:	ff 07                	incl   (%edi)
45e711:	6a ff                	push   $0xffffffff
45e713:	8d 45 b4             	lea    -0x4c(%ebp),%eax
45e716:	50                   	push   %eax
45e717:	57                   	push   %edi
45e718:	52                   	push   %edx
45e719:	8b cb                	mov    %ebx,%ecx
45e71b:	e8 10 17 fb ff       	call   0x40fe30
45e720:	85 c0                	test   %eax,%eax
45e722:	0f 88 1a ff ff ff    	js     0x45e642
45e728:	8b 45 08             	mov    0x8(%ebp),%eax
45e72b:	8b 0f                	mov    (%edi),%ecx
45e72d:	8b 40 04             	mov    0x4(%eax),%eax
45e730:	6a 7f                	push   $0x7f
45e732:	8b 04 88             	mov    (%eax,%ecx,4),%eax
45e735:	59                   	pop    %ecx
45e736:	66 39 48 08          	cmp    %cx,0x8(%eax)
45e73a:	74 16                	je     0x45e752
45e73c:	0f bf 40 0a          	movswl 0xa(%eax),%eax
45e740:	50                   	push   %eax
45e741:	6a 72                	push   $0x72
45e743:	8b cb                	mov    %ebx,%ecx
45e745:	e8 12 e5 fe ff       	call   0x44cc5c
45e74a:	83 ce ff             	or     $0xffffffff,%esi
45e74d:	e9 a7 00 00 00       	jmp    0x45e7f9
45e752:	8b 7d e4             	mov    -0x1c(%ebp),%edi
45e755:	6a 41                	push   $0x41
45e757:	58                   	pop    %eax
45e758:	66 3b f8             	cmp    %ax,%di
45e75b:	74 7c                	je     0x45e7d9
45e75d:	8d 45 d4             	lea    -0x2c(%ebp),%eax
45e760:	50                   	push   %eax
45e761:	8d 45 a4             	lea    -0x5c(%ebp),%eax
45e764:	50                   	push   %eax
45e765:	ff 75 f8             	push   -0x8(%ebp)
45e768:	8d 45 c4             	lea    -0x3c(%ebp),%eax
45e76b:	50                   	push   %eax
45e76c:	56                   	push   %esi
45e76d:	8b cb                	mov    %ebx,%ecx
45e76f:	e8 26 e1 ff ff       	call   0x45c89a
45e774:	85 c0                	test   %eax,%eax
45e776:	78 61                	js     0x45e7d9
45e778:	0f bf c7             	movswl %di,%eax
45e77b:	83 e8 52             	sub    $0x52,%eax
45e77e:	74 4d                	je     0x45e7cd
45e780:	48                   	dec    %eax
45e781:	74 30                	je     0x45e7b3
45e783:	48                   	dec    %eax
45e784:	74 1f                	je     0x45e7a5
45e786:	48                   	dec    %eax
45e787:	74 0e                	je     0x45e797
45e789:	8d 45 b4             	lea    -0x4c(%ebp),%eax
45e78c:	50                   	push   %eax
45e78d:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
45e790:	e8 a0 be fe ff       	call   0x44a635
45e795:	eb 28                	jmp    0x45e7bf
45e797:	8d 45 d4             	lea    -0x2c(%ebp),%eax
45e79a:	50                   	push   %eax
45e79b:	8d 4d b4             	lea    -0x4c(%ebp),%ecx
45e79e:	e8 a1 b7 fe ff       	call   0x449f44
45e7a3:	eb 34                	jmp    0x45e7d9
45e7a5:	8d 45 b4             	lea    -0x4c(%ebp),%eax
45e7a8:	50                   	push   %eax
45e7a9:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
45e7ac:	e8 75 b9 fe ff       	call   0x44a126
45e7b1:	eb 0c                	jmp    0x45e7bf
45e7b3:	8d 45 b4             	lea    -0x4c(%ebp),%eax
45e7b6:	50                   	push   %eax
45e7b7:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
45e7ba:	e8 65 b8 fe ff       	call   0x44a024
45e7bf:	8d 45 d4             	lea    -0x2c(%ebp),%eax
45e7c2:	50                   	push   %eax
45e7c3:	8d 4d b4             	lea    -0x4c(%ebp),%ecx
45e7c6:	e8 e3 f4 fa ff       	call   0x40dcae
45e7cb:	eb 0c                	jmp    0x45e7d9
45e7cd:	8d 45 d4             	lea    -0x2c(%ebp),%eax
45e7d0:	50                   	push   %eax
45e7d1:	8d 4d b4             	lea    -0x4c(%ebp),%ecx
45e7d4:	e8 4c 5d fb ff       	call   0x414525
45e7d9:	8d 45 b4             	lea    -0x4c(%ebp),%eax
45e7dc:	50                   	push   %eax
45e7dd:	8d 4d a4             	lea    -0x5c(%ebp),%ecx
45e7e0:	e8 f1 da fb ff       	call   0x41c2d6
45e7e5:	8d 45 a4             	lea    -0x5c(%ebp),%eax
45e7e8:	50                   	push   %eax
45e7e9:	ff 75 f8             	push   -0x8(%ebp)
45e7ec:	8d 45 c4             	lea    -0x3c(%ebp),%eax
45e7ef:	50                   	push   %eax
45e7f0:	8b cb                	mov    %ebx,%ecx
45e7f2:	e8 e7 e0 ff ff       	call   0x45c8de
45e7f7:	8b f0                	mov    %eax,%esi
45e7f9:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
45e7fc:	e8 1f 44 fb ff       	call   0x412c20
45e801:	8d 4d b4             	lea    -0x4c(%ebp),%ecx
45e804:	e8 17 44 fb ff       	call   0x412c20
45e809:	8d 4d c4             	lea    -0x3c(%ebp),%ecx
45e80c:	e8 0f 44 fb ff       	call   0x412c20
45e811:	8d 4d a4             	lea    -0x5c(%ebp),%ecx
45e814:	e8 73 0e fe ff       	call   0x43f68c
45e819:	8b c6                	mov    %esi,%eax
45e81b:	5f                   	pop    %edi
45e81c:	5e                   	pop    %esi
45e81d:	5b                   	pop    %ebx
45e81e:	c9                   	leave
45e81f:	c2 0c 00             	ret    $0xc
45e822:	55                   	push   %ebp
45e823:	8b ec                	mov    %esp,%ebp
45e825:	83 ec 50             	sub    $0x50,%esp
45e828:	53                   	push   %ebx
45e829:	56                   	push   %esi
45e82a:	8b 75 08             	mov    0x8(%ebp),%esi
45e82d:	57                   	push   %edi
45e82e:	8b 7d 0c             	mov    0xc(%ebp),%edi
45e831:	8b 56 04             	mov    0x4(%esi),%edx
45e834:	83 07 02             	addl   $0x2,(%edi)
45e837:	89 4d f8             	mov    %ecx,-0x8(%ebp)
45e83a:	8b 0f                	mov    (%edi),%ecx
45e83c:	6a 48                	push   $0x48
45e83e:	8b 04 8a             	mov    (%edx,%ecx,4),%eax
45e841:	5b                   	pop    %ebx
45e842:	66 39 58 08          	cmp    %bx,0x8(%eax)
45e846:	89 5d f4             	mov    %ebx,-0xc(%ebp)
45e849:	8b 5d f8             	mov    -0x8(%ebp),%ebx
45e84c:	75 1a                	jne    0x45e868
45e84e:	8b 44 8a f8          	mov    -0x8(%edx,%ecx,4),%eax
45e852:	8b cb                	mov    %ebx,%ecx
45e854:	0f bf 40 0a          	movswl 0xa(%eax),%eax
45e858:	50                   	push   %eax
45e859:	6a 70                	push   $0x70
45e85b:	e8 fc e3 fe ff       	call   0x44cc5c
45e860:	83 c8 ff             	or     $0xffffffff,%eax
45e863:	e9 e8 02 00 00       	jmp    0x45eb50
45e868:	56                   	push   %esi
45e869:	8d 4d d8             	lea    -0x28(%ebp),%ecx
45e86c:	e8 6b e4 ff ff       	call   0x45ccdc
45e871:	8b 17                	mov    (%edi),%edx
45e873:	8b 7d dc             	mov    -0x24(%ebp),%edi
45e876:	33 f6                	xor    %esi,%esi
45e878:	6a 40                	push   $0x40
45e87a:	8b ce                	mov    %esi,%ecx
45e87c:	c7 45 08 47 00 00 00 	movl   $0x47,0x8(%ebp)
45e883:	5b                   	pop    %ebx
45e884:	8b 04 97             	mov    (%edi,%edx,4),%eax
45e887:	0f b7 40 08          	movzwl 0x8(%eax),%eax
45e88b:	66 3b 45 08          	cmp    0x8(%ebp),%ax
45e88f:	75 03                	jne    0x45e894
45e891:	41                   	inc    %ecx
45e892:	eb 12                	jmp    0x45e8a6
45e894:	66 3b 45 f4          	cmp    -0xc(%ebp),%ax
45e898:	75 03                	jne    0x45e89d
45e89a:	49                   	dec    %ecx
45e89b:	eb 09                	jmp    0x45e8a6
45e89d:	66 3b c3             	cmp    %bx,%ax
45e8a0:	75 04                	jne    0x45e8a6
45e8a2:	85 c9                	test   %ecx,%ecx
45e8a4:	74 07                	je     0x45e8ad
45e8a6:	85 c9                	test   %ecx,%ecx
45e8a8:	78 03                	js     0x45e8ad
45e8aa:	42                   	inc    %edx
45e8ab:	eb d7                	jmp    0x45e884
45e8ad:	8b 7d 0c             	mov    0xc(%ebp),%edi
45e8b0:	8b 4d f8             	mov    -0x8(%ebp),%ecx
45e8b3:	52                   	push   %edx
45e8b4:	8d 45 c4             	lea    -0x3c(%ebp),%eax
45e8b7:	50                   	push   %eax
45e8b8:	57                   	push   %edi
45e8b9:	8d 45 d8             	lea    -0x28(%ebp),%eax
45e8bc:	50                   	push   %eax
45e8bd:	89 75 c4             	mov    %esi,-0x3c(%ebp)
45e8c0:	89 75 cc             	mov    %esi,-0x34(%ebp)
45e8c3:	c7 45 d0 01 00 00 00 	movl   $0x1,-0x30(%ebp)
45e8ca:	e8 61 15 fb ff       	call   0x40fe30
45e8cf:	85 c0                	test   %eax,%eax
45e8d1:	79 08                	jns    0x45e8db
45e8d3:	83 ce ff             	or     $0xffffffff,%esi
45e8d6:	e9 63 02 00 00       	jmp    0x45eb3e
45e8db:	8b 0f                	mov    (%edi),%ecx
45e8dd:	8b 55 dc             	mov    -0x24(%ebp),%edx
45e8e0:	6a 40                	push   $0x40
45e8e2:	8b 04 8a             	mov    (%edx,%ecx,4),%eax
45e8e5:	5b                   	pop    %ebx
45e8e6:	66 39 58 08          	cmp    %bx,0x8(%eax)
45e8ea:	75 03                	jne    0x45e8ef
45e8ec:	49                   	dec    %ecx
45e8ed:	eb 03                	jmp    0x45e8f2
45e8ef:	83 c1 fe             	add    $0xfffffffe,%ecx
45e8f2:	6a 47                	push   $0x47
45e8f4:	58                   	pop    %eax
45e8f5:	89 0f                	mov    %ecx,(%edi)
45e8f7:	8b 4c 8a 04          	mov    0x4(%edx,%ecx,4),%ecx
45e8fb:	50                   	push   %eax
45e8fc:	e8 fb d2 fa ff       	call   0x40bbfc
45e901:	83 4d 0c ff          	orl    $0xffffffff,0xc(%ebp)
45e905:	6a 0d                	push   $0xd
45e907:	8d 4d c4             	lea    -0x3c(%ebp),%ecx
45e90a:	e8 d5 ec fa ff       	call   0x40d5e4
45e90f:	8b 5d f8             	mov    -0x8(%ebp),%ebx
45e912:	84 c0                	test   %al,%al
45e914:	74 54                	je     0x45e96a
45e916:	83 c8 ff             	or     $0xffffffff,%eax
45e919:	66 89 45 f0          	mov    %ax,-0x10(%ebp)
45e91d:	33 c0                	xor    %eax,%eax
45e91f:	6a 01                	push   $0x1
45e921:	8d 4d e8             	lea    -0x18(%ebp),%ecx
45e924:	66 89 45 f2          	mov    %ax,-0xe(%ebp)
45e928:	e8 cf d2 fa ff       	call   0x40bbfc
45e92d:	8d 4d c4             	lea    -0x3c(%ebp),%ecx
45e930:	e8 59 bd fe ff       	call   0x44a68e
45e935:	8b 4d dc             	mov    -0x24(%ebp),%ecx
45e938:	89 45 e8             	mov    %eax,-0x18(%ebp)
45e93b:	8d 45 e8             	lea    -0x18(%ebp),%eax
45e93e:	50                   	push   %eax
45e93f:	8b 07                	mov    (%edi),%eax
45e941:	8b 0c 81             	mov    (%ecx,%eax,4),%ecx
45e944:	e8 29 b2 fe ff       	call   0x449b72
45e949:	ff 75 10             	push   0x10(%ebp)
45e94c:	8d 45 d8             	lea    -0x28(%ebp),%eax
45e94f:	57                   	push   %edi
45e950:	50                   	push   %eax
45e951:	6a 01                	push   $0x1
45e953:	8b cb                	mov    %ebx,%ecx
45e955:	e8 86 5c fb ff       	call   0x4145e0
45e95a:	8d 4d e8             	lea    -0x18(%ebp),%ecx
45e95d:	89 45 0c             	mov    %eax,0xc(%ebp)
45e960:	e8 90 ef fb ff       	call   0x41d8f5
45e965:	e9 65 01 00 00       	jmp    0x45eacf
45e96a:	6a 0e                	push   $0xe
45e96c:	8d 4d c4             	lea    -0x3c(%ebp),%ecx
45e96f:	e8 70 ec fa ff       	call   0x40d5e4
45e974:	84 c0                	test   %al,%al
45e976:	74 4f                	je     0x45e9c7
45e978:	8b 07                	mov    (%edi),%eax
45e97a:	8b 4d dc             	mov    -0x24(%ebp),%ecx
45e97d:	6a 34                	push   $0x34
45e97f:	8b 0c 81             	mov    (%ecx,%eax,4),%ecx
45e982:	e8 75 d2 fa ff       	call   0x40bbfc
45e987:	8b 0f                	mov    (%edi),%ecx
45e989:	8b 45 dc             	mov    -0x24(%ebp),%eax
45e98c:	8b 34 88             	mov    (%eax,%ecx,4),%esi
45e98f:	8d 45 b4             	lea    -0x4c(%ebp),%eax
45e992:	50                   	push   %eax
45e993:	8d 4d c4             	lea    -0x3c(%ebp),%ecx
45e996:	e8 02 bd fe ff       	call   0x44a69d
45e99b:	50                   	push   %eax
45e99c:	8b ce                	mov    %esi,%ecx
45e99e:	e8 d1 d2 fa ff       	call   0x40bc74
45e9a3:	8d 4d b4             	lea    -0x4c(%ebp),%ecx
45e9a6:	e8 8c e1 fa ff       	call   0x40cb37
45e9ab:	8d 45 0f             	lea    0xf(%ebp),%eax
45e9ae:	50                   	push   %eax
45e9af:	ff 75 10             	push   0x10(%ebp)
45e9b2:	8d 45 d8             	lea    -0x28(%ebp),%eax
45e9b5:	57                   	push   %edi
45e9b6:	50                   	push   %eax
45e9b7:	6a 01                	push   $0x1
45e9b9:	8b cb                	mov    %ebx,%ecx
45e9bb:	e8 40 48 fb ff       	call   0x413200
45e9c0:	33 f6                	xor    %esi,%esi
45e9c2:	e9 0b 01 00 00       	jmp    0x45ead2
45e9c7:	6a 04                	push   $0x4
45e9c9:	8d 4d c4             	lea    -0x3c(%ebp),%ecx
45e9cc:	e8 13 ec fa ff       	call   0x40d5e4
45e9d1:	84 c0                	test   %al,%al
45e9d3:	0f 84 fd 00 00 00    	je     0x45ead6
45e9d9:	8d 4d c4             	lea    -0x3c(%ebp),%ecx
45e9dc:	e8 8b a9 fa ff       	call   0x40936c
45e9e1:	8b 4d cc             	mov    -0x34(%ebp),%ecx
45e9e4:	8b 01                	mov    (%ecx),%eax
45e9e6:	89 45 b4             	mov    %eax,-0x4c(%ebp)
45e9e9:	8b 41 04             	mov    0x4(%ecx),%eax
45e9ec:	89 45 b8             	mov    %eax,-0x48(%ebp)
45e9ef:	8b 41 08             	mov    0x8(%ecx),%eax
45e9f2:	89 45 bc             	mov    %eax,-0x44(%ebp)
45e9f5:	8b 41 0c             	mov    0xc(%ecx),%eax
45e9f8:	8d 4d b4             	lea    -0x4c(%ebp),%ecx
45e9fb:	ff 00                	incl   (%eax)
45e9fd:	89 45 c0             	mov    %eax,-0x40(%ebp)
45ea00:	e8 f5 d3 fa ff       	call   0x40bdfa
45ea05:	ff 75 b8             	push   -0x48(%ebp)
45ea08:	ff 75 b4             	push   -0x4c(%ebp)
45ea0b:	ff 15 60 d6 48 00    	call   *0x48d660
45ea11:	8b 0d 04 21 4c 00    	mov    0x4c2104,%ecx
45ea17:	ff 75 b4             	push   -0x4c(%ebp)
45ea1a:	8b 01                	mov    (%ecx),%eax
45ea1c:	ff 50 04             	call   *0x4(%eax)
45ea1f:	89 45 f8             	mov    %eax,-0x8(%ebp)
45ea22:	85 c0                	test   %eax,%eax
45ea24:	7e 4c                	jle    0x45ea72
45ea26:	83 c8 ff             	or     $0xffffffff,%eax
45ea29:	66 89 45 f0          	mov    %ax,-0x10(%ebp)
45ea2d:	33 c0                	xor    %eax,%eax
45ea2f:	6a 01                	push   $0x1
45ea31:	8d 4d e8             	lea    -0x18(%ebp),%ecx
45ea34:	66 89 45 f2          	mov    %ax,-0xe(%ebp)
45ea38:	e8 bf d1 fa ff       	call   0x40bbfc
45ea3d:	8b 45 f8             	mov    -0x8(%ebp),%eax
45ea40:	8b 4d dc             	mov    -0x24(%ebp),%ecx
45ea43:	89 45 e8             	mov    %eax,-0x18(%ebp)